xref: /freebsd-src/sys/contrib/device-tree/src/arm/broadcom/bcm47094-dlink-dir-885l.dts (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Broadcom BCM470X / BCM5301X ARM platform code.
4f126890aSEmmanuel Vadot * DTS for D-Link DIR-885L
5f126890aSEmmanuel Vadot *
6f126890aSEmmanuel Vadot * Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com>
7f126890aSEmmanuel Vadot */
8f126890aSEmmanuel Vadot
9f126890aSEmmanuel Vadot/dts-v1/;
10f126890aSEmmanuel Vadot
11f126890aSEmmanuel Vadot#include "bcm47094.dtsi"
12f126890aSEmmanuel Vadot#include "bcm5301x-nand-cs0-bch1.dtsi"
13f126890aSEmmanuel Vadot
14f126890aSEmmanuel Vadot/ {
15f126890aSEmmanuel Vadot	compatible = "dlink,dir-885l", "brcm,bcm47094", "brcm,bcm4708";
16f126890aSEmmanuel Vadot	model = "D-Link DIR-885L";
17f126890aSEmmanuel Vadot
18f126890aSEmmanuel Vadot	chosen {
19f126890aSEmmanuel Vadot		bootargs = "console=ttyS0,115200 earlycon";
20f126890aSEmmanuel Vadot	};
21f126890aSEmmanuel Vadot
22f126890aSEmmanuel Vadot	memory@0 {
23f126890aSEmmanuel Vadot		device_type = "memory";
24f126890aSEmmanuel Vadot		reg = <0x00000000 0x08000000>,
25f126890aSEmmanuel Vadot		      <0x88000000 0x08000000>;
26f126890aSEmmanuel Vadot	};
27f126890aSEmmanuel Vadot
28*84943d6fSEmmanuel Vadot	nvram@1e3f0000 {
29*84943d6fSEmmanuel Vadot		compatible = "brcm,nvram";
30*84943d6fSEmmanuel Vadot		reg = <0x1e3f0000 0x10000>;
31*84943d6fSEmmanuel Vadot
32*84943d6fSEmmanuel Vadot		et2macaddr: et2macaddr {
33*84943d6fSEmmanuel Vadot			#nvmem-cell-cells = <1>;
34*84943d6fSEmmanuel Vadot		};
35*84943d6fSEmmanuel Vadot	};
36*84943d6fSEmmanuel Vadot
37f126890aSEmmanuel Vadot	nand_controller: nand-controller@18028000 {
38f126890aSEmmanuel Vadot		nand@0 {
39f126890aSEmmanuel Vadot			partitions {
40f126890aSEmmanuel Vadot				compatible = "fixed-partitions";
41f126890aSEmmanuel Vadot				#address-cells = <1>;
42f126890aSEmmanuel Vadot				#size-cells = <1>;
43f126890aSEmmanuel Vadot
44f126890aSEmmanuel Vadot				partition@0 {
45aa1a8ff2SEmmanuel Vadot					compatible = "seama";
46f126890aSEmmanuel Vadot					label = "firmware";
47f126890aSEmmanuel Vadot					reg = <0x00000000 0x08000000>;
48f126890aSEmmanuel Vadot				};
49f126890aSEmmanuel Vadot			};
50f126890aSEmmanuel Vadot		};
51f126890aSEmmanuel Vadot	};
52f126890aSEmmanuel Vadot
53f126890aSEmmanuel Vadot	leds {
54f126890aSEmmanuel Vadot		compatible = "gpio-leds";
55f126890aSEmmanuel Vadot
56f126890aSEmmanuel Vadot		led-power-white {
57f126890aSEmmanuel Vadot			label = "bcm53xx:white:power";
58f126890aSEmmanuel Vadot			gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
59f126890aSEmmanuel Vadot			linux,default-trigger = "default-on";
60f126890aSEmmanuel Vadot		};
61f126890aSEmmanuel Vadot
62f126890aSEmmanuel Vadot		led-wan-white {
63f126890aSEmmanuel Vadot			label = "bcm53xx:white:wan";
64f126890aSEmmanuel Vadot			gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
65f126890aSEmmanuel Vadot		};
66f126890aSEmmanuel Vadot
67f126890aSEmmanuel Vadot		led-power-amber {
68f126890aSEmmanuel Vadot			label = "bcm53xx:amber:power";
69f126890aSEmmanuel Vadot			gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
70f126890aSEmmanuel Vadot		};
71f126890aSEmmanuel Vadot
72f126890aSEmmanuel Vadot		led-wan-amber {
73f126890aSEmmanuel Vadot			label = "bcm53xx:amber:wan";
74f126890aSEmmanuel Vadot			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
75f126890aSEmmanuel Vadot		};
76f126890aSEmmanuel Vadot
77f126890aSEmmanuel Vadot		led-usb3-white {
78f126890aSEmmanuel Vadot			label = "bcm53xx:white:usb3";
79f126890aSEmmanuel Vadot			gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
80f126890aSEmmanuel Vadot			trigger-sources = <&ohci_port1>, <&ehci_port1>,
81f126890aSEmmanuel Vadot					  <&xhci_port1>;
82f126890aSEmmanuel Vadot			linux,default-trigger = "usbport";
83f126890aSEmmanuel Vadot		};
84f126890aSEmmanuel Vadot
85f126890aSEmmanuel Vadot		led-2ghz {
86f126890aSEmmanuel Vadot			label = "bcm53xx:white:2ghz";
87f126890aSEmmanuel Vadot			gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
88f126890aSEmmanuel Vadot		};
89f126890aSEmmanuel Vadot
90f126890aSEmmanuel Vadot		led-5ghz {
91f126890aSEmmanuel Vadot			label = "bcm53xx:white:5ghz";
92f126890aSEmmanuel Vadot			gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
93f126890aSEmmanuel Vadot		};
94f126890aSEmmanuel Vadot	};
95f126890aSEmmanuel Vadot
96f126890aSEmmanuel Vadot	gpio-keys {
97f126890aSEmmanuel Vadot		compatible = "gpio-keys";
98f126890aSEmmanuel Vadot
99f126890aSEmmanuel Vadot		button-wps {
100f126890aSEmmanuel Vadot			label = "WPS";
101f126890aSEmmanuel Vadot			linux,code = <KEY_WPS_BUTTON>;
102f126890aSEmmanuel Vadot			gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
103f126890aSEmmanuel Vadot		};
104f126890aSEmmanuel Vadot
105f126890aSEmmanuel Vadot		/* Switch: router / extender */
106f126890aSEmmanuel Vadot		button-extender {
107f126890aSEmmanuel Vadot			label = "Extender";
108f126890aSEmmanuel Vadot			linux,code = <BTN_0>;
109f126890aSEmmanuel Vadot			gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
110f126890aSEmmanuel Vadot		};
111f126890aSEmmanuel Vadot
112f126890aSEmmanuel Vadot		button-restart {
113f126890aSEmmanuel Vadot			label = "Reset";
114f126890aSEmmanuel Vadot			linux,code = <KEY_RESTART>;
115f126890aSEmmanuel Vadot			gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
116f126890aSEmmanuel Vadot		};
117f126890aSEmmanuel Vadot	};
118f126890aSEmmanuel Vadot};
119f126890aSEmmanuel Vadot
120f126890aSEmmanuel Vadot&usb3 {
121f126890aSEmmanuel Vadot	vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
122f126890aSEmmanuel Vadot};
123f126890aSEmmanuel Vadot
124*84943d6fSEmmanuel Vadot&gmac0 {
125*84943d6fSEmmanuel Vadot	nvmem-cells = <&et2macaddr 0>;
126*84943d6fSEmmanuel Vadot	nvmem-cell-names = "mac-address";
127*84943d6fSEmmanuel Vadot};
128*84943d6fSEmmanuel Vadot
129f126890aSEmmanuel Vadot&spi_nor {
130f126890aSEmmanuel Vadot	status = "okay";
131f126890aSEmmanuel Vadot};
132f126890aSEmmanuel Vadot
133f126890aSEmmanuel Vadot&usb3_phy {
134f126890aSEmmanuel Vadot	status = "okay";
135f126890aSEmmanuel Vadot};
136f126890aSEmmanuel Vadot
137f126890aSEmmanuel Vadot&srab {
138f126890aSEmmanuel Vadot	status = "okay";
139f126890aSEmmanuel Vadot
140f126890aSEmmanuel Vadot	ports {
141f126890aSEmmanuel Vadot		port@0 {
142f126890aSEmmanuel Vadot			label = "lan4";
143f126890aSEmmanuel Vadot		};
144f126890aSEmmanuel Vadot
145f126890aSEmmanuel Vadot		port@1 {
146f126890aSEmmanuel Vadot			label = "lan3";
147f126890aSEmmanuel Vadot		};
148f126890aSEmmanuel Vadot
149f126890aSEmmanuel Vadot		port@2 {
150f126890aSEmmanuel Vadot			label = "lan2";
151f126890aSEmmanuel Vadot		};
152f126890aSEmmanuel Vadot
153f126890aSEmmanuel Vadot		port@3 {
154f126890aSEmmanuel Vadot			label = "lan1";
155f126890aSEmmanuel Vadot		};
156f126890aSEmmanuel Vadot
157f126890aSEmmanuel Vadot		port@4 {
158f126890aSEmmanuel Vadot			label = "wan";
159*84943d6fSEmmanuel Vadot			nvmem-cells = <&et2macaddr 3>;
160*84943d6fSEmmanuel Vadot			nvmem-cell-names = "mac-address";
161*84943d6fSEmmanuel Vadot		};
162*84943d6fSEmmanuel Vadot
163*84943d6fSEmmanuel Vadot		port@5 {
164*84943d6fSEmmanuel Vadot			status = "disabled";
165*84943d6fSEmmanuel Vadot		};
166*84943d6fSEmmanuel Vadot
167*84943d6fSEmmanuel Vadot		port@7 {
168*84943d6fSEmmanuel Vadot			status = "disabled";
169f126890aSEmmanuel Vadot		};
170f126890aSEmmanuel Vadot
171f126890aSEmmanuel Vadot		port@8 {
172f126890aSEmmanuel Vadot			label = "cpu";
173f126890aSEmmanuel Vadot		};
174f126890aSEmmanuel Vadot	};
175f126890aSEmmanuel Vadot};
176