forked from Ivasoft/openwrt
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>
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
#include <linux/pci.h>
|
||||
#include <linux/reset.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/version.h>
|
||||
#include <linux/vmalloc.h>
|
||||
|
||||
#include "../pci.h"
|
||||
@@ -346,7 +347,9 @@ static struct pci_controller bcm6348_pci_controller = {
|
||||
.pci_ops = &bcm6348_pci_ops,
|
||||
.io_resource = &bcm6348_pci_io_resource,
|
||||
.mem_resource = &bcm6348_pci_mem_resource,
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(5,13,0)
|
||||
.busn_resource = &bcm6348_pci_busn_resource,
|
||||
#endif
|
||||
};
|
||||
|
||||
#ifdef CONFIG_CARDBUS
|
||||
@@ -729,6 +732,9 @@ static int bcm6348_pci_probe(struct platform_device *pdev)
|
||||
struct device_node *np = dev->of_node;
|
||||
struct bcm6348_pci *priv = &bcm6348_pci;
|
||||
struct resource *res;
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0)
|
||||
LIST_HEAD(resources);
|
||||
#endif
|
||||
|
||||
of_pci_check_probe_only();
|
||||
|
||||
@@ -771,6 +777,9 @@ static int bcm6348_pci_probe(struct platform_device *pdev)
|
||||
return -EINVAL;
|
||||
|
||||
of_pci_parse_bus_range(np, &bcm6348_pci_busn_resource);
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0)
|
||||
pci_add_resource(&resources, &bcm6348_pci_busn_resource);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Configuration accesses are done through IO space, remap 4
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <linux/reset.h>
|
||||
#include <linux/regmap.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/version.h>
|
||||
#include <linux/vmalloc.h>
|
||||
|
||||
#include "../pci.h"
|
||||
@@ -151,7 +152,7 @@ static int bcm6328_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;
|
||||
}
|
||||
@@ -209,7 +210,9 @@ static struct pci_controller bcm6328_pcie_controller = {
|
||||
.pci_ops = &bcm6328_pcie_ops,
|
||||
.io_resource = &bcm6328_pcie_io_resource,
|
||||
.mem_resource = &bcm6328_pcie_mem_resource,
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(5,13,0)
|
||||
.busn_resource = &bcm6328_pcie_busn_resource,
|
||||
#endif
|
||||
};
|
||||
|
||||
static void bcm6328_pcie_reset(struct bcm6328_pcie *priv)
|
||||
@@ -294,6 +297,9 @@ static int bcm6328_pcie_probe(struct platform_device *pdev)
|
||||
struct resource *res;
|
||||
unsigned int i;
|
||||
int ret;
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0)
|
||||
LIST_HEAD(resources);
|
||||
#endif
|
||||
|
||||
pm_runtime_enable(dev);
|
||||
pm_runtime_no_callbacks(dev);
|
||||
@@ -380,6 +386,9 @@ static int bcm6328_pcie_probe(struct platform_device *pdev)
|
||||
return -EINVAL;
|
||||
|
||||
of_pci_parse_bus_range(np, &bcm6328_pcie_busn_resource);
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0)
|
||||
pci_add_resource(&resources, &bcm6328_pcie_busn_resource);
|
||||
#endif
|
||||
|
||||
bcm6328_pcie_reset(priv);
|
||||
bcm6328_pcie_setup(priv);
|
||||
|
||||
Reference in New Issue
Block a user