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