dm: sandbox: sound: Convert to use driver model
[platform/kernel/u-boot.git] / arch / sandbox / dts / sandbox.dts
1 /dts-v1/;
2
3 #define USB_CLASS_HUB                   9
4
5 / {
6         #address-cells = <1>;
7         #size-cells = <1>;
8         model = "sandbox";
9
10         aliases {
11                 i2c0 = &i2c_0;
12                 pci0 = &pci;
13                 rtc0 = &rtc_0;
14                 axi0 = &axi;
15         };
16
17         chosen {
18                 stdout-path = "/serial";
19         };
20
21         audio: audio-codec {
22                 compatible = "sandbox,audio-codec";
23                 #sound-dai-cells = <1>;
24         };
25
26         cros_ec: cros-ec {
27                 reg = <0 0>;
28                 u-boot,dm-pre-reloc;
29                 compatible = "google,cros-ec-sandbox";
30
31                 /*
32                  * This describes the flash memory within the EC. Note
33                  * that the STM32L flash erases to 0, not 0xff.
34                  */
35                 flash {
36                         u-boot,dm-pre-reloc;
37                         image-pos = <0x08000000>;
38                         size = <0x20000>;
39                         erase-value = <0>;
40
41                         /* Information for sandbox */
42                         ro {
43                                 image-pos = <0>;
44                                 size = <0xf000>;
45                         };
46                         wp-ro {
47                                 image-pos = <0xf000>;
48                                 size = <0x1000>;
49                         };
50                         rw {
51                                 image-pos = <0x10000>;
52                                 size = <0x10000>;
53                         };
54                 };
55         };
56
57         ethrawbus {
58                 compatible = "sandbox,eth-raw-bus";
59                 skip-localhost = <0>;
60         };
61
62         eth@10002000 {
63                 compatible = "sandbox,eth";
64                 reg = <0x10002000 0x1000>;
65                 fake-host-hwaddr = [00 00 66 44 22 00];
66         };
67
68         gpio_a: gpios@0 {
69                 u-boot,dm-pre-reloc;
70                 gpio-controller;
71                 compatible = "sandbox,gpio";
72                 #gpio-cells = <1>;
73                 gpio-bank-name = "a";
74                 sandbox,gpio-count = <20>;
75         };
76
77         gpio_b: gpios@1 {
78                 u-boot,dm-pre-reloc;
79                 gpio-controller;
80                 compatible = "sandbox,gpio";
81                 #gpio-cells = <2>;
82                 gpio-bank-name = "b";
83                 sandbox,gpio-count = <10>;
84         };
85
86         hexagon {
87                 compatible = "demo-simple";
88                 colour = "white";
89                 sides = <6>;
90         };
91
92         i2c_0: i2c@0 {
93                 #address-cells = <1>;
94                 #size-cells = <0>;
95                 reg = <0 0>;
96                 compatible = "sandbox,i2c";
97                 clock-frequency = <400000>;
98                 pinctrl-names = "default";
99                 pinctrl-0 = <&pinctrl_i2c0>;
100                 eeprom@2c {
101                         reg = <0x2c>;
102                         compatible = "i2c-eeprom";
103                 };
104
105                 rtc_0: rtc@43 {
106                         reg = <0x43>;
107                         compatible = "sandbox-rtc";
108                 };
109                 sandbox_pmic: sandbox_pmic {
110                         reg = <0x40>;
111                 };
112
113                 mc34708: pmic@41 {
114                         reg = <0x41>;
115                 };
116
117                 i2c_emul: emul {
118                         #address-cells = <1>;
119                         #size-cells = <0>;
120                         reg = <0xff>;
121                         compatible = "sandbox,i2c-emul-parent";
122                         emul-eeprom {
123                                 reg = <0x2c>;
124                                 compatible = "sandbox,i2c-eeprom";
125                                 sandbox,filename = "i2c.bin";
126                                 sandbox,size = <256>;
127                         };
128                         emul0 {
129                                 reg = <0x43>;
130                                 compatible = "sandbox,i2c-rtc";
131                         };
132                 };
133         };
134
135         i2s: i2s {
136                 compatible = "sandbox,i2s";
137                 #sound-dai-cells = <1>;
138         };
139
140         lcd {
141                 u-boot,dm-pre-reloc;
142                 compatible = "sandbox,lcd-sdl";
143                 xres = <1366>;
144                 yres = <768>;
145         };
146
147         leds {
148                 compatible = "gpio-leds";
149
150                 iracibble {
151                         gpios = <&gpio_a 1 0>;
152                         label = "sandbox:red";
153                 };
154
155                 martinet {
156                         gpios = <&gpio_a 2 0>;
157                         label = "sandbox:green";
158                 };
159         };
160
161         pci: pci-controller {
162                 compatible = "sandbox,pci";
163                 device_type = "pci";
164                 #address-cells = <3>;
165                 #size-cells = <2>;
166                 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000
167                                 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
168                 pci@1f,0 {
169                         compatible = "pci-generic";
170                         reg = <0xf800 0 0 0 0>;
171                         emul@1f,0 {
172                                 compatible = "sandbox,swap-case";
173                         };
174                 };
175         };
176
177         pinctrl {
178                 compatible = "sandbox,pinctrl";
179                 status = "okay";
180
181                 pinctrl_i2c0: i2c0 {
182                         groups = "i2c";
183                         function = "i2c";
184                         bias-pull-up;
185                 };
186
187                 pinctrl_serial0: uart0 {
188                         groups = "serial_a";
189                         function = "serial";
190                 };
191
192                 pinctrl_onewire0: onewire0 {
193                         groups = "w1";
194                         function = "w1";
195                         bias-pull-up;
196                 };
197         };
198
199         reset@1 {
200                 compatible = "sandbox,reset";
201         };
202
203         sound {
204                 compatible = "sandbox,sound";
205                 cpu {
206                         sound-dai = <&i2s 0>;
207                 };
208
209                 codec {
210                         sound-dai = <&audio 0>;
211                 };
212         };
213
214         spi@0 {
215                 u-boot,dm-pre-reloc;
216                 #address-cells = <1>;
217                 #size-cells = <0>;
218                 reg = <0 0>;
219                 compatible = "sandbox,spi";
220                 cs-gpios = <0>, <&gpio_a 0>;
221                 firmware_storage_spi: flash@0 {
222                         u-boot,dm-pre-reloc;
223                         reg = <0>;
224                         compatible = "spansion,m25p16", "sandbox,spi-flash";
225                         spi-max-frequency = <40000000>;
226                         sandbox,filename = "spi.bin";
227                 };
228         };
229
230         spl-test {
231                 u-boot,dm-pre-reloc;
232                 compatible = "sandbox,spl-test";
233                 boolval;
234                 intval = <1>;
235                 intarray = <2 3 4>;
236                 byteval = [05];
237                 bytearray = [06];
238                 longbytearray = [09 0a 0b 0c 0d 0e 0f 10 11];
239                 stringval = "message";
240                 stringarray = "multi-word", "message";
241         };
242
243         spl-test2 {
244                 u-boot,dm-pre-reloc;
245                 compatible = "sandbox,spl-test";
246                 intval = <3>;
247                 intarray = <5>;
248                 byteval = [08];
249                 bytearray = [01 23 34];
250                 longbytearray = [09 0a 0b 0c];
251                 stringval = "message2";
252                 stringarray = "another", "multi-word", "message";
253         };
254
255         spl-test3 {
256                 u-boot,dm-pre-reloc;
257                 compatible = "sandbox,spl-test";
258                 stringarray = "one";
259         };
260
261         spl-test4 {
262                 u-boot,dm-pre-reloc;
263                 compatible = "sandbox,spl-test.2";
264         };
265
266         square {
267                 compatible = "demo-shape";
268                 colour = "blue";
269                 sides = <4>;
270         };
271
272         timer {
273                 compatible = "sandbox,timer";
274                 clock-frequency = <1000000>;
275         };
276
277         tpm {
278                 u-boot,dm-pre-reloc;
279                 compatible = "google,sandbox-tpm";
280         };
281
282         tpm2 {
283                 compatible = "sandbox,tpm2";
284         };
285
286         triangle {
287                 compatible = "demo-shape";
288                 colour = "cyan";
289                 sides = <3>;
290                 character = <83>;
291                 light-gpios = <&gpio_a 2>, <&gpio_b 6 0>;
292         };
293
294         /* Needs to be available prior to relocation */
295         uart0: serial {
296                 u-boot,dm-spl;
297                 compatible = "sandbox,serial";
298                 sandbox,text-colour = "cyan";
299                 pinctrl-names = "default";
300                 pinctrl-0 = <&pinctrl_serial0>;
301         };
302
303         usb@0 {
304                 compatible = "sandbox,usb";
305                 status = "disabled";
306                 hub {
307                         compatible = "sandbox,usb-hub";
308                         #address-cells = <1>;
309                         #size-cells = <0>;
310                         flash-stick {
311                                 reg = <0>;
312                                 compatible = "sandbox,usb-flash";
313                         };
314                 };
315         };
316
317         usb@1 {
318                 compatible = "sandbox,usb";
319                 hub {
320                         compatible = "usb-hub";
321                         usb,device-class = <USB_CLASS_HUB>;
322                         hub-emul {
323                                 compatible = "sandbox,usb-hub";
324                                 #address-cells = <1>;
325                                 #size-cells = <0>;
326                                 flash-stick {
327                                         reg = <0>;
328                                         compatible = "sandbox,usb-flash";
329                                         sandbox,filepath = "flash.bin";
330                                 };
331                         };
332                 };
333         };
334
335         usb@2 {
336                 compatible = "sandbox,usb";
337                 status = "disabled";
338         };
339
340         spmi: spmi@0 {
341                 compatible = "sandbox,spmi";
342                 #address-cells = <0x1>;
343                 #size-cells = <0x1>;
344                 pm8916@0 {
345                         compatible = "qcom,spmi-pmic";
346                         reg = <0x0 0x1>;
347                         #address-cells = <0x1>;
348                         #size-cells = <0x1>;
349
350                         spmi_gpios: gpios@c000 {
351                                 compatible = "qcom,pm8916-gpio";
352                                 reg = <0xc000 0x400>;
353                                 gpio-controller;
354                                 gpio-count = <4>;
355                                 #gpio-cells = <2>;
356                                 gpio-bank-name="spmi";
357                         };
358                 };
359         };
360
361         axi: axi@0 {
362                 compatible = "sandbox,axi";
363                 #address-cells = <0x1>;
364                 #size-cells = <0x1>;
365                 store@0 {
366                         compatible = "sandbox,sandbox_store";
367                         reg = <0x0 0x400>;
368                 };
369         };
370
371         onewire0: onewire {
372                 compatible = "w1-gpio";
373                 gpios = <&gpio_a 8>;
374                 pinctrl-names = "default";
375                 pinctrl-0 = <&pinctrl_onewire0>;
376                 status = "okay";
377
378                 sandbox_eeprom0: sandbox_eeprom@0 {
379                         compatible = "sandbox,w1-eeprom";
380                         status = "okay";
381                 };
382         };
383
384         sandbox_tee {
385                 compatible = "sandbox,tee";
386         };
387 };
388
389 #include "cros-ec-keyboard.dtsi"
390 #include "sandbox_pmic.dtsi"
391
392 &cros_ec {
393         u-boot,dm-pre-reloc;
394         keyboard-controller {
395                 u-boot,dm-pre-reloc;
396         };
397 };