Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / iwg20d-q7-common.dtsi
1 /*
2  * Device Tree Source for the iWave-RZ/G1M/G1N Qseven carrier board
3  *
4  * Copyright (C) 2017 Renesas Electronics Corp.
5  *
6  * This file is licensed under the terms of the GNU General Public License
7  * version 2.  This program is licensed "as is" without any warranty of any
8  * kind, whether express or implied.
9  */
10
11 /*
12  * SSI-SGTL5000
13  *
14  * This command is required when Playback/Capture
15  *
16  *      amixer set "DVC Out" 100%
17  *      amixer set "DVC In" 100%
18  *
19  * You can use Mute
20  *
21  *      amixer set "DVC Out Mute" on
22  *      amixer set "DVC In Mute" on
23  *
24  * You can use Volume Ramp
25  *
26  *      amixer set "DVC Out Ramp Up Rate"   "0.125 dB/64 steps"
27  *      amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
28  *      amixer set "DVC Out Ramp" on
29  *      aplay xxx.wav &
30  *      amixer set "DVC Out"  80%  // Volume Down
31  *      amixer set "DVC Out" 100%  // Volume Up
32  */
33
34 / {
35         aliases {
36                 serial0 = &scif0;
37                 serial3 = &scifb1;
38                 ethernet0 = &avb;
39         };
40
41         chosen {
42                 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
43                 stdout-path = "serial0:115200n8";
44         };
45
46         audio_clock: audio_clock {
47                 compatible = "fixed-clock";
48                 #clock-cells = <0>;
49                 clock-frequency = <26000000>;
50         };
51
52         reg_1p5v: 1p5v {
53                 compatible = "regulator-fixed";
54                 regulator-name = "1P5V";
55                 regulator-min-microvolt = <1500000>;
56                 regulator-max-microvolt = <1500000>;
57                 regulator-always-on;
58         };
59
60         rsnd_sgtl5000: sound {
61                 compatible = "simple-audio-card";
62
63                 simple-audio-card,format = "i2s";
64                 simple-audio-card,bitclock-master = <&sndcodec>;
65                 simple-audio-card,frame-master = <&sndcodec>;
66
67                 sndcpu: simple-audio-card,cpu {
68                         sound-dai = <&rcar_sound>;
69                 };
70
71                 sndcodec: simple-audio-card,codec {
72                         sound-dai = <&sgtl5000>;
73                 };
74         };
75
76         vcc_sdhi1: regulator-vcc-sdhi1 {
77                 compatible = "regulator-fixed";
78
79                 regulator-name = "SDHI1 Vcc";
80                 regulator-min-microvolt = <3300000>;
81                 regulator-max-microvolt = <3300000>;
82
83                 gpio = <&gpio1 16 GPIO_ACTIVE_LOW>;
84         };
85
86         vccq_sdhi1: regulator-vccq-sdhi1 {
87                 compatible = "regulator-gpio";
88
89                 regulator-name = "SDHI1 VccQ";
90                 regulator-min-microvolt = <1800000>;
91                 regulator-max-microvolt = <3300000>;
92
93                 gpios = <&gpio2 30 GPIO_ACTIVE_LOW>;
94                 gpios-states = <1>;
95                 states = <3300000 1
96                           1800000 0>;
97         };
98 };
99
100 &avb {
101         pinctrl-0 = <&avb_pins>;
102         pinctrl-names = "default";
103
104         phy-handle = <&phy3>;
105         phy-mode = "gmii";
106         renesas,no-ether-link;
107         status = "okay";
108
109         phy3: ethernet-phy@3 {
110                 reg = <3>;
111                 micrel,led-mode = <1>;
112         };
113 };
114
115 &can0 {
116         pinctrl-0 = <&can0_pins>;
117         pinctrl-names = "default";
118
119         status = "okay";
120 };
121
122 &hsusb {
123         status = "okay";
124         pinctrl-0 = <&usb0_pins>;
125         pinctrl-names = "default";
126 };
127
128 &i2c2 {
129         pinctrl-0 = <&i2c2_pins>;
130         pinctrl-names = "default";
131
132         status = "okay";
133         clock-frequency = <400000>;
134
135         rtc@68 {
136                 compatible = "ti,bq32000";
137                 reg = <0x68>;
138         };
139
140         sgtl5000: codec@a {
141                 compatible = "fsl,sgtl5000";
142                 #sound-dai-cells = <0>;
143                 reg = <0x0a>;
144                 clocks = <&audio_clock>;
145                 VDDA-supply = <&reg_3p3v>;
146                 VDDIO-supply = <&reg_3p3v>;
147                 VDDD-supply = <&reg_1p5v>;
148         };
149 };
150
151 &pci0 {
152         pinctrl-0 = <&usb0_pins>;
153         pinctrl-names = "default";
154 };
155
156 &pci1 {
157         status = "okay";
158         pinctrl-0 = <&usb1_pins>;
159         pinctrl-names = "default";
160 };
161
162 &pcie_bus_clk {
163         clock-frequency = <100000000>;
164 };
165
166 &pciec {
167         status = "okay";
168 };
169
170 &pfc {
171         can0_pins: can0 {
172                 groups = "can0_data_d";
173                 function = "can0";
174         };
175
176         avb_pins: avb {
177                 groups = "avb_mdio", "avb_gmii";
178                 function = "avb";
179         };
180
181         i2c2_pins: i2c2 {
182                 groups = "i2c2";
183                 function = "i2c2";
184         };
185
186         scif0_pins: scif0 {
187                 groups = "scif0_data_d";
188                 function = "scif0";
189         };
190
191         scifb1_pins: scifb1 {
192                 groups = "scifb1_data_d", "scifb1_ctrl";
193                 function = "scifb1";
194         };
195
196         sdhi1_pins: sd1 {
197                 groups = "sdhi1_data4", "sdhi1_ctrl";
198                 function = "sdhi1";
199                 power-source = <3300>;
200         };
201
202         sdhi1_pins_uhs: sd1_uhs {
203                 groups = "sdhi1_data4", "sdhi1_ctrl";
204                 function = "sdhi1";
205                 power-source = <1800>;
206         };
207
208         sound_pins: sound {
209                 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
210                 function = "ssi";
211         };
212
213         usb0_pins: usb0 {
214                 groups = "usb0";
215                 function = "usb0";
216         };
217
218         usb1_pins: usb1 {
219                 groups = "usb1";
220                 function = "usb1";
221         };
222 };
223
224 &rcar_sound {
225         pinctrl-0 = <&sound_pins>;
226         pinctrl-names = "default";
227         status = "okay";
228
229         /* Single DAI */
230         #sound-dai-cells = <0>;
231
232         rcar_sound,dai {
233                 dai0 {
234                         playback = <&ssi1 &src3 &dvc1>;
235                         capture = <&ssi0 &src2 &dvc0>;
236                 };
237         };
238 };
239
240 &scif0 {
241         pinctrl-0 = <&scif0_pins>;
242         pinctrl-names = "default";
243
244         status = "okay";
245 };
246
247 &scifb1 {
248         pinctrl-0 = <&scifb1_pins>;
249         pinctrl-names = "default";
250
251         uart-has-rtscts;
252         status = "okay";
253 };
254
255 &sdhi1 {
256         pinctrl-0 = <&sdhi1_pins>;
257         pinctrl-1 = <&sdhi1_pins_uhs>;
258         pinctrl-names = "default", "state_uhs";
259
260         vmmc-supply = <&vcc_sdhi1>;
261         vqmmc-supply = <&vccq_sdhi1>;
262         cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
263         wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
264         sd-uhs-sdr50;
265         status = "okay";
266 };
267
268 &ssi1 {
269         shared-pin;
270 };
271
272 &usbphy {
273         status = "okay";
274 };