1/*
2 *  BSD LICENSE
3 *
4 *  Copyright(c) 2016 Broadcom.  All rights reserved.
5 *
6 *  Redistribution and use in source and binary forms, with or without
7 *  modification, are permitted provided that the following conditions
8 *  are met:
9 *
10 *    * Redistributions of source code must retain the above copyright
11 *      notice, this list of conditions and the following disclaimer.
12 *    * Redistributions in binary form must reproduce the above copyright
13 *      notice, this list of conditions and the following disclaimer in
14 *      the documentation and/or other materials provided with the
15 *      distribution.
16 *    * Neither the name of Broadcom Corporation nor the names of its
17 *      contributors may be used to endorse or promote products derived
18 *      from this software without specific prior written permission.
19 *
20 *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32
33/dts-v1/;
34
35#include "bcm-nsp.dtsi"
36#include <dt-bindings/gpio/gpio.h>
37
38/ {
39	model = "NorthStar Plus SVK (BCM958622HR)";
40	compatible = "brcm,bcm958622hr", "brcm,bcm58622", "brcm,nsp";
41
42	chosen {
43		stdout-path = "serial0:115200n8";
44	};
45
46	memory@60000000 {
47		device_type = "memory";
48		reg = <0x60000000 0x80000000>;
49	};
50
51	gpio-restart {
52		compatible = "gpio-restart";
53		gpios = <&gpioa 15 GPIO_ACTIVE_LOW>;
54		open-source;
55		priority = <200>;
56	};
57};
58
59/* USB 3 and SLIC support needed to be complete */
60
61&dma {
62	status = "okay";
63};
64
65&amac0 {
66	status = "okay";
67};
68
69&amac1 {
70	status = "okay";
71};
72
73&amac2 {
74	status = "okay";
75};
76
77&ehci0 {
78	status = "okay";
79};
80
81&nand_controller {
82	nand@0 {
83		compatible = "brcm,nandcs";
84		reg = <0>;
85		nand-on-flash-bbt;
86
87		#address-cells = <1>;
88		#size-cells = <1>;
89
90		nand-ecc-strength = <24>;
91		nand-ecc-step-size = <1024>;
92
93		brcm,nand-oob-sector-size = <27>;
94
95		partition@0 {
96			label = "nboot";
97			reg = <0x00000000 0x00200000>;
98			read-only;
99		};
100		partition@200000 {
101			label = "nenv";
102			reg = <0x00200000 0x00400000>;
103		};
104		partition@600000 {
105			label = "nsystem";
106			reg = <0x00600000 0x00a00000>;
107		};
108		partition@1000000 {
109			label = "nrootfs";
110			reg = <0x01000000 0x03000000>;
111		};
112		partition@4000000 {
113			label = "ncustfs";
114			reg = <0x04000000 0x3c000000>;
115		};
116	};
117};
118
119&ohci0 {
120	status = "okay";
121};
122
123&pcie0 {
124	status = "okay";
125};
126
127&pcie1 {
128	status = "okay";
129};
130
131&pinctrl {
132	pinctrl-names = "default";
133	pinctrl-0 = <&nand_sel>;
134	nand_sel: nand_sel {
135		function = "nand";
136		groups = "nand_grp";
137	};
138};
139
140&qspi {
141	status = "okay";
142	bspi-sel = <0>;
143	flash: flash@0 {
144		#address-cells = <1>;
145		#size-cells = <1>;
146		compatible = "m25p80";
147		reg = <0x0>;
148		spi-max-frequency = <12500000>;
149		m25p,fast-read;
150		spi-cpol;
151		spi-cpha;
152
153		partition@0 {
154			label = "boot";
155			reg = <0x00000000 0x000a0000>;
156		};
157
158		partition@a0000 {
159			label = "env";
160			reg = <0x000a0000 0x00060000>;
161		};
162
163		partition@100000 {
164			label = "system";
165			reg = <0x00100000 0x00600000>;
166		};
167
168		partition@700000 {
169			label = "rootfs";
170			reg = <0x00700000 0x01900000>;
171		};
172	};
173};
174
175&srab {
176	compatible = "brcm,bcm58622-srab", "brcm,nsp-srab";
177	status = "okay";
178
179	ports {
180		port@0 {
181			label = "port0";
182			reg = <0>;
183		};
184
185		port@1 {
186			label = "port1";
187			reg = <1>;
188		};
189
190		port@2 {
191			label = "port2";
192			reg = <2>;
193		};
194
195		port@3 {
196			label = "port3";
197			reg = <3>;
198		};
199
200		port@4 {
201			label = "port4";
202			reg = <4>;
203		};
204
205		port@8 {
206			ethernet = <&amac2>;
207			label = "cpu";
208			reg = <8>;
209			fixed-link {
210				speed = <1000>;
211				full-duplex;
212			};
213		};
214	};
215};
216
217&uart0 {
218	status = "okay";
219};
220
221&usb3_phy {
222	status = "okay";
223};
224
225&xhci {
226	status = "okay";
227};
228