diff options
author | Álvaro Fernández Rojas <noltari@gmail.com> | 2022-05-18 22:52:06 +0200 |
---|---|---|
committer | Álvaro Fernández Rojas <noltari@gmail.com> | 2022-05-20 12:21:03 +0200 |
commit | 6a1e7c767f197b80385f4be9ac7a4b5af27cb4ec (patch) | |
tree | 61c2f6077baf9dbdc058815d49c5f211984a3f4f /target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c | |
parent | 810eac8c7ffad958345f8fd02f83636afecf7fcd (diff) |
bmips: add linux v5.15 support
Build system: x86_64
Build-tested: generic, nand
Run-tested: generic/AR-5387un, nand/VR-3032u
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c')
-rw-r--r-- | target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c b/target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c index 1df67b8389..21d8e50063 100644 --- a/target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c +++ b/target/linux/bmips/files/drivers/pci/controller/pcie-bcm6318.c @@ -19,6 +19,7 @@ #include <linux/pci.h> #include <linux/reset.h> #include <linux/types.h> +#include <linux/version.h> #include <linux/vmalloc.h> #include "../pci.h" @@ -168,7 +169,7 @@ static int bcm6318_pcie_can_access(struct pci_bus *bus, int devfn) if (PCI_SLOT(devfn) == 0) return __raw_readl(priv->base + PCIE_DLSTATUS_REG) & DLSTATUS_PHYLINKUP; - /* else, fall through */ + fallthrough; default: return false; } @@ -226,7 +227,9 @@ static struct pci_controller bcm6318_pcie_controller = { .pci_ops = &bcm6318_pcie_ops, .io_resource = &bcm6318_pcie_io_resource, .mem_resource = &bcm6318_pcie_mem_resource, +#if LINUX_VERSION_CODE < KERNEL_VERSION(5,13,0) .busn_resource = &bcm6318_pcie_busn_resource, +#endif }; static void bcm6318_pcie_reset(struct bcm6318_pcie *priv) @@ -305,6 +308,9 @@ static int bcm6318_pcie_probe(struct platform_device *pdev) struct bcm6318_pcie *priv = &bcm6318_pcie; struct resource *res; int ret; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0) + LIST_HEAD(resources); +#endif of_pci_check_probe_only(); @@ -370,6 +376,9 @@ static int bcm6318_pcie_probe(struct platform_device *pdev) return -EINVAL; of_pci_parse_bus_range(np, &bcm6318_pcie_busn_resource); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0) + pci_add_resource(&resources, &bcm6318_pcie_busn_resource); +#endif bcm6318_pcie_reset(priv); bcm6318_pcie_setup(priv); |