mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-09 20:31:35 +00:00
bcm53xx: update patches adding bcma support
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 42640
This commit is contained in:
parent
c977fad4fd
commit
2c6e0e0ae0
@ -1,7 +1,7 @@
|
|||||||
From 04b91da96d7c163fd39c0849d2034e2928103f4d Mon Sep 17 00:00:00 2001
|
From ef8bdd6f383d3b43a96cdaa990b5412e40dbf238 Mon Sep 17 00:00:00 2001
|
||||||
From: Hauke Mehrtens <hauke@hauke-m.de>
|
From: Hauke Mehrtens <hauke@hauke-m.de>
|
||||||
Date: Mon, 6 Jan 2014 23:29:15 +0100
|
Date: Mon, 6 Jan 2014 23:29:15 +0100
|
||||||
Subject: [PATCH 04/17] bcma: register bcma as device tree driver
|
Subject: [PATCH v3 1/2] bcma: register bcma as device tree driver
|
||||||
|
|
||||||
This driver is used by the bcm53xx ARM SoC code. Now it is possible to
|
This driver is used by the bcm53xx ARM SoC code. Now it is possible to
|
||||||
give the address of the chipcommon core in device tree and bcma will
|
give the address of the chipcommon core in device tree and bcma will
|
||||||
@ -9,61 +9,79 @@ search for all the other cores.
|
|||||||
|
|
||||||
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||||
---
|
---
|
||||||
Documentation/devicetree/bindings/bus/bcma.txt | 46 +++++++++++++++++
|
Documentation/devicetree/bindings/bus/bcma.txt | 39 ++++++++++++
|
||||||
drivers/bcma/host_soc.c | 70 ++++++++++++++++++++++++++
|
drivers/bcma/bcma_private.h | 14 +++++
|
||||||
|
drivers/bcma/host_soc.c | 82 ++++++++++++++++++++++++++
|
||||||
|
drivers/bcma/main.c | 6 ++
|
||||||
include/linux/bcma/bcma.h | 2 +
|
include/linux/bcma/bcma.h | 2 +
|
||||||
3 files changed, 118 insertions(+)
|
5 files changed, 143 insertions(+)
|
||||||
create mode 100644 Documentation/devicetree/bindings/bus/bcma.txt
|
create mode 100644 Documentation/devicetree/bindings/bus/bcma.txt
|
||||||
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/Documentation/devicetree/bindings/bus/bcma.txt
|
+++ b/Documentation/devicetree/bindings/bus/bcma.txt
|
||||||
@@ -0,0 +1,46 @@
|
@@ -0,0 +1,39 @@
|
||||||
+Broadcom AIX bcma bus driver
|
+Driver for ARM AXI Bus with Broadcom Plugins (bcma)
|
||||||
+
|
|
||||||
+
|
+
|
||||||
+Required properties:
|
+Required properties:
|
||||||
+
|
+
|
||||||
+- compatible : brcm,bus-aix
|
+- compatible : brcm,bus-axi
|
||||||
+
|
+
|
||||||
+- reg : iomem address range of chipcommon core
|
+- reg : iomem address range of chipcommon core
|
||||||
+
|
+
|
||||||
+Optional properties:
|
+The cores on the AXI bus are automatically detected by bcma with the
|
||||||
+
|
+memory ranges they are using and they get registered afterwards.
|
||||||
+- sprom: reference to a sprom driver. This is needed for sprom less devices.
|
+Automatic detection of the IRQ number is not reliable on
|
||||||
+ Use bcm47xx_sprom for example.
|
+BCM47xx/BCM53xx ARM SoCs. To assign IRQ numbers to the cores, provide
|
||||||
+
|
+them manually through device tree. The IRQ number and the device tree
|
||||||
+
|
+child entry will get assigned to the core with the matching reg address.
|
||||||
+The cores on the AIX bus are auto detected by bcma. Detection of the
|
|
||||||
+IRQ number is not supported on BCM47xx/BCM53xx ARM SoCs, so it is
|
|
||||||
+possible to provide the IRQ number over device tree. The IRQ number and
|
|
||||||
+the device tree child entry will be added to the core with the matching
|
|
||||||
+reg address.
|
|
||||||
+
|
+
|
||||||
+Example:
|
+Example:
|
||||||
+
|
+
|
||||||
+ aix@18000000 {
|
+ axi@18000000 {
|
||||||
+ compatible = "brcm,bus-aix";
|
+ compatible = "brcm,bus-axi";
|
||||||
+ reg = <0x18000000 0x1000>;
|
+ reg = <0x18000000 0x1000>;
|
||||||
+ ranges = <0x00000000 0x18000000 0x00100000>;
|
+ ranges = <0x00000000 0x18000000 0x00100000>;
|
||||||
+ #address-cells = <1>;
|
+ #address-cells = <1>;
|
||||||
+ #size-cells = <1>;
|
+ #size-cells = <1>;
|
||||||
+ sprom = <&sprom0>;
|
|
||||||
+
|
+
|
||||||
+ gmac@0 {
|
+ pcie@12000 {
|
||||||
+ reg = <0x18024000 0x1000>;
|
+ reg = <0x00012000 0x1000>;
|
||||||
|
+ interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ ethernet@24000 {
|
||||||
|
+ reg = <0x00024000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ gmac@1 {
|
+ ethernet@25000 {
|
||||||
+ reg = <0x18025000 0x1000>;
|
+ reg = <0x00025000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
|
+ };
|
||||||
|
--- a/drivers/bcma/bcma_private.h
|
||||||
|
+++ b/drivers/bcma/bcma_private.h
|
||||||
|
@@ -88,6 +88,20 @@ extern int __init bcma_host_pci_init(voi
|
||||||
|
extern void __exit bcma_host_pci_exit(void);
|
||||||
|
#endif /* CONFIG_BCMA_HOST_PCI */
|
||||||
|
|
||||||
|
+/* host_soc.c */
|
||||||
|
+#if defined(CONFIG_BCMA_HOST_SOC) && defined(CONFIG_OF)
|
||||||
|
+extern int __init bcma_host_soc_register_driver(void);
|
||||||
|
+extern void __exit bcma_host_soc_unregister_driver(void);
|
||||||
|
+#else
|
||||||
|
+static inline int __init bcma_host_soc_register_driver(void)
|
||||||
|
+{
|
||||||
|
+ return 0;
|
||||||
|
+}
|
||||||
|
+static inline void __exit bcma_host_soc_unregister_driver(void)
|
||||||
|
+{
|
||||||
|
+}
|
||||||
|
+#endif /* CONFIG_BCMA_HOST_SOC && CONFIG_OF */
|
||||||
+
|
+
|
||||||
+ pcie@0 {
|
/* driver_pci.c */
|
||||||
+ reg = <0x18012000 0x1000>;
|
u32 bcma_pcie_read(struct bcma_drv_pci *pc, u32 address);
|
||||||
+ interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
--- a/drivers/bcma/host_soc.c
|
--- a/drivers/bcma/host_soc.c
|
||||||
+++ b/drivers/bcma/host_soc.c
|
+++ b/drivers/bcma/host_soc.c
|
||||||
@@ -7,6 +7,9 @@
|
@@ -7,6 +7,9 @@
|
||||||
@ -84,7 +102,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||||||
|
|
||||||
/* Initialize struct, detect chip */
|
/* Initialize struct, detect chip */
|
||||||
bcma_init_bus(bus);
|
bcma_init_bus(bus);
|
||||||
@@ -195,3 +199,72 @@ int __init bcma_host_soc_init(struct bcm
|
@@ -195,3 +199,81 @@ int __init bcma_host_soc_init(struct bcm
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@ -141,7 +159,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
+static const struct of_device_id bcma_host_soc_of_match[] = {
|
+static const struct of_device_id bcma_host_soc_of_match[] = {
|
||||||
+ { .compatible = "brcm,bus-aix", },
|
+ { .compatible = "brcm,bus-axi", },
|
||||||
+ {},
|
+ {},
|
||||||
+};
|
+};
|
||||||
+MODULE_DEVICE_TABLE(of, bcma_host_soc_of_match);
|
+MODULE_DEVICE_TABLE(of, bcma_host_soc_of_match);
|
||||||
@ -155,8 +173,39 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||||||
+ .probe = bcma_host_soc_probe,
|
+ .probe = bcma_host_soc_probe,
|
||||||
+ .remove = bcma_host_soc_remove,
|
+ .remove = bcma_host_soc_remove,
|
||||||
+};
|
+};
|
||||||
+module_platform_driver(bcma_host_soc_driver);
|
+
|
||||||
|
+int __init bcma_host_soc_register_driver(void)
|
||||||
|
+{
|
||||||
|
+ return platform_driver_register(&bcma_host_soc_driver);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void __exit bcma_host_soc_unregister_driver(void)
|
||||||
|
+{
|
||||||
|
+ platform_driver_unregister(&bcma_host_soc_driver);
|
||||||
|
+}
|
||||||
+#endif /* CONFIG_OF */
|
+#endif /* CONFIG_OF */
|
||||||
|
--- a/drivers/bcma/main.c
|
||||||
|
+++ b/drivers/bcma/main.c
|
||||||
|
@@ -528,6 +528,11 @@ static int __init bcma_modinit(void)
|
||||||
|
if (err)
|
||||||
|
return err;
|
||||||
|
|
||||||
|
+ err = bcma_host_soc_register_driver();
|
||||||
|
+ if (err) {
|
||||||
|
+ pr_err("SoC host initialization failed\n");
|
||||||
|
+ err = 0;
|
||||||
|
+ }
|
||||||
|
#ifdef CONFIG_BCMA_HOST_PCI
|
||||||
|
err = bcma_host_pci_init();
|
||||||
|
if (err) {
|
||||||
|
@@ -545,6 +550,7 @@ static void __exit bcma_modexit(void)
|
||||||
|
#ifdef CONFIG_BCMA_HOST_PCI
|
||||||
|
bcma_host_pci_exit();
|
||||||
|
#endif
|
||||||
|
+ bcma_host_soc_unregister_driver();
|
||||||
|
bus_unregister(&bcma_bus_type);
|
||||||
|
}
|
||||||
|
module_exit(bcma_modexit)
|
||||||
--- a/include/linux/bcma/bcma.h
|
--- a/include/linux/bcma/bcma.h
|
||||||
+++ b/include/linux/bcma/bcma.h
|
+++ b/include/linux/bcma/bcma.h
|
||||||
@@ -323,6 +323,8 @@ struct bcma_bus {
|
@@ -323,6 +323,8 @@ struct bcma_bus {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From eaf1943a2c49cbc6eb0ffafa7b6ced45f2d328da Mon Sep 17 00:00:00 2001
|
From 6611afa6c49434780096cdf2c1028f0ac277f9bc Mon Sep 17 00:00:00 2001
|
||||||
From: Hauke Mehrtens <hauke@hauke-m.de>
|
From: Hauke Mehrtens <hauke@hauke-m.de>
|
||||||
Date: Thu, 9 Jan 2014 19:40:14 +0100
|
Date: Thu, 9 Jan 2014 19:40:14 +0100
|
||||||
Subject: [PATCH 05/17] bcma: get IRQ numbers from dt
|
Subject: [PATCH v3 2/2] bcma: get IRQ numbers from dt
|
||||||
|
|
||||||
It is not possible to auto detect the irq numbers used by the cores on
|
It is not possible to auto detect the irq numbers used by the cores on
|
||||||
an arm SoC. If bcma was registered with device tree it will search for
|
an arm SoC. If bcma was registered with device tree it will search for
|
||||||
@ -10,8 +10,8 @@ configuration.
|
|||||||
|
|
||||||
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||||
---
|
---
|
||||||
drivers/bcma/main.c | 42 +++++++++++++++++++++++++++++++++++++++++-
|
drivers/bcma/main.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++++-
|
||||||
1 file changed, 41 insertions(+), 1 deletion(-)
|
1 file changed, 48 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
--- a/drivers/bcma/main.c
|
--- a/drivers/bcma/main.c
|
||||||
+++ b/drivers/bcma/main.c
|
+++ b/drivers/bcma/main.c
|
||||||
@ -24,10 +24,11 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||||||
|
|
||||||
MODULE_DESCRIPTION("Broadcom's specific AMBA driver");
|
MODULE_DESCRIPTION("Broadcom's specific AMBA driver");
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
@@ -131,6 +133,38 @@ static bool bcma_is_core_needed_early(u1
|
@@ -131,6 +133,45 @@ static bool bcma_is_core_needed_early(u1
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
+#ifdef CONFIG_OF
|
||||||
+static struct device_node *bcma_of_find_child_device(struct platform_device *parent,
|
+static struct device_node *bcma_of_find_child_device(struct platform_device *parent,
|
||||||
+ struct bcma_device *core)
|
+ struct bcma_device *core)
|
||||||
+{
|
+{
|
||||||
@ -42,7 +43,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||||||
+ reg = of_get_address(node, 0, &size, NULL);
|
+ reg = of_get_address(node, 0, &size, NULL);
|
||||||
+ if (!reg)
|
+ if (!reg)
|
||||||
+ continue;
|
+ continue;
|
||||||
+ if (be32_to_cpup(reg) == core->addr)
|
+ if (of_translate_address(node, reg) == core->addr)
|
||||||
+ return node;
|
+ return node;
|
||||||
+ }
|
+ }
|
||||||
+ return NULL;
|
+ return NULL;
|
||||||
@ -59,11 +60,17 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||||||
+ core->dev.of_node = node;
|
+ core->dev.of_node = node;
|
||||||
+ core->irq = irq_of_parse_and_map(node, 0);
|
+ core->irq = irq_of_parse_and_map(node, 0);
|
||||||
+}
|
+}
|
||||||
|
+#else
|
||||||
|
+static void bcma_of_fill_device(struct platform_device *parent,
|
||||||
|
+ struct bcma_device *core)
|
||||||
|
+{
|
||||||
|
+}
|
||||||
|
+#endif /* CONFIG_OF */
|
||||||
+
|
+
|
||||||
static void bcma_register_core(struct bcma_bus *bus, struct bcma_device *core)
|
static void bcma_register_core(struct bcma_bus *bus, struct bcma_device *core)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
@@ -147,7 +181,13 @@ static void bcma_register_core(struct bc
|
@@ -147,7 +188,13 @@ static void bcma_register_core(struct bc
|
||||||
break;
|
break;
|
||||||
case BCMA_HOSTTYPE_SOC:
|
case BCMA_HOSTTYPE_SOC:
|
||||||
core->dev.dma_mask = &core->dev.coherent_dma_mask;
|
core->dev.dma_mask = &core->dev.coherent_dma_mask;
|
||||||
|
@ -7,13 +7,14 @@ Subject: [PATCH 07/17] ARM: BCM5301X: register bcma bus
|
|||||||
arch/arm/boot/dts/bcm4708.dtsi | 58 ++++++++++++++++++++++++++++++++++++++++++
|
arch/arm/boot/dts/bcm4708.dtsi | 58 ++++++++++++++++++++++++++++++++++++++++++
|
||||||
1 file changed, 58 insertions(+)
|
1 file changed, 58 insertions(+)
|
||||||
|
|
||||||
--- a/arch/arm/boot/dts/bcm4708.dtsi
|
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||||
+++ b/arch/arm/boot/dts/bcm4708.dtsi
|
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||||
@@ -31,4 +31,62 @@
|
@@ -92,4 +92,100 @@
|
||||||
|
clock-frequency = <400000000>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
+
|
||||||
+ nvram0: nvram@0 {
|
+ nvram0: nvram@1c000000 {
|
||||||
+ compatible = "brcm,bcm47xx-nvram";
|
+ compatible = "brcm,bcm47xx-nvram";
|
||||||
+ reg = <0x1c000000 0x01000000>;
|
+ reg = <0x1c000000 0x01000000>;
|
||||||
+ };
|
+ };
|
||||||
@ -23,52 +24,89 @@ Subject: [PATCH 07/17] ARM: BCM5301X: register bcma bus
|
|||||||
+ nvram = <&nvram0>;
|
+ nvram = <&nvram0>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ aix@18000000 {
|
+ axi@18000000 {
|
||||||
+ compatible = "brcm,bus-aix";
|
+ compatible = "brcm,bus-axi";
|
||||||
+ reg = <0x18000000 0x1000>;
|
+ reg = <0x18000000 0x1000>;
|
||||||
+ ranges = <0x00000000 0x18000000 0x00100000>;
|
+ ranges = <0x00000000 0x18000000 0x00100000>;
|
||||||
+ #address-cells = <1>;
|
+ #address-cells = <1>;
|
||||||
+ #size-cells = <1>;
|
+ #size-cells = <1>;
|
||||||
+ sprom = <&sprom0>;
|
+ sprom = <&sprom0>;
|
||||||
+
|
+
|
||||||
+ usb2@0 {
|
+ chipcommon@0 {
|
||||||
+ reg = <0x18021000 0x1000>;
|
+ reg = <0x00000000 0x1000>;
|
||||||
|
+ interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ pcie@12000 {
|
||||||
|
+ reg = <0x00012000 0x1000>;
|
||||||
|
+ interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ pcie@13000 {
|
||||||
|
+ reg = <0x00013000 0x1000>;
|
||||||
|
+ interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ pcie@14000 {
|
||||||
|
+ reg = <0x00014000 0x1000>;
|
||||||
|
+ interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ usb2@21000 {
|
||||||
|
+ reg = <0x00021000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ usb3@0 {
|
+ usb3@23000 {
|
||||||
+ reg = <0x18023000 0x1000>;
|
+ reg = <0x00023000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ gmac@0 {
|
+ ethernet@24000 {
|
||||||
+ reg = <0x18024000 0x1000>;
|
+ reg = <0x00024000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ gmac@1 {
|
+ ethernet@25000 {
|
||||||
+ reg = <0x18025000 0x1000>;
|
+ reg = <0x00025000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ gmac@2 {
|
+ ethernet@26000 {
|
||||||
+ reg = <0x18026000 0x1000>;
|
+ reg = <0x00026000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ gmac@3 {
|
+ ethernet@27000 {
|
||||||
+ reg = <0x18027000 0x1000>;
|
+ reg = <0x00027000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
+ pcie@0 {
|
+ nand@28000 {
|
||||||
+ reg = <0x18012000 0x1000>;
|
+ reg = <0x00028000 0x1000>;
|
||||||
+ interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
|
+ interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
+ };
|
+ <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
+
|
+ <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
+ pcie@1 {
|
+ <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
+ reg = <0x18013000 0x1000>;
|
+ <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
+ interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
|
+ <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
+ <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
+ };
|
+ };
|
||||||
+ };
|
+ };
|
||||||
};
|
};
|
||||||
|
@ -26,7 +26,7 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
|||||||
+ struct device_node *np;
|
+ struct device_node *np;
|
||||||
+ struct platform_device *pdev;
|
+ struct platform_device *pdev;
|
||||||
+
|
+
|
||||||
+ np = of_find_compatible_node(NULL, NULL, "brcm,bus-aix");
|
+ np = of_find_compatible_node(NULL, NULL, "brcm,bus-axi");
|
||||||
+ if (!np)
|
+ if (!np)
|
||||||
+ return NULL;
|
+ return NULL;
|
||||||
+
|
+
|
||||||
|
Loading…
x
Reference in New Issue
Block a user