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					compatible = "seama";
37					label = "firmware";
38					reg = <0x00000000 0x08000000>;
39				};
40			};
41		};
42	};
43
44	leds {
45		compatible = "gpio-leds";
46
47		led-power-white {
48			label = "bcm53xx:white:power";
49			gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
50			linux,default-trigger = "default-on";
51		};
52
53		led-wan-white {
54			label = "bcm53xx:white:wan";
55			gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
56		};
57
58		led-power-amber {
59			label = "bcm53xx:amber:power";
60			gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
61		};
62
63		led-wan-amber {
64			label = "bcm53xx:amber:wan";
65			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
66		};
67
68		led-usb3-white {
69			label = "bcm53xx:white:usb3";
70			gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
71			trigger-sources = <&ohci_port1>, <&ehci_port1>,
72					  <&xhci_port1>;
73			linux,default-trigger = "usbport";
74		};
75
76		led-2ghz {
77			label = "bcm53xx:white:2ghz";
78			gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
79		};
80
81		led-5ghz {
82			label = "bcm53xx:white:5ghz";
83			gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
84		};
85	};
86
87	gpio-keys {
88		compatible = "gpio-keys";
89
90		button-wps {
91			label = "WPS";
92			linux,code = <KEY_WPS_BUTTON>;
93			gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
94		};
95
96		/* Switch: router / extender */
97		button-extender {
98			label = "Extender";
99			linux,code = <BTN_0>;
100			gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
101		};
102
103		button-restart {
104			label = "Reset";
105			linux,code = <KEY_RESTART>;
106			gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
107		};
108	};
109};
110
111&usb3 {
112	vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
113};
114
115&spi_nor {
116	status = "okay";
117};
118
119&usb3_phy {
120	status = "okay";
121};
122
123&srab {
124	status = "okay";
125
126	ports {
127		port@0 {
128			label = "lan4";
129		};
130
131		port@1 {
132			label = "lan3";
133		};
134
135		port@2 {
136			label = "lan2";
137		};
138
139		port@3 {
140			label = "lan1";
141		};
142
143		port@4 {
144			label = "wan";
145		};
146
147		port@5 {
148			status = "disabled";
149		};
150
151		port@7 {
152			status = "disabled";
153		};
154
155		port@8 {
156			label = "cpu";
157		};
158	};
159};
160