lkml.org 
[lkml]   [2023]   [Sep]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2/8] media: cobalt: Use FIELD_GET() to extract Link Width
    Date
    Use FIELD_GET() to extract PCIe Negotiated and Maximum Link Width fields
    instead of custom masking and shifting.

    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    ---
    drivers/media/pci/cobalt/cobalt-driver.c | 11 ++++++-----
    1 file changed, 6 insertions(+), 5 deletions(-)

    diff --git a/drivers/media/pci/cobalt/cobalt-driver.c b/drivers/media/pci/cobalt/cobalt-driver.c
    index 74edcc76d12f..6e1a0614e6d0 100644
    --- a/drivers/media/pci/cobalt/cobalt-driver.c
    +++ b/drivers/media/pci/cobalt/cobalt-driver.c
    @@ -8,6 +8,7 @@
    * All rights reserved.
    */

    +#include <linux/bitfield.h>
    #include <linux/delay.h>
    #include <media/i2c/adv7604.h>
    #include <media/i2c/adv7842.h>
    @@ -210,17 +211,17 @@ void cobalt_pcie_status_show(struct cobalt *cobalt)
    pcie_capability_read_word(pci_dev, PCI_EXP_LNKSTA, &stat);
    cobalt_info("PCIe link capability 0x%08x: %s per lane and %u lanes\n",
    capa, get_link_speed(capa),
    - (capa & PCI_EXP_LNKCAP_MLW) >> 4);
    + FIELD_GET(PCI_EXP_LNKCAP_MLW, capa));
    cobalt_info("PCIe link control 0x%04x\n", ctrl);
    cobalt_info("PCIe link status 0x%04x: %s per lane and %u lanes\n",
    stat, get_link_speed(stat),
    - (stat & PCI_EXP_LNKSTA_NLW) >> 4);
    + FIELD_GET(PCI_EXP_LNKSTA_NLW, stat));

    /* Bus */
    pcie_capability_read_dword(pci_bus_dev, PCI_EXP_LNKCAP, &capa);
    cobalt_info("PCIe bus link capability 0x%08x: %s per lane and %u lanes\n",
    capa, get_link_speed(capa),
    - (capa & PCI_EXP_LNKCAP_MLW) >> 4);
    + FIELD_GET(PCI_EXP_LNKCAP_MLW, capa));

    /* Slot */
    pcie_capability_read_dword(pci_dev, PCI_EXP_SLTCAP, &capa);
    @@ -239,7 +240,7 @@ static unsigned pcie_link_get_lanes(struct cobalt *cobalt)
    if (!pci_is_pcie(pci_dev))
    return 0;
    pcie_capability_read_word(pci_dev, PCI_EXP_LNKSTA, &link);
    - return (link & PCI_EXP_LNKSTA_NLW) >> 4;
    + return FIELD_GET(PCI_EXP_LNKSTA_NLW, link);
    }

    static unsigned pcie_bus_link_get_lanes(struct cobalt *cobalt)
    @@ -250,7 +251,7 @@ static unsigned pcie_bus_link_get_lanes(struct cobalt *cobalt)
    if (!pci_is_pcie(pci_dev))
    return 0;
    pcie_capability_read_dword(pci_dev, PCI_EXP_LNKCAP, &link);
    - return (link & PCI_EXP_LNKCAP_MLW) >> 4;
    + return FIELD_GET(PCI_EXP_LNKCAP_MLW, link);
    }

    static void msi_config_show(struct cobalt *cobalt, struct pci_dev *pci_dev)
    --
    2.30.2
    \
     
     \ /
      Last update: 2023-09-11 23:57    [W:8.846 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site