lkml.org 
[lkml]   [2021]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 040/106] PCI: aardvark: Introduce an advk_pcie_valid_device() helper
    Date
    From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

    commit 248d4e59616c632f37f04c233eec6d5008384926 upstream.

    In other to mimic other PCIe host controller drivers, introduce an
    advk_pcie_valid_device() helper, used in the configuration read/write
    functions.

    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    [lorenzo.pieralisi@arm.com: updated host->controller dir move]
    Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/pci/host/pci-aardvark.c | 13 +++++++++++--
    1 file changed, 11 insertions(+), 2 deletions(-)

    --- a/drivers/pci/host/pci-aardvark.c
    +++ b/drivers/pci/host/pci-aardvark.c
    @@ -592,6 +592,15 @@ static bool advk_pcie_pio_is_running(str
    return false;
    }

    +static bool advk_pcie_valid_device(struct advk_pcie *pcie, struct pci_bus *bus,
    + int devfn)
    +{
    + if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0)
    + return false;
    +
    + return true;
    +}
    +
    static int advk_pcie_rd_conf(struct pci_bus *bus, u32 devfn,
    int where, int size, u32 *val)
    {
    @@ -599,7 +608,7 @@ static int advk_pcie_rd_conf(struct pci_
    u32 reg;
    int ret;

    - if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0) {
    + if (!advk_pcie_valid_device(pcie, bus, devfn)) {
    *val = 0xffffffff;
    return PCIBIOS_DEVICE_NOT_FOUND;
    }
    @@ -660,7 +669,7 @@ static int advk_pcie_wr_conf(struct pci_
    int offset;
    int ret;

    - if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0)
    + if (!advk_pcie_valid_device(pcie, bus, devfn))
    return PCIBIOS_DEVICE_NOT_FOUND;

    if (where % size)

    \
     
     \ /
      Last update: 2021-12-06 16:10    [W:2.454 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site