2 * Copyright 2011 ST-Ericsson AB
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
13 #include "ste-dbx5x0.dtsi"
14 #include "ste-href-ab8500.dtsi"
15 #include "ste-href-family-pinctrl.dtsi"
18 model = "Calao Systems Snowball platform with device tree";
19 compatible = "calaosystems,snowball-a9500", "st-ericsson,u9500";
22 reg = <0x00000000 0x20000000>;
26 compatible = "regulator-fixed";
27 regulator-name = "en-3v3-fixed-supply";
28 regulator-min-microvolt = <3300000>;
29 regulator-max-microvolt = <3300000>;
30 /* AB8500 GPIOs start from 1 - offset 25 is GPIO26. */
31 gpio = <&ab8500_gpio 25 0x4>;
32 startup-delay-us = <5000>;
37 compatible = "gpio-keys";
42 debounce_interval = <50>;
46 gpios = <&gpio1 0 0x4>;
49 debounce_interval = <50>;
53 gpios = <&gpio4 23 0x4>;
56 debounce_interval = <50>;
60 gpios = <&gpio4 24 0x4>;
63 debounce_interval = <50>;
67 gpios = <&gpio5 1 0x4>;
70 debounce_interval = <50>;
74 gpios = <&gpio5 2 0x4>;
79 compatible = "gpio-leds";
80 pinctrl-names = "default";
81 pinctrl-0 = <&gpioled_snowball_mode>;
84 gpios = <&gpio4 14 0x4>;
86 linux,default-trigger = "heartbeat";
92 pinctrl-names = "default", "sleep";
93 pinctrl-0 = <&musb_default_mode>;
94 pinctrl-1 = <&musb_sleep_mode>;
98 compatible = "stericsson,snd-soc-mop500";
100 stericsson,cpu-dai = <&msp1 &msp3>;
101 stericsson,audio-codec = <&codec>;
105 pinctrl-names = "default";
106 pinctrl-0 = <&msp0_default_mode>;
111 pinctrl-names = "default";
112 pinctrl-0 = <&msp1_default_mode>;
117 pinctrl-names = "default";
118 pinctrl-0 = <&msp2_default_mode>;
125 external-bus@50000000 {
129 compatible = "smsc,lan9115";
131 interrupts = <12 IRQ_TYPE_EDGE_RISING>;
132 interrupt-parent = <&gpio4>;
133 vdd33a-supply = <&en_3v3_reg>;
134 vddvario-supply = <&db8500_vape_reg>;
135 pinctrl-names = "default";
136 pinctrl-0 = <ð_snowball_mode>;
140 smsc,force-internal-phy;
141 smsc,irq-active-high;
144 clocks = <&prcc_pclk 3 0>;
148 vmmci: regulator-gpio {
149 gpios = <&gpio7 4 0x4>;
150 enable-gpio = <&gpio6 25 0x4>;
153 // External Micro SD slot
155 arm,primecell-periphid = <0x10480180>;
156 max-frequency = <100000000>;
159 vmmc-supply = <&ab8500_ldo_aux3_reg>;
160 vqmmc-supply = <&vmmci>;
161 pinctrl-names = "default", "sleep";
162 pinctrl-0 = <&sdi0_default_mode>;
163 pinctrl-1 = <&sdi0_sleep_mode>;
165 cd-gpios = <&gpio6 26 0x4>; // 218
173 arm,primecell-periphid = <0x10480180>;
174 max-frequency = <100000000>;
176 pinctrl-names = "default", "sleep";
177 pinctrl-0 = <&sdi1_default_mode>;
178 pinctrl-1 = <&sdi1_sleep_mode>;
183 // Unused PoP eMMC - register and put it to sleep by default */
185 arm,primecell-periphid = <0x10480180>;
186 pinctrl-names = "default";
187 pinctrl-0 = <&sdi2_sleep_mode>;
194 arm,primecell-periphid = <0x10480180>;
195 max-frequency = <100000000>;
198 vmmc-supply = <&ab8500_ldo_aux2_reg>;
199 pinctrl-names = "default", "sleep";
200 pinctrl-0 = <&sdi4_default_mode>;
201 pinctrl-1 = <&sdi4_sleep_mode>;
207 pinctrl-names = "default", "sleep";
208 pinctrl-0 = <&uart0_default_mode>;
209 pinctrl-1 = <&uart0_sleep_mode>;
214 pinctrl-names = "default", "sleep";
215 pinctrl-0 = <&uart1_default_mode>;
216 pinctrl-1 = <&uart1_sleep_mode>;
221 pinctrl-names = "default", "sleep";
222 pinctrl-0 = <&uart2_default_mode>;
223 pinctrl-1 = <&uart2_sleep_mode>;
228 pinctrl-names = "default","sleep";
229 pinctrl-0 = <&i2c0_default_mode>;
230 pinctrl-1 = <&i2c0_sleep_mode>;
234 pinctrl-names = "default","sleep";
235 pinctrl-0 = <&i2c1_default_mode>;
236 pinctrl-1 = <&i2c1_sleep_mode>;
240 pinctrl-names = "default","sleep";
241 pinctrl-0 = <&i2c2_default_mode>;
242 pinctrl-1 = <&i2c2_sleep_mode>;
245 compatible = "st,lsm303dlh-accel";
246 st,drdy-int-pin = <1>;
248 vdd-supply = <&ab8500_ldo_aux1_reg>;
249 vddio-supply = <&db8500_vsmps2_reg>;
250 pinctrl-names = "default";
251 pinctrl-0 = <&accel_snowball_mode>;
255 compatible = "st,lsm303dlm-magn";
257 vdd-supply = <&ab8500_ldo_aux1_reg>;
258 vddio-supply = <&db8500_vsmps2_reg>;
259 pinctrl-names = "default";
260 pinctrl-0 = <&magneto_snowball_mode>;
264 compatible = "st,l3g4200d-gyro";
265 st,drdy-int-pin = <2>;
267 vdd-supply = <&ab8500_ldo_aux1_reg>;
268 vddio-supply = <&db8500_vsmps2_reg>;
271 /* Barometer/pressure sensor */
272 compatible = "st,lps001wp-press";
274 vdd-supply = <&ab8500_ldo_aux1_reg>;
275 vddio-supply = <&db8500_vsmps2_reg>;
280 pinctrl-names = "default","sleep";
281 pinctrl-0 = <&i2c3_default_mode>;
282 pinctrl-1 = <&i2c3_sleep_mode>;
286 pinctrl-names = "default";
287 pinctrl-0 = <&ssp0_snowball_mode>;
302 trip0-temp = <70000>;
303 trip0-type = "active";
304 trip0-cdev-num = <1>;
305 trip0-cdev-name0 = "thermal-cpufreq-0";
307 trip1-temp = <75000>;
308 trip1-type = "active";
309 trip1-cdev-num = <1>;
310 trip1-cdev-name0 = "thermal-cpufreq-0";
312 trip2-temp = <80000>;
313 trip2-type = "active";
314 trip2-cdev-num = <1>;
315 trip2-cdev-name0 = "thermal-cpufreq-0";
317 trip3-temp = <85000>;
318 trip3-type = "critical";
319 trip3-cdev-num = <0>;
326 compatible = "stericsson,ab8500-gpio";
329 ext_regulators: ab8500-ext-regulators {
330 ab8500_ext1_reg: ab8500_ext1 {
331 regulator-name = "ab8500-ext-supply1";
334 ab8500_ext2_reg_reg: ab8500_ext2 {
335 regulator-name = "ab8500-ext-supply2";
338 ab8500_ext3_reg_reg: ab8500_ext3 {
339 regulator-name = "ab8500-ext-supply3";
344 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
345 regulator-name = "V-DISPLAY";
348 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
349 regulator-name = "V-eMMC1";
352 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
353 regulator-name = "V-MMC-SD";
356 ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
357 regulator-name = "V-INTCORE";
360 ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
361 regulator-name = "V-TVOUT";
364 ab8500_ldo_usb_reg: ab8500_ldo_usb {
365 regulator-name = "dummy";
368 ab8500_ldo_audio_reg: ab8500_ldo_audio {
369 regulator-name = "V-AUD";
372 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
373 regulator-name = "V-AMIC1";
376 ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
377 regulator-name = "V-AMIC2";
380 ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
381 regulator-name = "V-DMIC";
384 ab8500_ldo_ana_reg: ab8500_ldo_ana {
385 regulator-name = "V-CSI/DSI";
393 * Set this up using hogs, as time goes by and as seems fit, these
394 * can be moved over to being controlled by respective device.
396 pinctrl-names = "default";
397 pinctrl-0 = <&gbf_snowball_mode>,
398 <&wlan_snowball_mode>;
402 * Mux in "SM" which is used for the
403 * SMSC911x Ethernet adapter
405 eth_snowball_mode: eth_snowball {
412 pins = "GPIO140_B11";
413 ste,config = <&in_nopull>;
417 pins = "GPIO141_C12";
418 ste,config = <&gpio_out_hi>;
424 sdi0_default_mode: sdi0_default {
427 groups = "mc0dat31dir_a_1";
430 pins = "GPIO21_AB3"; /* DAT31DIR */
431 ste,config = <&out_hi>;
437 ssp0_snowball_mode: ssp0_snowball_default {
443 pins = "GPIO144_B13"; /* FRM */
444 ste,config = <&gpio_out_hi>;
447 pins = "GPIO145_C13"; /* RXD */
448 ste,config = <&in_pd>;
452 "GPIO146_D13", /* TXD */
453 "GPIO143_D12"; /* CLK */
454 ste,config = <&out_lo>;
460 gpioled_snowball_mode: gpioled_default {
462 pins = "GPIO142_C11";
463 ste,config = <&gpio_out_hi>;
469 accel_snowball_mode: accel_snowball {
470 /* Accelerometer lines */
473 "GPIO163_C20", /* ACCEL_IRQ1 */
474 "GPIO164_B21"; /* ACCEL_IRQ2 */
475 ste,config = <&gpio_in_pu>;
480 magneto_snowball_mode: magneto_snowball {
482 pins = "GPIO165_C21"; /* MAG_DRDY */
483 ste,config = <&gpio_in_pu>;
488 gbf_snowball_mode: gbf_snowball {
490 * GBF (GPS, Bluetooth, FM-radio) interface,
491 * pull low to reset state
494 pins = "GPIO171_D23"; /* GBF_ENA_RESET */
495 ste,config = <&gpio_out_lo>;
500 wlan_snowball_mode: wlan_snowball {
502 * Activate this mode with the WLAN chip.
503 * These are plain GPIO pins used by WLAN
507 "GPIO161_D21", /* WLAN_PMU_EN */
508 "GPIO215_AH13"; /* WLAN_ENA */
509 ste,config = <&gpio_out_lo>;
512 pins = "GPIO216_AG12"; /* WLAN_IRQ */
513 ste,config = <&gpio_in_pu>;
520 pinctrl-names = "default", "sleep";
521 pinctrl-0 = <&lcd_default_mode>;
522 pinctrl-1 = <&lcd_sleep_mode>;