xref: /freebsd/sys/contrib/device-tree/src/arm64/broadcom/bcm4908/bcm4906-netgear-r8000p.dts (revision 2eb4d8dc723da3cf7d735a3226ae49da4c8c5dbc)
15def4c47SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
25def4c47SEmmanuel Vadot
35def4c47SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
45def4c47SEmmanuel Vadot#include <dt-bindings/input/input.h>
55def4c47SEmmanuel Vadot#include <dt-bindings/leds/common.h>
65def4c47SEmmanuel Vadot
75def4c47SEmmanuel Vadot#include "bcm4906.dtsi"
85def4c47SEmmanuel Vadot
95def4c47SEmmanuel Vadot/ {
105def4c47SEmmanuel Vadot	compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908";
115def4c47SEmmanuel Vadot	model = "Netgear R8000P";
125def4c47SEmmanuel Vadot
135def4c47SEmmanuel Vadot	memory@0 {
145def4c47SEmmanuel Vadot		device_type = "memory";
155def4c47SEmmanuel Vadot		reg = <0x00 0x00 0x00 0x20000000>;
165def4c47SEmmanuel Vadot	};
175def4c47SEmmanuel Vadot
185def4c47SEmmanuel Vadot	leds {
195def4c47SEmmanuel Vadot		compatible = "gpio-leds";
205def4c47SEmmanuel Vadot
21*2eb4d8dcSEmmanuel Vadot		led-power-white {
22*2eb4d8dcSEmmanuel Vadot			function = LED_FUNCTION_POWER;
23*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
24*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
25*2eb4d8dcSEmmanuel Vadot		};
26*2eb4d8dcSEmmanuel Vadot
27*2eb4d8dcSEmmanuel Vadot		led-power-amber {
28*2eb4d8dcSEmmanuel Vadot			function = LED_FUNCTION_POWER;
29*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_AMBER>;
30*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
31*2eb4d8dcSEmmanuel Vadot		};
32*2eb4d8dcSEmmanuel Vadot
33*2eb4d8dcSEmmanuel Vadot		led-wps {
345def4c47SEmmanuel Vadot			function = LED_FUNCTION_WPS;
355def4c47SEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
365def4c47SEmmanuel Vadot			gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
375def4c47SEmmanuel Vadot		};
38*2eb4d8dcSEmmanuel Vadot
39*2eb4d8dcSEmmanuel Vadot		led-2ghz {
40*2eb4d8dcSEmmanuel Vadot			function = "2ghz";
41*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
42*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
43*2eb4d8dcSEmmanuel Vadot		};
44*2eb4d8dcSEmmanuel Vadot
45*2eb4d8dcSEmmanuel Vadot		led-5ghz-1 {
46*2eb4d8dcSEmmanuel Vadot			function = "5ghz-1";
47*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
48*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
49*2eb4d8dcSEmmanuel Vadot		};
50*2eb4d8dcSEmmanuel Vadot
51*2eb4d8dcSEmmanuel Vadot		led-5ghz-2 {
52*2eb4d8dcSEmmanuel Vadot			function = "5ghz-2";
53*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
54*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
55*2eb4d8dcSEmmanuel Vadot		};
56*2eb4d8dcSEmmanuel Vadot
57*2eb4d8dcSEmmanuel Vadot		led-usb2 {
58*2eb4d8dcSEmmanuel Vadot			function = "usb2";
59*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
60*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
61*2eb4d8dcSEmmanuel Vadot		};
62*2eb4d8dcSEmmanuel Vadot
63*2eb4d8dcSEmmanuel Vadot		led-usb3 {
64*2eb4d8dcSEmmanuel Vadot			function = "usb3";
65*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
66*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
67*2eb4d8dcSEmmanuel Vadot		};
68*2eb4d8dcSEmmanuel Vadot
69*2eb4d8dcSEmmanuel Vadot		led-wifi {
70*2eb4d8dcSEmmanuel Vadot			function = "wifi";
71*2eb4d8dcSEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
72*2eb4d8dcSEmmanuel Vadot			gpios = <&gpio0 56 GPIO_ACTIVE_LOW>;
73*2eb4d8dcSEmmanuel Vadot		};
74*2eb4d8dcSEmmanuel Vadot	};
75*2eb4d8dcSEmmanuel Vadot};
76*2eb4d8dcSEmmanuel Vadot
77*2eb4d8dcSEmmanuel Vadot&enet {
78*2eb4d8dcSEmmanuel Vadot	nvmem-cells = <&base_mac_addr>;
79*2eb4d8dcSEmmanuel Vadot	nvmem-cell-names = "mac-address";
80*2eb4d8dcSEmmanuel Vadot};
81*2eb4d8dcSEmmanuel Vadot
82*2eb4d8dcSEmmanuel Vadot&usb_phy {
83*2eb4d8dcSEmmanuel Vadot	brcm,ioc = <1>;
84*2eb4d8dcSEmmanuel Vadot	status = "okay";
85*2eb4d8dcSEmmanuel Vadot};
86*2eb4d8dcSEmmanuel Vadot
87*2eb4d8dcSEmmanuel Vadot&ehci {
88*2eb4d8dcSEmmanuel Vadot	status = "okay";
89*2eb4d8dcSEmmanuel Vadot};
90*2eb4d8dcSEmmanuel Vadot
91*2eb4d8dcSEmmanuel Vadot&ohci {
92*2eb4d8dcSEmmanuel Vadot	status = "okay";
93*2eb4d8dcSEmmanuel Vadot};
94*2eb4d8dcSEmmanuel Vadot
95*2eb4d8dcSEmmanuel Vadot&xhci {
96*2eb4d8dcSEmmanuel Vadot	status = "okay";
97*2eb4d8dcSEmmanuel Vadot};
98*2eb4d8dcSEmmanuel Vadot
99*2eb4d8dcSEmmanuel Vadot&ports {
100*2eb4d8dcSEmmanuel Vadot	port@0 {
101*2eb4d8dcSEmmanuel Vadot		label = "lan4";
102*2eb4d8dcSEmmanuel Vadot	};
103*2eb4d8dcSEmmanuel Vadot
104*2eb4d8dcSEmmanuel Vadot	port@1 {
105*2eb4d8dcSEmmanuel Vadot		label = "lan3";
106*2eb4d8dcSEmmanuel Vadot	};
107*2eb4d8dcSEmmanuel Vadot
108*2eb4d8dcSEmmanuel Vadot	port@2 {
109*2eb4d8dcSEmmanuel Vadot		label = "lan2";
110*2eb4d8dcSEmmanuel Vadot	};
111*2eb4d8dcSEmmanuel Vadot
112*2eb4d8dcSEmmanuel Vadot	port@3 {
113*2eb4d8dcSEmmanuel Vadot		label = "lan1";
114*2eb4d8dcSEmmanuel Vadot	};
115*2eb4d8dcSEmmanuel Vadot
116*2eb4d8dcSEmmanuel Vadot	port@7 {
117*2eb4d8dcSEmmanuel Vadot		reg = <7>;
118*2eb4d8dcSEmmanuel Vadot		phy-mode = "internal";
119*2eb4d8dcSEmmanuel Vadot		phy-handle = <&phy12>;
120*2eb4d8dcSEmmanuel Vadot		label = "wan";
1215def4c47SEmmanuel Vadot	};
1225def4c47SEmmanuel Vadot};
1235def4c47SEmmanuel Vadot
1245def4c47SEmmanuel Vadot&nandcs {
1255def4c47SEmmanuel Vadot	nand-ecc-strength = <4>;
1265def4c47SEmmanuel Vadot	nand-ecc-step-size = <512>;
1275def4c47SEmmanuel Vadot	nand-on-flash-bbt;
1285def4c47SEmmanuel Vadot
1295def4c47SEmmanuel Vadot	#address-cells = <1>;
1305def4c47SEmmanuel Vadot	#size-cells = <0>;
1315def4c47SEmmanuel Vadot
1325def4c47SEmmanuel Vadot	partitions {
1335def4c47SEmmanuel Vadot		compatible = "fixed-partitions";
1345def4c47SEmmanuel Vadot		#address-cells = <1>;
1355def4c47SEmmanuel Vadot		#size-cells = <1>;
1365def4c47SEmmanuel Vadot
1375def4c47SEmmanuel Vadot		partition@0 {
138*2eb4d8dcSEmmanuel Vadot			compatible = "nvmem-cells";
1395def4c47SEmmanuel Vadot			label = "cferom";
1405def4c47SEmmanuel Vadot			reg = <0x0 0x100000>;
141*2eb4d8dcSEmmanuel Vadot
142*2eb4d8dcSEmmanuel Vadot			#address-cells = <1>;
143*2eb4d8dcSEmmanuel Vadot			#size-cells = <1>;
144*2eb4d8dcSEmmanuel Vadot			ranges = <0 0x0 0x100000>;
145*2eb4d8dcSEmmanuel Vadot
146*2eb4d8dcSEmmanuel Vadot			base_mac_addr: mac@106a0 {
147*2eb4d8dcSEmmanuel Vadot				reg = <0x106a0 0x6>;
148*2eb4d8dcSEmmanuel Vadot			};
1495def4c47SEmmanuel Vadot		};
1505def4c47SEmmanuel Vadot
1515def4c47SEmmanuel Vadot		partition@100000 {
152*2eb4d8dcSEmmanuel Vadot			compatible = "brcm,bcm4908-firmware";
1535def4c47SEmmanuel Vadot			label = "firmware";
1545def4c47SEmmanuel Vadot			reg = <0x100000 0x4400000>;
1555def4c47SEmmanuel Vadot		};
1565def4c47SEmmanuel Vadot	};
1575def4c47SEmmanuel Vadot};
158