1 From ded8f22945899f4e87dd6d952bbc4abce6e64b7e Mon Sep 17 00:00:00 2001
2 From: William Zhang <william.zhang@broadcom.com>
3 Date: Wed, 3 Aug 2022 10:54:50 -0700
4 Subject: [PATCH] arm64: dts: Move BCM4908 dts to bcmbca folder
6 As part of ARCH_BCM4908 to ARCH_BCMBCA migration, move the BCM4908 dts
7 files to bcmbca folder and use CONFIG_ARCH_BCMBCA to build all the
8 BCM4908 board dts. Delete bcm4908 folder and its makefile as well.
10 Signed-off-by: William Zhang <william.zhang@broadcom.com>
11 Link: https://lore.kernel.org/r/20220803175455.47638-5-william.zhang@broadcom.com
12 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
14 arch/arm64/boot/dts/broadcom/Makefile | 1 -
15 arch/arm64/boot/dts/broadcom/bcm4908/Makefile | 5 -----
16 arch/arm64/boot/dts/broadcom/bcmbca/Makefile | 4 ++++
17 .../broadcom/{bcm4908 => bcmbca}/bcm4906-netgear-r8000p.dts | 0
18 .../{bcm4908 => bcmbca}/bcm4906-tplink-archer-c2300-v1.dts | 0
19 .../arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906.dtsi | 0
20 .../broadcom/{bcm4908 => bcmbca}/bcm4908-asus-gt-ac5300.dts | 0
21 .../broadcom/{bcm4908 => bcmbca}/bcm4908-netgear-raxe500.dts | 0
22 .../arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908.dtsi | 0
23 9 files changed, 4 insertions(+), 6 deletions(-)
24 delete mode 100644 arch/arm64/boot/dts/broadcom/bcm4908/Makefile
25 rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906-netgear-r8000p.dts (100%)
26 rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906-tplink-archer-c2300-v1.dts (100%)
27 rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906.dtsi (100%)
28 rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908-asus-gt-ac5300.dts (100%)
29 rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908-netgear-raxe500.dts (100%)
30 rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908.dtsi (100%)
32 --- a/arch/arm64/boot/dts/broadcom/Makefile
33 +++ b/arch/arm64/boot/dts/broadcom/Makefile
34 @@ -6,7 +6,6 @@ dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rp
35 bcm2837-rpi-3-b-plus.dtb \
36 bcm2837-rpi-cm3-io3.dtb
40 subdir-y += northstar2
42 --- a/arch/arm64/boot/dts/broadcom/bcm4908/Makefile
45 -# SPDX-License-Identifier: GPL-2.0
46 -dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-netgear-r8000p.dtb
47 -dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-tplink-archer-c2300-v1.dtb
48 -dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-asus-gt-ac5300.dtb
49 -dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-netgear-raxe500.dtb
50 --- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
51 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
53 # SPDX-License-Identifier: GPL-2.0
54 dtb-$(CONFIG_ARCH_BCMBCA) += \
55 + bcm4906-netgear-r8000p.dtb \
56 + bcm4906-tplink-archer-c2300-v1.dtb \
57 + bcm4908-asus-gt-ac5300.dtb \
58 + bcm4908-netgear-raxe500.dtb \
59 bcm4912-asus-gt-ax6000.dtb \
62 --- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts
65 -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
67 -#include <dt-bindings/gpio/gpio.h>
68 -#include <dt-bindings/input/input.h>
69 -#include <dt-bindings/leds/common.h>
71 -#include "bcm4906.dtsi"
74 - compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
75 - model = "Netgear R8000P";
78 - device_type = "memory";
79 - reg = <0x00 0x00 0x00 0x20000000>;
83 - compatible = "gpio-leds";
86 - function = LED_FUNCTION_POWER;
87 - color = <LED_COLOR_ID_WHITE>;
88 - gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
92 - function = LED_FUNCTION_POWER;
93 - color = <LED_COLOR_ID_AMBER>;
94 - gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
98 - function = LED_FUNCTION_WPS;
99 - color = <LED_COLOR_ID_WHITE>;
100 - gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
105 - color = <LED_COLOR_ID_WHITE>;
106 - gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
110 - function = "5ghz-1";
111 - color = <LED_COLOR_ID_WHITE>;
112 - gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
116 - function = "5ghz-2";
117 - color = <LED_COLOR_ID_WHITE>;
118 - gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
123 - color = <LED_COLOR_ID_WHITE>;
124 - gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
129 - color = <LED_COLOR_ID_WHITE>;
130 - gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
135 - color = <LED_COLOR_ID_WHITE>;
136 - gpios = <&gpio0 56 GPIO_ACTIVE_LOW>;
142 - nvmem-cells = <&base_mac_addr>;
143 - nvmem-cell-names = "mac-address";
182 - phy-mode = "internal";
183 - phy-handle = <&phy12>;
189 - nand-ecc-strength = <4>;
190 - nand-ecc-step-size = <512>;
193 - #address-cells = <1>;
197 - compatible = "fixed-partitions";
198 - #address-cells = <1>;
202 - compatible = "nvmem-cells";
204 - reg = <0x0 0x100000>;
206 - #address-cells = <1>;
208 - ranges = <0 0x0 0x100000>;
210 - base_mac_addr: mac@106a0 {
211 - reg = <0x106a0 0x6>;
216 - compatible = "brcm,bcm4908-firmware";
217 - label = "firmware";
218 - reg = <0x100000 0x4400000>;
222 --- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
225 -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
227 -#include <dt-bindings/gpio/gpio.h>
228 -#include <dt-bindings/input/input.h>
229 -#include <dt-bindings/leds/common.h>
231 -#include "bcm4906.dtsi"
234 - compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
235 - model = "TP-Link Archer C2300 V1";
238 - device_type = "memory";
239 - reg = <0x00 0x00 0x00 0x20000000>;
243 - compatible = "gpio-leds";
246 - function = LED_FUNCTION_POWER;
247 - color = <LED_COLOR_ID_BLUE>;
248 - gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
253 - color = <LED_COLOR_ID_BLUE>;
254 - gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
259 - color = <LED_COLOR_ID_BLUE>;
260 - gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
264 - function = LED_FUNCTION_WAN;
265 - color = <LED_COLOR_ID_AMBER>;
266 - gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
270 - function = LED_FUNCTION_WAN;
271 - color = <LED_COLOR_ID_BLUE>;
272 - gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
276 - function = LED_FUNCTION_LAN;
277 - color = <LED_COLOR_ID_BLUE>;
278 - gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
282 - function = LED_FUNCTION_WPS;
283 - color = <LED_COLOR_ID_BLUE>;
284 - gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
289 - color = <LED_COLOR_ID_BLUE>;
290 - gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
294 - function = "usbd3";
295 - color = <LED_COLOR_ID_BLUE>;
296 - gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
300 - function = LED_FUNCTION_BACKLIGHT;
301 - color = <LED_COLOR_ID_WHITE>;
302 - gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
307 - compatible = "gpio-keys-polled";
308 - poll-interval = <100>;
312 - linux,code = <KEY_BRIGHTNESS_ZERO>;
313 - gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
318 - linux,code = <KEY_WPS_BUTTON>;
319 - gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
324 - linux,code = <KEY_RFKILL>;
325 - gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
330 - linux,code = <KEY_RESTART>;
331 - gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
372 - phy-mode = "internal";
373 - phy-handle = <&phy12>;
379 - nand-ecc-strength = <4>;
380 - nand-ecc-step-size = <512>;
383 - #address-cells = <1>;
387 - compatible = "brcm,bcm4908-partitions";
388 - #address-cells = <1>;
393 - reg = <0x0 0x100000>;
397 - compatible = "brcm,bcm4908-firmware";
398 - reg = <0x100000 0x3900000>;
401 - partition@5800000 {
402 - compatible = "brcm,bcm4908-firmware";
403 - reg = <0x3a00000 0x3900000>;
407 --- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906.dtsi
410 -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
412 -#include "bcm4908.dtsi"
416 - /delete-node/ cpu@2;
418 - /delete-node/ cpu@3;
422 - compatible = "arm,armv8-timer";
423 - interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
424 - <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
425 - <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
426 - <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
430 - compatible = "arm,armv8-timer";
431 - interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
432 - <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
433 - <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
434 - <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
438 - compatible = "arm,cortex-a53-pmu";
439 - interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
440 - <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
441 - interrupt-affinity = <&cpu0>, <&cpu1>;
444 --- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
447 -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
449 -#include <dt-bindings/gpio/gpio.h>
450 -#include <dt-bindings/input/input.h>
451 -#include <dt-bindings/leds/common.h>
453 -#include "bcm4908.dtsi"
456 - compatible = "asus,gt-ac5300", "brcm,bcm4908", "brcm,bcmbca";
457 - model = "Asus GT-AC5300";
460 - device_type = "memory";
461 - reg = <0x00 0x00 0x00 0x40000000>;
465 - compatible = "gpio-keys-polled";
466 - poll-interval = <100>;
470 - linux,code = <KEY_RFKILL>;
471 - gpios = <&gpio0 28 GPIO_ACTIVE_LOW>;
476 - linux,code = <KEY_WPS_BUTTON>;
477 - gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
482 - linux,code = <KEY_RESTART>;
483 - gpios = <&gpio0 30 GPIO_ACTIVE_LOW>;
488 - linux,code = <KEY_BRIGHTNESS_ZERO>;
489 - gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
495 - nvmem-cells = <&base_mac_addr>;
496 - nvmem-cell-names = "mac-address";
533 - /* External BCM53134S switch */
537 - phy-mode = "rgmii";
571 - function = LED_FUNCTION_POWER;
572 - color = <LED_COLOR_ID_WHITE>;
573 - default-state = "on";
575 - pinctrl-names = "default";
576 - pinctrl-0 = <&pins_led_17_a>;
581 - function = LED_FUNCTION_WAN;
582 - color = <LED_COLOR_ID_RED>;
584 - pinctrl-names = "default";
585 - pinctrl-0 = <&pins_led_18_a>;
590 - function = LED_FUNCTION_WPS;
591 - color = <LED_COLOR_ID_WHITE>;
593 - pinctrl-names = "default";
594 - pinctrl-0 = <&pins_led_20_a>;
599 - function = LED_FUNCTION_WAN;
600 - color = <LED_COLOR_ID_WHITE>;
602 - pinctrl-names = "default";
603 - pinctrl-0 = <&pins_led_21_a>;
608 - function = LED_FUNCTION_LAN;
609 - color = <LED_COLOR_ID_WHITE>;
610 - pinctrl-names = "default";
611 - pinctrl-0 = <&pins_led_25_a>;
616 - nand-ecc-strength = <4>;
617 - nand-ecc-step-size = <512>;
621 - #address-cells = <1>;
625 - compatible = "brcm,bcm4908-partitions";
626 - #address-cells = <1>;
630 - compatible = "nvmem-cells";
632 - reg = <0x0 0x100000>;
634 - #address-cells = <1>;
636 - ranges = <0 0x0 0x100000>;
638 - base_mac_addr: mac@106a0 {
639 - reg = <0x106a0 0x6>;
644 - compatible = "brcm,bcm4908-firmware";
645 - reg = <0x100000 0x5700000>;
648 - partition@5800000 {
649 - compatible = "brcm,bcm4908-firmware";
650 - reg = <0x5800000 0x5700000>;
654 --- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
657 -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
659 -#include "bcm4908.dtsi"
662 - compatible = "netgear,raxe500", "brcm,bcm4908", "brcm,bcmbca";
663 - model = "Netgear RAXE500";
666 - device_type = "memory";
667 - reg = <0x00 0x00 0x00 0x40000000>;
702 - phy-mode = "internal";
703 - phy-handle = <&phy12>;
707 --- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
710 -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
712 -#include <dt-bindings/interrupt-controller/irq.h>
713 -#include <dt-bindings/interrupt-controller/arm-gic.h>
714 -#include <dt-bindings/phy/phy.h>
715 -#include <dt-bindings/soc/bcm-pmb.h>
720 - interrupt-parent = <&gic>;
722 - #address-cells = <2>;
730 - stdout-path = "serial0:115200n8";
734 - #address-cells = <1>;
738 - device_type = "cpu";
739 - compatible = "brcm,brahma-b53";
741 - enable-method = "spin-table";
742 - cpu-release-addr = <0x0 0xfff8>;
743 - next-level-cache = <&l2>;
747 - device_type = "cpu";
748 - compatible = "brcm,brahma-b53";
750 - enable-method = "spin-table";
751 - cpu-release-addr = <0x0 0xfff8>;
752 - next-level-cache = <&l2>;
756 - device_type = "cpu";
757 - compatible = "brcm,brahma-b53";
759 - enable-method = "spin-table";
760 - cpu-release-addr = <0x0 0xfff8>;
761 - next-level-cache = <&l2>;
765 - device_type = "cpu";
766 - compatible = "brcm,brahma-b53";
768 - enable-method = "spin-table";
769 - cpu-release-addr = <0x0 0xfff8>;
770 - next-level-cache = <&l2>;
774 - compatible = "cache";
779 - compatible = "simple-bus";
780 - #address-cells = <1>;
782 - ranges = <0x00 0x00 0x81000000 0x4000>;
784 - gic: interrupt-controller@1000 {
785 - compatible = "arm,gic-400";
786 - #interrupt-cells = <3>;
787 - #address-cells = <0>;
788 - interrupt-controller;
789 - reg = <0x1000 0x1000>,
795 - compatible = "arm,armv8-timer";
796 - interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
797 - <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
798 - <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
799 - <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
803 - compatible = "arm,cortex-a53-pmu";
804 - interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
805 - <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
806 - <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
807 - <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
808 - interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
812 - periph_clk: periph_clk {
813 - compatible = "fixed-clock";
814 - #clock-cells = <0>;
815 - clock-frequency = <50000000>;
816 - clock-output-names = "periph";
821 - compatible = "simple-bus";
822 - #address-cells = <1>;
824 - ranges = <0x00 0x00 0x80000000 0x281000>;
826 - enet: ethernet@2000 {
827 - compatible = "brcm,bcm4908-enet";
828 - reg = <0x2000 0x1000>;
830 - interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
831 - <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
832 - interrupt-names = "rx", "tx";
835 - usb_phy: usb-phy@c200 {
836 - compatible = "brcm,bcm4908-usb-phy";
837 - reg = <0xc200 0x100>;
838 - reg-names = "ctrl";
839 - power-domains = <&pmb BCM_PMB_HOST_USB>;
844 - status = "disabled";
848 - compatible = "generic-ehci";
849 - reg = <0xc300 0x100>;
850 - interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
851 - phys = <&usb_phy PHY_TYPE_USB2>;
852 - status = "disabled";
856 - compatible = "generic-ohci";
857 - reg = <0xc400 0x100>;
858 - interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
859 - phys = <&usb_phy PHY_TYPE_USB2>;
860 - status = "disabled";
864 - compatible = "generic-xhci";
865 - reg = <0xd000 0x8c8>;
866 - interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
867 - phys = <&usb_phy PHY_TYPE_USB3>;
868 - status = "disabled";
872 - compatible = "simple-bus";
874 - #address-cells = <1>;
875 - ranges = <0 0x80000 0x50000>;
877 - ethernet-switch@0 {
878 - compatible = "brcm,bcm4908-switch";
879 - reg = <0x0 0x40000>,
885 - reg-names = "core", "reg", "intrl2_0",
886 - "intrl2_1", "fcb", "acb";
887 - interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
888 - <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
889 - brcm,num-gphy = <5>;
890 - brcm,num-rgmii-ports = <2>;
892 - #address-cells = <1>;
896 - #address-cells = <1>;
901 - phy-mode = "internal";
902 - phy-handle = <&phy8>;
907 - phy-mode = "internal";
908 - phy-handle = <&phy9>;
913 - phy-mode = "internal";
914 - phy-handle = <&phy10>;
919 - phy-mode = "internal";
920 - phy-handle = <&phy11>;
925 - phy-mode = "internal";
926 - ethernet = <&enet>;
937 - compatible = "brcm,unimac-mdio";
938 - reg = <0x405c0 0x8>;
939 - reg-names = "mdio";
941 - #address-cells = <1>;
943 - phy8: ethernet-phy@8 {
947 - phy9: ethernet-phy@9 {
951 - phy10: ethernet-phy@a {
955 - phy11: ethernet-phy@b {
959 - phy12: ethernet-phy@c {
965 - procmon: syscon@280000 {
966 - compatible = "simple-bus";
967 - reg = <0x280000 0x1000>;
970 - #address-cells = <1>;
973 - pmb: power-controller@2800c0 {
974 - compatible = "brcm,bcm4908-pmb";
975 - reg = <0x2800c0 0x40>;
976 - #power-domain-cells = <1>;
982 - compatible = "simple-bus";
983 - #address-cells = <1>;
985 - ranges = <0x00 0x00 0xff800000 0x3000>;
987 - twd: timer-mfd@400 {
988 - compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
989 - reg = <0x400 0x4c>;
990 - ranges = <0x0 0x400 0x4c>;
992 - #address-cells = <1>;
996 - compatible = "brcm,bcm6345-wdt";
1001 - gpio0: gpio-controller@500 {
1002 - compatible = "brcm,bcm6345-gpio";
1003 - reg-names = "dirout", "dat";
1004 - reg = <0x500 0x28>, <0x528 0x28>;
1006 - #gpio-cells = <2>;
1011 - compatible = "brcm,bcm4908-pinctrl";
1012 - reg = <0x560 0x10>;
1014 - pins_led_0_a: led_0-a-pins {
1015 - function = "led_0";
1016 - groups = "led_0_grp_a";
1019 - pins_led_1_a: led_1-a-pins {
1020 - function = "led_1";
1021 - groups = "led_1_grp_a";
1024 - pins_led_2_a: led_2-a-pins {
1025 - function = "led_2";
1026 - groups = "led_2_grp_a";
1029 - pins_led_3_a: led_3-a-pins {
1030 - function = "led_3";
1031 - groups = "led_3_grp_a";
1034 - pins_led_4_a: led_4-a-pins {
1035 - function = "led_4";
1036 - groups = "led_4_grp_a";
1039 - pins_led_5_a: led_5-a-pins {
1040 - function = "led_5";
1041 - groups = "led_5_grp_a";
1044 - pins_led_6_a: led_6-a-pins {
1045 - function = "led_6";
1046 - groups = "led_6_grp_a";
1049 - pins_led_7_a: led_7-a-pins {
1050 - function = "led_7";
1051 - groups = "led_7_grp_a";
1054 - pins_led_8_a: led_8-a-pins {
1055 - function = "led_8";
1056 - groups = "led_8_grp_a";
1059 - pins_led_9_a: led_9-a-pins {
1060 - function = "led_9";
1061 - groups = "led_9_grp_a";
1064 - pins_led_10_a: led_10-a-pins {
1065 - function = "led_10";
1066 - groups = "led_10_grp_a";
1069 - pins_led_11_a: led_11-a-pins {
1070 - function = "led_11";
1071 - groups = "led_11_grp_a";
1074 - pins_led_12_a: led_12-a-pins {
1075 - function = "led_12";
1076 - groups = "led_12_grp_a";
1079 - pins_led_13_a: led_13-a-pins {
1080 - function = "led_13";
1081 - groups = "led_13_grp_a";
1084 - pins_led_14_a: led_14-a-pins {
1085 - function = "led_14";
1086 - groups = "led_14_grp_a";
1089 - pins_led_15_a: led_15-a-pins {
1090 - function = "led_15";
1091 - groups = "led_15_grp_a";
1094 - pins_led_16_a: led_16-a-pins {
1095 - function = "led_16";
1096 - groups = "led_16_grp_a";
1099 - pins_led_17_a: led_17-a-pins {
1100 - function = "led_17";
1101 - groups = "led_17_grp_a";
1104 - pins_led_18_a: led_18-a-pins {
1105 - function = "led_18";
1106 - groups = "led_18_grp_a";
1109 - pins_led_19_a: led_19-a-pins {
1110 - function = "led_19";
1111 - groups = "led_19_grp_a";
1114 - pins_led_20_a: led_20-a-pins {
1115 - function = "led_20";
1116 - groups = "led_20_grp_a";
1119 - pins_led_21_a: led_21-a-pins {
1120 - function = "led_21";
1121 - groups = "led_21_grp_a";
1124 - pins_led_22_a: led_22-a-pins {
1125 - function = "led_22";
1126 - groups = "led_22_grp_a";
1129 - pins_led_23_a: led_23-a-pins {
1130 - function = "led_23";
1131 - groups = "led_23_grp_a";
1134 - pins_led_24_a: led_24-a-pins {
1135 - function = "led_24";
1136 - groups = "led_24_grp_a";
1139 - pins_led_25_a: led_25-a-pins {
1140 - function = "led_25";
1141 - groups = "led_25_grp_a";
1144 - pins_led_26_a: led_26-a-pins {
1145 - function = "led_26";
1146 - groups = "led_26_grp_a";
1149 - pins_led_27_a: led_27-a-pins {
1150 - function = "led_27";
1151 - groups = "led_27_grp_a";
1154 - pins_led_28_a: led_28-a-pins {
1155 - function = "led_28";
1156 - groups = "led_28_grp_a";
1159 - pins_led_29_a: led_29-a-pins {
1160 - function = "led_29";
1161 - groups = "led_29_grp_a";
1164 - pins_led_30_a: led_30-a-pins {
1165 - function = "led_30";
1166 - groups = "led_30_grp_a";
1169 - pins_led_31_a: led_31-a-pins {
1170 - function = "led_31";
1171 - groups = "led_31_grp_a";
1174 - pins_hs_uart: hs_uart-pins {
1175 - function = "hs_uart";
1176 - groups = "hs_uart_grp";
1179 - pins_i2c_a: i2c-a-pins {
1181 - groups = "i2c_grp_a";
1184 - pins_i2c_b: i2c-b-pins {
1186 - groups = "i2c_grp_b";
1189 - pins_i2s: i2s-pins {
1191 - groups = "i2s_grp";
1194 - pins_nand_ctrl: nand_ctrl-pins {
1195 - function = "nand_ctrl";
1196 - groups = "nand_ctrl_grp";
1199 - pins_nand_data: nand_data-pins {
1200 - function = "nand_data";
1201 - groups = "nand_data_grp";
1204 - pins_emmc_ctrl: emmc_ctrl-pins {
1205 - function = "emmc_ctrl";
1206 - groups = "emmc_ctrl_grp";
1209 - pins_usb0_pwr: usb0_pwr-pins {
1210 - function = "usb0_pwr";
1211 - groups = "usb0_pwr_grp";
1214 - pins_usb1_pwr: usb1_pwr-pins {
1215 - function = "usb1_pwr";
1216 - groups = "usb1_pwr_grp";
1220 - uart0: serial@640 {
1221 - compatible = "brcm,bcm6345-uart";
1222 - reg = <0x640 0x18>;
1223 - interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
1224 - clocks = <&periph_clk>;
1225 - clock-names = "refclk";
1230 - compatible = "brcm,bcm4908-leds", "brcm,bcm63138-leds";
1231 - reg = <0x800 0xdc>;
1233 - #address-cells = <1>;
1234 - #size-cells = <0>;
1237 - nand-controller@1800 {
1238 - #address-cells = <1>;
1239 - #size-cells = <0>;
1240 - compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand";
1241 - reg = <0x1800 0x600>, <0x2000 0x10>;
1242 - reg-names = "nand", "nand-int-base";
1243 - interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
1244 - interrupt-names = "nand";
1248 - compatible = "brcm,nandcs";
1254 - compatible = "brcm,brcmper-i2c";
1255 - reg = <0x2100 0x58>;
1256 - clock-frequency = <97500>;
1257 - pinctrl-names = "default";
1258 - pinctrl-0 = <&pins_i2c_a>;
1259 - status = "disabled";
1263 - compatible = "brcm,misc", "simple-mfd";
1264 - reg = <0x2600 0xe4>;
1266 - #address-cells = <1>;
1267 - #size-cells = <1>;
1268 - ranges = <0x00 0x2600 0xe4>;
1270 - reset-controller@2644 {
1271 - compatible = "brcm,bcm4908-misc-pcie-reset";
1272 - reg = <0x44 0x04>;
1273 - #reset-cells = <1>;
1279 - compatible = "syscon-reboot";
1286 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-netgear-r8000p.dts
1288 +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
1290 +#include <dt-bindings/gpio/gpio.h>
1291 +#include <dt-bindings/input/input.h>
1292 +#include <dt-bindings/leds/common.h>
1294 +#include "bcm4906.dtsi"
1297 + compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
1298 + model = "Netgear R8000P";
1301 + device_type = "memory";
1302 + reg = <0x00 0x00 0x00 0x20000000>;
1306 + compatible = "gpio-leds";
1309 + function = LED_FUNCTION_POWER;
1310 + color = <LED_COLOR_ID_WHITE>;
1311 + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
1315 + function = LED_FUNCTION_POWER;
1316 + color = <LED_COLOR_ID_AMBER>;
1317 + gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
1321 + function = LED_FUNCTION_WPS;
1322 + color = <LED_COLOR_ID_WHITE>;
1323 + gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
1327 + function = "2ghz";
1328 + color = <LED_COLOR_ID_WHITE>;
1329 + gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
1333 + function = "5ghz-1";
1334 + color = <LED_COLOR_ID_WHITE>;
1335 + gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
1339 + function = "5ghz-2";
1340 + color = <LED_COLOR_ID_WHITE>;
1341 + gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
1345 + function = "usb2";
1346 + color = <LED_COLOR_ID_WHITE>;
1347 + gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
1351 + function = "usb3";
1352 + color = <LED_COLOR_ID_WHITE>;
1353 + gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
1357 + function = "wifi";
1358 + color = <LED_COLOR_ID_WHITE>;
1359 + gpios = <&gpio0 56 GPIO_ACTIVE_LOW>;
1365 + nvmem-cells = <&base_mac_addr>;
1366 + nvmem-cell-names = "mac-address";
1405 + phy-mode = "internal";
1406 + phy-handle = <&phy12>;
1412 + nand-ecc-strength = <4>;
1413 + nand-ecc-step-size = <512>;
1414 + nand-on-flash-bbt;
1416 + #address-cells = <1>;
1417 + #size-cells = <0>;
1420 + compatible = "fixed-partitions";
1421 + #address-cells = <1>;
1422 + #size-cells = <1>;
1425 + compatible = "nvmem-cells";
1427 + reg = <0x0 0x100000>;
1429 + #address-cells = <1>;
1430 + #size-cells = <1>;
1431 + ranges = <0 0x0 0x100000>;
1433 + base_mac_addr: mac@106a0 {
1434 + reg = <0x106a0 0x6>;
1438 + partition@100000 {
1439 + compatible = "brcm,bcm4908-firmware";
1440 + label = "firmware";
1441 + reg = <0x100000 0x4400000>;
1446 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts
1448 +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
1450 +#include <dt-bindings/gpio/gpio.h>
1451 +#include <dt-bindings/input/input.h>
1452 +#include <dt-bindings/leds/common.h>
1454 +#include "bcm4906.dtsi"
1457 + compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
1458 + model = "TP-Link Archer C2300 V1";
1461 + device_type = "memory";
1462 + reg = <0x00 0x00 0x00 0x20000000>;
1466 + compatible = "gpio-leds";
1469 + function = LED_FUNCTION_POWER;
1470 + color = <LED_COLOR_ID_BLUE>;
1471 + gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
1475 + function = "2ghz";
1476 + color = <LED_COLOR_ID_BLUE>;
1477 + gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
1481 + function = "5ghz";
1482 + color = <LED_COLOR_ID_BLUE>;
1483 + gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
1487 + function = LED_FUNCTION_WAN;
1488 + color = <LED_COLOR_ID_AMBER>;
1489 + gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
1493 + function = LED_FUNCTION_WAN;
1494 + color = <LED_COLOR_ID_BLUE>;
1495 + gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
1499 + function = LED_FUNCTION_LAN;
1500 + color = <LED_COLOR_ID_BLUE>;
1501 + gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
1505 + function = LED_FUNCTION_WPS;
1506 + color = <LED_COLOR_ID_BLUE>;
1507 + gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
1511 + function = "usb2";
1512 + color = <LED_COLOR_ID_BLUE>;
1513 + gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
1517 + function = "usbd3";
1518 + color = <LED_COLOR_ID_BLUE>;
1519 + gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
1523 + function = LED_FUNCTION_BACKLIGHT;
1524 + color = <LED_COLOR_ID_WHITE>;
1525 + gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
1529 + gpio-keys-polled {
1530 + compatible = "gpio-keys-polled";
1531 + poll-interval = <100>;
1535 + linux,code = <KEY_BRIGHTNESS_ZERO>;
1536 + gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
1541 + linux,code = <KEY_WPS_BUTTON>;
1542 + gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
1547 + linux,code = <KEY_RFKILL>;
1548 + gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
1553 + linux,code = <KEY_RESTART>;
1554 + gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
1595 + phy-mode = "internal";
1596 + phy-handle = <&phy12>;
1602 + nand-ecc-strength = <4>;
1603 + nand-ecc-step-size = <512>;
1604 + nand-on-flash-bbt;
1606 + #address-cells = <1>;
1607 + #size-cells = <0>;
1610 + compatible = "brcm,bcm4908-partitions";
1611 + #address-cells = <1>;
1612 + #size-cells = <1>;
1616 + reg = <0x0 0x100000>;
1619 + partition@100000 {
1620 + compatible = "brcm,bcm4908-firmware";
1621 + reg = <0x100000 0x3900000>;
1624 + partition@5800000 {
1625 + compatible = "brcm,bcm4908-firmware";
1626 + reg = <0x3a00000 0x3900000>;
1631 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906.dtsi
1633 +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
1635 +#include "bcm4908.dtsi"
1639 + /delete-node/ cpu@2;
1641 + /delete-node/ cpu@3;
1645 + compatible = "arm,armv8-timer";
1646 + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
1647 + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
1648 + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
1649 + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
1653 + compatible = "arm,armv8-timer";
1654 + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
1655 + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
1656 + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
1657 + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
1661 + compatible = "arm,cortex-a53-pmu";
1662 + interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
1663 + <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
1664 + interrupt-affinity = <&cpu0>, <&cpu1>;
1668 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
1670 +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
1672 +#include <dt-bindings/gpio/gpio.h>
1673 +#include <dt-bindings/input/input.h>
1674 +#include <dt-bindings/leds/common.h>
1676 +#include "bcm4908.dtsi"
1679 + compatible = "asus,gt-ac5300", "brcm,bcm4908", "brcm,bcmbca";
1680 + model = "Asus GT-AC5300";
1683 + device_type = "memory";
1684 + reg = <0x00 0x00 0x00 0x40000000>;
1687 + gpio-keys-polled {
1688 + compatible = "gpio-keys-polled";
1689 + poll-interval = <100>;
1693 + linux,code = <KEY_RFKILL>;
1694 + gpios = <&gpio0 28 GPIO_ACTIVE_LOW>;
1699 + linux,code = <KEY_WPS_BUTTON>;
1700 + gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
1705 + linux,code = <KEY_RESTART>;
1706 + gpios = <&gpio0 30 GPIO_ACTIVE_LOW>;
1711 + linux,code = <KEY_BRIGHTNESS_ZERO>;
1712 + gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
1718 + nvmem-cells = <&base_mac_addr>;
1719 + nvmem-cell-names = "mac-address";
1756 + /* External BCM53134S switch */
1760 + phy-mode = "rgmii";
1794 + function = LED_FUNCTION_POWER;
1795 + color = <LED_COLOR_ID_WHITE>;
1796 + default-state = "on";
1798 + pinctrl-names = "default";
1799 + pinctrl-0 = <&pins_led_17_a>;
1804 + function = LED_FUNCTION_WAN;
1805 + color = <LED_COLOR_ID_RED>;
1807 + pinctrl-names = "default";
1808 + pinctrl-0 = <&pins_led_18_a>;
1813 + function = LED_FUNCTION_WPS;
1814 + color = <LED_COLOR_ID_WHITE>;
1816 + pinctrl-names = "default";
1817 + pinctrl-0 = <&pins_led_20_a>;
1820 + led-wan-white@15 {
1822 + function = LED_FUNCTION_WAN;
1823 + color = <LED_COLOR_ID_WHITE>;
1825 + pinctrl-names = "default";
1826 + pinctrl-0 = <&pins_led_21_a>;
1831 + function = LED_FUNCTION_LAN;
1832 + color = <LED_COLOR_ID_WHITE>;
1833 + pinctrl-names = "default";
1834 + pinctrl-0 = <&pins_led_25_a>;
1839 + nand-ecc-strength = <4>;
1840 + nand-ecc-step-size = <512>;
1841 + nand-on-flash-bbt;
1844 + #address-cells = <1>;
1845 + #size-cells = <0>;
1848 + compatible = "brcm,bcm4908-partitions";
1849 + #address-cells = <1>;
1850 + #size-cells = <1>;
1853 + compatible = "nvmem-cells";
1855 + reg = <0x0 0x100000>;
1857 + #address-cells = <1>;
1858 + #size-cells = <1>;
1859 + ranges = <0 0x0 0x100000>;
1861 + base_mac_addr: mac@106a0 {
1862 + reg = <0x106a0 0x6>;
1866 + partition@100000 {
1867 + compatible = "brcm,bcm4908-firmware";
1868 + reg = <0x100000 0x5700000>;
1871 + partition@5800000 {
1872 + compatible = "brcm,bcm4908-firmware";
1873 + reg = <0x5800000 0x5700000>;
1878 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-netgear-raxe500.dts
1880 +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
1882 +#include "bcm4908.dtsi"
1885 + compatible = "netgear,raxe500", "brcm,bcm4908", "brcm,bcmbca";
1886 + model = "Netgear RAXE500";
1889 + device_type = "memory";
1890 + reg = <0x00 0x00 0x00 0x40000000>;
1925 + phy-mode = "internal";
1926 + phy-handle = <&phy12>;
1931 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
1933 +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
1935 +#include <dt-bindings/interrupt-controller/irq.h>
1936 +#include <dt-bindings/interrupt-controller/arm-gic.h>
1937 +#include <dt-bindings/phy/phy.h>
1938 +#include <dt-bindings/soc/bcm-pmb.h>
1943 + interrupt-parent = <&gic>;
1945 + #address-cells = <2>;
1946 + #size-cells = <2>;
1953 + stdout-path = "serial0:115200n8";
1957 + #address-cells = <1>;
1958 + #size-cells = <0>;
1961 + device_type = "cpu";
1962 + compatible = "brcm,brahma-b53";
1964 + enable-method = "spin-table";
1965 + cpu-release-addr = <0x0 0xfff8>;
1966 + next-level-cache = <&l2>;
1970 + device_type = "cpu";
1971 + compatible = "brcm,brahma-b53";
1973 + enable-method = "spin-table";
1974 + cpu-release-addr = <0x0 0xfff8>;
1975 + next-level-cache = <&l2>;
1979 + device_type = "cpu";
1980 + compatible = "brcm,brahma-b53";
1982 + enable-method = "spin-table";
1983 + cpu-release-addr = <0x0 0xfff8>;
1984 + next-level-cache = <&l2>;
1988 + device_type = "cpu";
1989 + compatible = "brcm,brahma-b53";
1991 + enable-method = "spin-table";
1992 + cpu-release-addr = <0x0 0xfff8>;
1993 + next-level-cache = <&l2>;
1997 + compatible = "cache";
2002 + compatible = "simple-bus";
2003 + #address-cells = <1>;
2004 + #size-cells = <1>;
2005 + ranges = <0x00 0x00 0x81000000 0x4000>;
2007 + gic: interrupt-controller@1000 {
2008 + compatible = "arm,gic-400";
2009 + #interrupt-cells = <3>;
2010 + #address-cells = <0>;
2011 + interrupt-controller;
2012 + reg = <0x1000 0x1000>,
2018 + compatible = "arm,armv8-timer";
2019 + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2020 + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2021 + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2022 + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
2026 + compatible = "arm,cortex-a53-pmu";
2027 + interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
2028 + <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
2029 + <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
2030 + <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
2031 + interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
2035 + periph_clk: periph_clk {
2036 + compatible = "fixed-clock";
2037 + #clock-cells = <0>;
2038 + clock-frequency = <50000000>;
2039 + clock-output-names = "periph";
2044 + compatible = "simple-bus";
2045 + #address-cells = <1>;
2046 + #size-cells = <1>;
2047 + ranges = <0x00 0x00 0x80000000 0x281000>;
2049 + enet: ethernet@2000 {
2050 + compatible = "brcm,bcm4908-enet";
2051 + reg = <0x2000 0x1000>;
2053 + interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
2054 + <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
2055 + interrupt-names = "rx", "tx";
2058 + usb_phy: usb-phy@c200 {
2059 + compatible = "brcm,bcm4908-usb-phy";
2060 + reg = <0xc200 0x100>;
2061 + reg-names = "ctrl";
2062 + power-domains = <&pmb BCM_PMB_HOST_USB>;
2067 + status = "disabled";
2071 + compatible = "generic-ehci";
2072 + reg = <0xc300 0x100>;
2073 + interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
2074 + phys = <&usb_phy PHY_TYPE_USB2>;
2075 + status = "disabled";
2079 + compatible = "generic-ohci";
2080 + reg = <0xc400 0x100>;
2081 + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
2082 + phys = <&usb_phy PHY_TYPE_USB2>;
2083 + status = "disabled";
2087 + compatible = "generic-xhci";
2088 + reg = <0xd000 0x8c8>;
2089 + interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
2090 + phys = <&usb_phy PHY_TYPE_USB3>;
2091 + status = "disabled";
2095 + compatible = "simple-bus";
2096 + #size-cells = <1>;
2097 + #address-cells = <1>;
2098 + ranges = <0 0x80000 0x50000>;
2100 + ethernet-switch@0 {
2101 + compatible = "brcm,bcm4908-switch";
2102 + reg = <0x0 0x40000>,
2108 + reg-names = "core", "reg", "intrl2_0",
2109 + "intrl2_1", "fcb", "acb";
2110 + interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
2111 + <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
2112 + brcm,num-gphy = <5>;
2113 + brcm,num-rgmii-ports = <2>;
2115 + #address-cells = <1>;
2116 + #size-cells = <0>;
2119 + #address-cells = <1>;
2120 + #size-cells = <0>;
2124 + phy-mode = "internal";
2125 + phy-handle = <&phy8>;
2130 + phy-mode = "internal";
2131 + phy-handle = <&phy9>;
2136 + phy-mode = "internal";
2137 + phy-handle = <&phy10>;
2142 + phy-mode = "internal";
2143 + phy-handle = <&phy11>;
2148 + phy-mode = "internal";
2149 + ethernet = <&enet>;
2159 + mdio: mdio@405c0 {
2160 + compatible = "brcm,unimac-mdio";
2161 + reg = <0x405c0 0x8>;
2162 + reg-names = "mdio";
2163 + #size-cells = <0>;
2164 + #address-cells = <1>;
2166 + phy8: ethernet-phy@8 {
2170 + phy9: ethernet-phy@9 {
2174 + phy10: ethernet-phy@a {
2178 + phy11: ethernet-phy@b {
2182 + phy12: ethernet-phy@c {
2188 + procmon: syscon@280000 {
2189 + compatible = "simple-bus";
2190 + reg = <0x280000 0x1000>;
2193 + #address-cells = <1>;
2194 + #size-cells = <1>;
2196 + pmb: power-controller@2800c0 {
2197 + compatible = "brcm,bcm4908-pmb";
2198 + reg = <0x2800c0 0x40>;
2199 + #power-domain-cells = <1>;
2205 + compatible = "simple-bus";
2206 + #address-cells = <1>;
2207 + #size-cells = <1>;
2208 + ranges = <0x00 0x00 0xff800000 0x3000>;
2210 + twd: timer-mfd@400 {
2211 + compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
2212 + reg = <0x400 0x4c>;
2213 + ranges = <0x0 0x400 0x4c>;
2215 + #address-cells = <1>;
2216 + #size-cells = <1>;
2219 + compatible = "brcm,bcm6345-wdt";
2224 + gpio0: gpio-controller@500 {
2225 + compatible = "brcm,bcm6345-gpio";
2226 + reg-names = "dirout", "dat";
2227 + reg = <0x500 0x28>, <0x528 0x28>;
2229 + #gpio-cells = <2>;
2234 + compatible = "brcm,bcm4908-pinctrl";
2235 + reg = <0x560 0x10>;
2237 + pins_led_0_a: led_0-a-pins {
2238 + function = "led_0";
2239 + groups = "led_0_grp_a";
2242 + pins_led_1_a: led_1-a-pins {
2243 + function = "led_1";
2244 + groups = "led_1_grp_a";
2247 + pins_led_2_a: led_2-a-pins {
2248 + function = "led_2";
2249 + groups = "led_2_grp_a";
2252 + pins_led_3_a: led_3-a-pins {
2253 + function = "led_3";
2254 + groups = "led_3_grp_a";
2257 + pins_led_4_a: led_4-a-pins {
2258 + function = "led_4";
2259 + groups = "led_4_grp_a";
2262 + pins_led_5_a: led_5-a-pins {
2263 + function = "led_5";
2264 + groups = "led_5_grp_a";
2267 + pins_led_6_a: led_6-a-pins {
2268 + function = "led_6";
2269 + groups = "led_6_grp_a";
2272 + pins_led_7_a: led_7-a-pins {
2273 + function = "led_7";
2274 + groups = "led_7_grp_a";
2277 + pins_led_8_a: led_8-a-pins {
2278 + function = "led_8";
2279 + groups = "led_8_grp_a";
2282 + pins_led_9_a: led_9-a-pins {
2283 + function = "led_9";
2284 + groups = "led_9_grp_a";
2287 + pins_led_10_a: led_10-a-pins {
2288 + function = "led_10";
2289 + groups = "led_10_grp_a";
2292 + pins_led_11_a: led_11-a-pins {
2293 + function = "led_11";
2294 + groups = "led_11_grp_a";
2297 + pins_led_12_a: led_12-a-pins {
2298 + function = "led_12";
2299 + groups = "led_12_grp_a";
2302 + pins_led_13_a: led_13-a-pins {
2303 + function = "led_13";
2304 + groups = "led_13_grp_a";
2307 + pins_led_14_a: led_14-a-pins {
2308 + function = "led_14";
2309 + groups = "led_14_grp_a";
2312 + pins_led_15_a: led_15-a-pins {
2313 + function = "led_15";
2314 + groups = "led_15_grp_a";
2317 + pins_led_16_a: led_16-a-pins {
2318 + function = "led_16";
2319 + groups = "led_16_grp_a";
2322 + pins_led_17_a: led_17-a-pins {
2323 + function = "led_17";
2324 + groups = "led_17_grp_a";
2327 + pins_led_18_a: led_18-a-pins {
2328 + function = "led_18";
2329 + groups = "led_18_grp_a";
2332 + pins_led_19_a: led_19-a-pins {
2333 + function = "led_19";
2334 + groups = "led_19_grp_a";
2337 + pins_led_20_a: led_20-a-pins {
2338 + function = "led_20";
2339 + groups = "led_20_grp_a";
2342 + pins_led_21_a: led_21-a-pins {
2343 + function = "led_21";
2344 + groups = "led_21_grp_a";
2347 + pins_led_22_a: led_22-a-pins {
2348 + function = "led_22";
2349 + groups = "led_22_grp_a";
2352 + pins_led_23_a: led_23-a-pins {
2353 + function = "led_23";
2354 + groups = "led_23_grp_a";
2357 + pins_led_24_a: led_24-a-pins {
2358 + function = "led_24";
2359 + groups = "led_24_grp_a";
2362 + pins_led_25_a: led_25-a-pins {
2363 + function = "led_25";
2364 + groups = "led_25_grp_a";
2367 + pins_led_26_a: led_26-a-pins {
2368 + function = "led_26";
2369 + groups = "led_26_grp_a";
2372 + pins_led_27_a: led_27-a-pins {
2373 + function = "led_27";
2374 + groups = "led_27_grp_a";
2377 + pins_led_28_a: led_28-a-pins {
2378 + function = "led_28";
2379 + groups = "led_28_grp_a";
2382 + pins_led_29_a: led_29-a-pins {
2383 + function = "led_29";
2384 + groups = "led_29_grp_a";
2387 + pins_led_30_a: led_30-a-pins {
2388 + function = "led_30";
2389 + groups = "led_30_grp_a";
2392 + pins_led_31_a: led_31-a-pins {
2393 + function = "led_31";
2394 + groups = "led_31_grp_a";
2397 + pins_hs_uart: hs_uart-pins {
2398 + function = "hs_uart";
2399 + groups = "hs_uart_grp";
2402 + pins_i2c_a: i2c-a-pins {
2404 + groups = "i2c_grp_a";
2407 + pins_i2c_b: i2c-b-pins {
2409 + groups = "i2c_grp_b";
2412 + pins_i2s: i2s-pins {
2414 + groups = "i2s_grp";
2417 + pins_nand_ctrl: nand_ctrl-pins {
2418 + function = "nand_ctrl";
2419 + groups = "nand_ctrl_grp";
2422 + pins_nand_data: nand_data-pins {
2423 + function = "nand_data";
2424 + groups = "nand_data_grp";
2427 + pins_emmc_ctrl: emmc_ctrl-pins {
2428 + function = "emmc_ctrl";
2429 + groups = "emmc_ctrl_grp";
2432 + pins_usb0_pwr: usb0_pwr-pins {
2433 + function = "usb0_pwr";
2434 + groups = "usb0_pwr_grp";
2437 + pins_usb1_pwr: usb1_pwr-pins {
2438 + function = "usb1_pwr";
2439 + groups = "usb1_pwr_grp";
2443 + uart0: serial@640 {
2444 + compatible = "brcm,bcm6345-uart";
2445 + reg = <0x640 0x18>;
2446 + interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
2447 + clocks = <&periph_clk>;
2448 + clock-names = "refclk";
2453 + compatible = "brcm,bcm4908-leds", "brcm,bcm63138-leds";
2454 + reg = <0x800 0xdc>;
2456 + #address-cells = <1>;
2457 + #size-cells = <0>;
2460 + nand-controller@1800 {
2461 + #address-cells = <1>;
2462 + #size-cells = <0>;
2463 + compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand";
2464 + reg = <0x1800 0x600>, <0x2000 0x10>;
2465 + reg-names = "nand", "nand-int-base";
2466 + interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
2467 + interrupt-names = "nand";
2471 + compatible = "brcm,nandcs";
2477 + compatible = "brcm,brcmper-i2c";
2478 + reg = <0x2100 0x58>;
2479 + clock-frequency = <97500>;
2480 + pinctrl-names = "default";
2481 + pinctrl-0 = <&pins_i2c_a>;
2482 + status = "disabled";
2486 + compatible = "brcm,misc", "simple-mfd";
2487 + reg = <0x2600 0xe4>;
2489 + #address-cells = <1>;
2490 + #size-cells = <1>;
2491 + ranges = <0x00 0x2600 0xe4>;
2493 + reset-controller@2644 {
2494 + compatible = "brcm,bcm4908-misc-pcie-reset";
2495 + reg = <0x44 0x04>;
2496 + #reset-cells = <1>;
2502 + compatible = "syscon-reboot";