xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/broadcom/stingray/bcm958742-base.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun/*
2*4882a593Smuzhiyun *  BSD LICENSE
3*4882a593Smuzhiyun *
4*4882a593Smuzhiyun *  Copyright(c) 2016-2017 Broadcom.  All rights reserved.
5*4882a593Smuzhiyun *
6*4882a593Smuzhiyun *  Redistribution and use in source and binary forms, with or without
7*4882a593Smuzhiyun *  modification, are permitted provided that the following conditions
8*4882a593Smuzhiyun *  are met:
9*4882a593Smuzhiyun *
10*4882a593Smuzhiyun *    * Redistributions of source code must retain the above copyright
11*4882a593Smuzhiyun *      notice, this list of conditions and the following disclaimer.
12*4882a593Smuzhiyun *    * Redistributions in binary form must reproduce the above copyright
13*4882a593Smuzhiyun *      notice, this list of conditions and the following disclaimer in
14*4882a593Smuzhiyun *      the documentation and/or other materials provided with the
15*4882a593Smuzhiyun *      distribution.
16*4882a593Smuzhiyun *    * Neither the name of Broadcom nor the names of its
17*4882a593Smuzhiyun *      contributors may be used to endorse or promote products derived
18*4882a593Smuzhiyun *      from this software without specific prior written permission.
19*4882a593Smuzhiyun *
20*4882a593Smuzhiyun *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21*4882a593Smuzhiyun *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22*4882a593Smuzhiyun *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23*4882a593Smuzhiyun *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24*4882a593Smuzhiyun *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25*4882a593Smuzhiyun *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26*4882a593Smuzhiyun *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27*4882a593Smuzhiyun *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28*4882a593Smuzhiyun *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29*4882a593Smuzhiyun *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30*4882a593Smuzhiyun *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31*4882a593Smuzhiyun */
32*4882a593Smuzhiyun
33*4882a593Smuzhiyun#include "stingray-board-base.dtsi"
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun/ {
36*4882a593Smuzhiyun	sdio0_vddo_ctrl_reg: sdio0_vddo_ctrl {
37*4882a593Smuzhiyun		compatible = "regulator-gpio";
38*4882a593Smuzhiyun		regulator-name = "sdio0_vddo_ctrl_reg";
39*4882a593Smuzhiyun		regulator-type = "voltage";
40*4882a593Smuzhiyun		regulator-min-microvolt = <1800000>;
41*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
42*4882a593Smuzhiyun		gpios = <&pca9505 18 0>;
43*4882a593Smuzhiyun		states = <3300000 0x0
44*4882a593Smuzhiyun			  1800000 0x1>;
45*4882a593Smuzhiyun	};
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun	sdio1_vddo_ctrl_reg: sdio1_vddo_ctrl {
48*4882a593Smuzhiyun		compatible = "regulator-gpio";
49*4882a593Smuzhiyun		regulator-name = "sdio1_vddo_ctrl_reg";
50*4882a593Smuzhiyun		regulator-type = "voltage";
51*4882a593Smuzhiyun		regulator-min-microvolt = <1800000>;
52*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
53*4882a593Smuzhiyun		gpios = <&pca9505 19 0>;
54*4882a593Smuzhiyun		states = <3300000 0x0
55*4882a593Smuzhiyun			  1800000 0x1>;
56*4882a593Smuzhiyun	};
57*4882a593Smuzhiyun};
58*4882a593Smuzhiyun
59*4882a593Smuzhiyun&sata0 {
60*4882a593Smuzhiyun	status = "okay";
61*4882a593Smuzhiyun};
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun&sata_phy0{
64*4882a593Smuzhiyun	status = "okay";
65*4882a593Smuzhiyun};
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun&sata1 {
68*4882a593Smuzhiyun	status = "okay";
69*4882a593Smuzhiyun};
70*4882a593Smuzhiyun
71*4882a593Smuzhiyun&sata_phy1{
72*4882a593Smuzhiyun	status = "okay";
73*4882a593Smuzhiyun};
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun&sata2 {
76*4882a593Smuzhiyun	status = "okay";
77*4882a593Smuzhiyun};
78*4882a593Smuzhiyun
79*4882a593Smuzhiyun&sata_phy2{
80*4882a593Smuzhiyun	status = "okay";
81*4882a593Smuzhiyun};
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun&sata3 {
84*4882a593Smuzhiyun	status = "okay";
85*4882a593Smuzhiyun};
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun&sata_phy3{
88*4882a593Smuzhiyun	status = "okay";
89*4882a593Smuzhiyun};
90*4882a593Smuzhiyun
91*4882a593Smuzhiyun&sata4 {
92*4882a593Smuzhiyun	status = "okay";
93*4882a593Smuzhiyun};
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun&sata_phy4{
96*4882a593Smuzhiyun	status = "okay";
97*4882a593Smuzhiyun};
98*4882a593Smuzhiyun
99*4882a593Smuzhiyun&sata5 {
100*4882a593Smuzhiyun	status = "okay";
101*4882a593Smuzhiyun};
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun&sata_phy5{
104*4882a593Smuzhiyun	status = "okay";
105*4882a593Smuzhiyun};
106*4882a593Smuzhiyun
107*4882a593Smuzhiyun&sata6 {
108*4882a593Smuzhiyun	status = "okay";
109*4882a593Smuzhiyun};
110*4882a593Smuzhiyun
111*4882a593Smuzhiyun&sata_phy6{
112*4882a593Smuzhiyun	status = "okay";
113*4882a593Smuzhiyun};
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun&sata7 {
116*4882a593Smuzhiyun	status = "okay";
117*4882a593Smuzhiyun};
118*4882a593Smuzhiyun
119*4882a593Smuzhiyun&sata_phy7{
120*4882a593Smuzhiyun	status = "okay";
121*4882a593Smuzhiyun};
122*4882a593Smuzhiyun
123*4882a593Smuzhiyun&pwm {
124*4882a593Smuzhiyun	status = "okay";
125*4882a593Smuzhiyun};
126*4882a593Smuzhiyun
127*4882a593Smuzhiyun&i2c0 {
128*4882a593Smuzhiyun	status = "okay";
129*4882a593Smuzhiyun
130*4882a593Smuzhiyun	pca9505: pca9505@20 {
131*4882a593Smuzhiyun		compatible = "nxp,pca9505";
132*4882a593Smuzhiyun		gpio-controller;
133*4882a593Smuzhiyun		#gpio-cells = <2>;
134*4882a593Smuzhiyun		reg = <0x20>;
135*4882a593Smuzhiyun	};
136*4882a593Smuzhiyun};
137*4882a593Smuzhiyun
138*4882a593Smuzhiyun&i2c1 {
139*4882a593Smuzhiyun	status = "okay";
140*4882a593Smuzhiyun
141*4882a593Smuzhiyun	pcf8574: pcf8574@27 {
142*4882a593Smuzhiyun		compatible = "nxp,pcf8574a";
143*4882a593Smuzhiyun		gpio-controller;
144*4882a593Smuzhiyun		#gpio-cells = <2>;
145*4882a593Smuzhiyun		reg = <0x27>;
146*4882a593Smuzhiyun	};
147*4882a593Smuzhiyun};
148*4882a593Smuzhiyun
149*4882a593Smuzhiyun&enet {
150*4882a593Smuzhiyun	status = "okay";
151*4882a593Smuzhiyun};
152*4882a593Smuzhiyun
153*4882a593Smuzhiyun&nand {
154*4882a593Smuzhiyun	status = "okay";
155*4882a593Smuzhiyun	nandcs@0 {
156*4882a593Smuzhiyun		compatible = "brcm,nandcs";
157*4882a593Smuzhiyun		reg = <0>;
158*4882a593Smuzhiyun		nand-ecc-mode = "hw";
159*4882a593Smuzhiyun		nand-ecc-strength = <8>;
160*4882a593Smuzhiyun		nand-ecc-step-size = <512>;
161*4882a593Smuzhiyun		nand-bus-width = <16>;
162*4882a593Smuzhiyun		brcm,nand-oob-sector-size = <16>;
163*4882a593Smuzhiyun		#address-cells = <1>;
164*4882a593Smuzhiyun		#size-cells = <1>;
165*4882a593Smuzhiyun	};
166*4882a593Smuzhiyun};
167*4882a593Smuzhiyun
168*4882a593Smuzhiyun&sdio0 {
169*4882a593Smuzhiyun	vqmmc-supply = <&sdio0_vddo_ctrl_reg>;
170*4882a593Smuzhiyun	status = "okay";
171*4882a593Smuzhiyun};
172*4882a593Smuzhiyun
173*4882a593Smuzhiyun&sdio1 {
174*4882a593Smuzhiyun	vqmmc-supply = <&sdio1_vddo_ctrl_reg>;
175*4882a593Smuzhiyun	status = "okay";
176*4882a593Smuzhiyun};
177