Merge remote-tracking branches 'spi/fix/dt', 'spi/fix/fsl-dspi' and 'spi/fix/fsl...
[cascardo/linux.git] / arch / arm64 / boot / dts / broadcom / ns2-svk.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 "ns2.dtsi"
36
37 / {
38         model = "Broadcom NS2 SVK";
39         compatible = "brcm,ns2-svk", "brcm,ns2";
40
41         aliases {
42                 serial0 = &uart3;
43                 serial1 = &uart0;
44                 serial2 = &uart1;
45                 serial3 = &uart2;
46         };
47
48         chosen {
49                 stdout-path = "serial0:115200n8";
50                 bootargs = "earlycon=uart8250,mmio32,0x66130000";
51         };
52
53         memory {
54                 device_type = "memory";
55                 reg = <0x000000000 0x80000000 0x00000000 0x40000000>;
56         };
57 };
58
59 &pci_phy0 {
60         status = "ok";
61 };
62
63 &pci_phy1 {
64         status = "ok";
65 };
66
67 &pcie0 {
68         status = "ok";
69 };
70
71 &pcie4 {
72         status = "ok";
73 };
74
75 &i2c0 {
76         status = "ok";
77 };
78
79 &i2c1 {
80         status = "ok";
81 };
82
83 &uart0 {
84         status = "ok";
85 };
86
87 &uart1 {
88         status = "ok";
89 };
90
91 &uart2 {
92         status = "ok";
93 };
94
95 &uart3 {
96         status = "ok";
97 };
98
99 &ssp0 {
100         status = "ok";
101
102         slic@0 {
103                 compatible = "silabs,si3226x";
104                 reg = <0>;
105                 spi-max-frequency = <5000000>;
106                 spi-cpha = <1>;
107                 spi-cpol = <1>;
108                 pl022,hierarchy = <0>;
109                 pl022,interface = <0>;
110                 pl022,slave-tx-disable = <0>;
111                 pl022,com-mode = <0>;
112                 pl022,rx-level-trig = <1>;
113                 pl022,tx-level-trig = <1>;
114                 pl022,ctrl-len = <11>;
115                 pl022,wait-state = <0>;
116                 pl022,duplex = <0>;
117         };
118 };
119
120 &ssp1 {
121         status = "ok";
122
123         at25@0 {
124                 compatible = "atmel,at25";
125                 reg = <0>;
126                 spi-max-frequency = <5000000>;
127                 at25,byte-len = <0x8000>;
128                 at25,addr-mode = <2>;
129                 at25,page-size = <64>;
130                 spi-cpha = <1>;
131                 spi-cpol = <1>;
132                 pl022,hierarchy = <0>;
133                 pl022,interface = <0>;
134                 pl022,slave-tx-disable = <0>;
135                 pl022,com-mode = <0>;
136                 pl022,rx-level-trig = <1>;
137                 pl022,tx-level-trig = <1>;
138                 pl022,ctrl-len = <11>;
139                 pl022,wait-state = <0>;
140                 pl022,duplex = <0>;
141         };
142 };
143
144 &sata_phy0 {
145         status = "ok";
146 };
147
148 &sata_phy1 {
149         status = "ok";
150 };
151
152 &sata {
153         status = "ok";
154 };
155
156 &sdio0 {
157         status = "ok";
158 };
159
160 &nand {
161         nandcs@0 {
162                 compatible = "brcm,nandcs";
163                 reg = <0>;
164                 nand-ecc-mode = "hw";
165                 nand-ecc-strength = <8>;
166                 nand-ecc-step-size = <512>;
167                 #address-cells = <1>;
168                 #size-cells = <1>;
169         };
170 };
171
172 &mdio_mux_iproc {
173         mdio@10 {
174                 gphy0: eth-phy@10 {
175                         reg = <0x10>;
176                 };
177         };
178 };
179
180 &pinctrl {
181         pinctrl-names = "default";
182         pinctrl-0 = <&nand_sel>;
183         nand_sel: nand_sel {
184                 function = "nand";
185                 groups = "nand_grp";
186         };
187 };