]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blob - arch/arm/boot/dts/bcm958625k.dts
Merge tag 'topic/designware-baytrail-2017-03-02' of git://anongit.freedesktop.org...
[mirror_ubuntu-eoan-kernel.git] / arch / arm / boot / dts / bcm958625k.dts
1 /*
2 * BSD LICENSE
3 *
4 * Copyright(c) 2015 Broadcom Corporation. 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
37 / {
38 model = "NorthStar Plus SVK (BCM958625K)";
39 compatible = "brcm,bcm58625", "brcm,nsp";
40
41 aliases {
42 serial0 = &uart0;
43 serial1 = &uart1;
44 };
45
46 chosen {
47 stdout-path = "serial0:115200n8";
48 };
49
50 memory {
51 device_type = "memory";
52 reg = <0x60000000 0x80000000>;
53 };
54 };
55
56 &amac0 {
57 status = "okay";
58 };
59
60 &amac1 {
61 status = "okay";
62 };
63
64 &amac2 {
65 status = "okay";
66 };
67
68 &nand {
69 nandcs@0 {
70 compatible = "brcm,nandcs";
71 reg = <0>;
72 nand-on-flash-bbt;
73
74 #address-cells = <1>;
75 #size-cells = <1>;
76
77 nand-ecc-strength = <24>;
78 nand-ecc-step-size = <1024>;
79
80 brcm,nand-oob-sector-size = <27>;
81
82 partition@0 {
83 label = "nboot";
84 reg = <0x00000000 0x00200000>;
85 read-only;
86 };
87 partition@200000 {
88 label = "nenv";
89 reg = <0x00200000 0x00400000>;
90 };
91 partition@600000 {
92 label = "nsystem";
93 reg = <0x00600000 0x00a00000>;
94 };
95 partition@1000000 {
96 label = "nrootfs";
97 reg = <0x01000000 0x03000000>;
98 };
99 partition@4000000 {
100 label = "ncustfs";
101 reg = <0x04000000 0x3c000000>;
102 };
103 };
104 };
105
106 &pcie0 {
107 status = "okay";
108 };
109
110 &pcie1 {
111 status = "okay";
112 };
113
114 &pcie2 {
115 status = "okay";
116 };
117
118 &pinctrl {
119 pinctrl-names = "default";
120 pinctrl-0 = <&nand_sel>, <&gpiobs>, <&pwmc>;
121
122 nand_sel: nand_sel {
123 function = "nand";
124 groups = "nand_grp";
125 };
126
127 gpiobs: gpiobs {
128 function = "gpio_b";
129 groups = "gpio_b_0_grp", "gpio_b_1_grp", "gpio_b_2_grp",
130 "gpio_b_3_grp";
131 };
132
133 pwmc: pwmc {
134 function = "pwm";
135 groups = "pwm0_grp", "pwm1_grp", "pwm2_grp", "pwm3_grp";
136 };
137
138 emmc_sel: emmc_sel {
139 function = "emmc";
140 groups = "emmc_grp";
141 };
142 };
143
144 &pwm {
145 status = "okay";
146 };
147
148 &qspi {
149 bspi-sel = <0>;
150 flash: m25p80@0 {
151 #address-cells = <1>;
152 #size-cells = <1>;
153 compatible = "m25p80";
154 reg = <0x0>;
155 spi-max-frequency = <12500000>;
156 m25p,fast-read;
157 spi-cpol;
158 spi-cpha;
159
160 partition@0 {
161 label = "boot";
162 reg = <0x00000000 0x000a0000>;
163 };
164
165 partition@a0000 {
166 label = "env";
167 reg = <0x000a0000 0x00060000>;
168 };
169
170 partition@100000 {
171 label = "system";
172 reg = <0x00100000 0x00600000>;
173 };
174
175 partition@700000 {
176 label = "rootfs";
177 reg = <0x00700000 0x01900000>;
178 };
179 };
180 };
181
182 &sata_phy0 {
183 status = "okay";
184 };
185
186 &sata_phy1 {
187 status = "okay";
188 };
189
190 &sata {
191 status = "okay";
192 };
193
194 /*
195 * By default the sd slot is functional. For emmc to work add "<&emmc_sel>"
196 * and delete "<&nand_sel>" in "pinctrl-0" property of pinctrl node. Remove the
197 * bus-width property here and disable the nand node with status = "disabled";.
198 *
199 * Ex: pinctrl-0 = <&emmc_sel>, <&gpiobs>, <&pwmc>;
200 */
201 &sdio {
202 bus-width = <4>;
203 no-1-8-v;
204 status = "ok";
205 };
206
207 &srab {
208 compatible = "brcm,bcm58625-srab", "brcm,nsp-srab";
209 status = "okay";
210
211 ports {
212 #address-cells = <1>;
213 #size-cells = <0>;
214
215 port@0 {
216 label = "port0";
217 reg = <0>;
218 };
219
220 port@1 {
221 label = "port1";
222 reg = <1>;
223 };
224
225 port@2 {
226 label = "port2";
227 reg = <2>;
228 };
229
230 port@3 {
231 label = "port3";
232 reg = <3>;
233 };
234
235 port@4 {
236 label = "port4";
237 reg = <4>;
238 };
239
240 port@5 {
241 ethernet = <&amac0>;
242 label = "cpu";
243 reg = <5>;
244 fixed-link {
245 speed = <1000>;
246 full-duplex;
247 };
248 };
249 };
250 };
251
252 &uart0 {
253 status = "okay";
254 };
255
256 &uart1 {
257 status = "okay";
258 };