diff options
Diffstat (limited to 'arch/arm/boot/dts/ste-snowball.dts')
| -rw-r--r-- | arch/arm/boot/dts/ste-snowball.dts | 231 |
1 files changed, 227 insertions, 4 deletions
diff --git a/arch/arm/boot/dts/ste-snowball.dts b/arch/arm/boot/dts/ste-snowball.dts index f0b39f835914..97d5d21b7db7 100644 --- a/arch/arm/boot/dts/ste-snowball.dts +++ b/arch/arm/boot/dts/ste-snowball.dts | |||
| @@ -11,6 +11,7 @@ | |||
| 11 | 11 | ||
| 12 | /dts-v1/; | 12 | /dts-v1/; |
| 13 | #include "ste-dbx5x0.dtsi" | 13 | #include "ste-dbx5x0.dtsi" |
| 14 | #include "ste-href-family-pinctrl.dtsi" | ||
| 14 | 15 | ||
| 15 | / { | 16 | / { |
| 16 | model = "Calao Systems Snowball platform with device tree"; | 17 | model = "Calao Systems Snowball platform with device tree"; |
| @@ -75,6 +76,8 @@ | |||
| 75 | 76 | ||
| 76 | leds { | 77 | leds { |
| 77 | compatible = "gpio-leds"; | 78 | compatible = "gpio-leds"; |
| 79 | pinctrl-names = "default"; | ||
| 80 | pinctrl-0 = <&gpioled_snowball_mode>; | ||
| 78 | used-led { | 81 | used-led { |
| 79 | label = "user_led"; | 82 | label = "user_led"; |
| 80 | gpios = <&gpio4 14 0x4>; | 83 | gpios = <&gpio4 14 0x4>; |
| @@ -84,6 +87,11 @@ | |||
| 84 | }; | 87 | }; |
| 85 | 88 | ||
| 86 | soc { | 89 | soc { |
| 90 | usb_per5@a03e0000 { | ||
| 91 | pinctrl-names = "default", "sleep"; | ||
| 92 | pinctrl-0 = <&musb_default_mode>; | ||
| 93 | pinctrl-1 = <&musb_sleep_mode>; | ||
| 94 | }; | ||
| 87 | 95 | ||
| 88 | sound { | 96 | sound { |
| 89 | compatible = "stericsson,snd-soc-mop500"; | 97 | compatible = "stericsson,snd-soc-mop500"; |
| @@ -92,7 +100,21 @@ | |||
| 92 | stericsson,audio-codec = <&codec>; | 100 | stericsson,audio-codec = <&codec>; |
| 93 | }; | 101 | }; |
| 94 | 102 | ||
| 103 | msp0: msp@80123000 { | ||
| 104 | pinctrl-names = "default"; | ||
| 105 | pinctrl-0 = <&msp0_default_mode>; | ||
| 106 | status = "okay"; | ||
| 107 | }; | ||
| 108 | |||
| 95 | msp1: msp@80124000 { | 109 | msp1: msp@80124000 { |
| 110 | pinctrl-names = "default"; | ||
| 111 | pinctrl-0 = <&msp1_default_mode>; | ||
| 112 | status = "okay"; | ||
| 113 | }; | ||
| 114 | |||
| 115 | msp2: msp@80117000 { | ||
| 116 | pinctrl-names = "default"; | ||
| 117 | pinctrl-0 = <&msp2_default_mode>; | ||
| 96 | status = "okay"; | 118 | status = "okay"; |
| 97 | }; | 119 | }; |
| 98 | 120 | ||
| @@ -110,6 +132,8 @@ | |||
| 110 | interrupt-parent = <&gpio4>; | 132 | interrupt-parent = <&gpio4>; |
| 111 | vdd33a-supply = <&en_3v3_reg>; | 133 | vdd33a-supply = <&en_3v3_reg>; |
| 112 | vddvario-supply = <&db8500_vape_reg>; | 134 | vddvario-supply = <&db8500_vape_reg>; |
| 135 | pinctrl-names = "default"; | ||
| 136 | pinctrl-0 = <ð_snowball_mode>; | ||
| 113 | 137 | ||
| 114 | reg-shift = <1>; | 138 | reg-shift = <1>; |
| 115 | reg-io-width = <2>; | 139 | reg-io-width = <2>; |
| @@ -122,10 +146,8 @@ | |||
| 122 | }; | 146 | }; |
| 123 | 147 | ||
| 124 | vmmci: regulator-gpio { | 148 | vmmci: regulator-gpio { |
| 125 | gpios = <&gpio6 25 0x4>; | 149 | gpios = <&gpio7 4 0x4>; |
| 126 | enable-gpio = <&gpio7 4 0x4>; | 150 | enable-gpio = <&gpio6 25 0x4>; |
| 127 | |||
| 128 | status = "okay"; | ||
| 129 | }; | 151 | }; |
| 130 | 152 | ||
| 131 | // External Micro SD slot | 153 | // External Micro SD slot |
| @@ -136,6 +158,9 @@ | |||
| 136 | mmc-cap-mmc-highspeed; | 158 | mmc-cap-mmc-highspeed; |
| 137 | vmmc-supply = <&ab8500_ldo_aux3_reg>; | 159 | vmmc-supply = <&ab8500_ldo_aux3_reg>; |
| 138 | vqmmc-supply = <&vmmci>; | 160 | vqmmc-supply = <&vmmci>; |
| 161 | pinctrl-names = "default", "sleep"; | ||
| 162 | pinctrl-0 = <&sdi0_default_mode>; | ||
| 163 | pinctrl-1 = <&sdi0_sleep_mode>; | ||
| 139 | 164 | ||
| 140 | cd-gpios = <&gpio6 26 0x4>; // 218 | 165 | cd-gpios = <&gpio6 26 0x4>; // 218 |
| 141 | cd-inverted; | 166 | cd-inverted; |
| @@ -143,6 +168,27 @@ | |||
| 143 | status = "okay"; | 168 | status = "okay"; |
| 144 | }; | 169 | }; |
| 145 | 170 | ||
| 171 | // WLAN SDIO channel | ||
| 172 | sdi1_per2@80118000 { | ||
| 173 | arm,primecell-periphid = <0x10480180>; | ||
| 174 | max-frequency = <100000000>; | ||
| 175 | bus-width = <4>; | ||
| 176 | pinctrl-names = "default", "sleep"; | ||
| 177 | pinctrl-0 = <&sdi1_default_mode>; | ||
| 178 | pinctrl-1 = <&sdi1_sleep_mode>; | ||
| 179 | |||
| 180 | status = "okay"; | ||
| 181 | }; | ||
| 182 | |||
| 183 | // Unused PoP eMMC - register and put it to sleep by default */ | ||
| 184 | sdi2_per3@80005000 { | ||
| 185 | arm,primecell-periphid = <0x10480180>; | ||
| 186 | pinctrl-names = "default"; | ||
| 187 | pinctrl-0 = <&sdi2_sleep_mode>; | ||
| 188 | |||
| 189 | status = "okay"; | ||
| 190 | }; | ||
| 191 | |||
| 146 | // On-board eMMC | 192 | // On-board eMMC |
| 147 | sdi4_per2@80114000 { | 193 | sdi4_per2@80114000 { |
| 148 | arm,primecell-periphid = <0x10480180>; | 194 | arm,primecell-periphid = <0x10480180>; |
| @@ -150,22 +196,63 @@ | |||
| 150 | bus-width = <8>; | 196 | bus-width = <8>; |
| 151 | mmc-cap-mmc-highspeed; | 197 | mmc-cap-mmc-highspeed; |
| 152 | vmmc-supply = <&ab8500_ldo_aux2_reg>; | 198 | vmmc-supply = <&ab8500_ldo_aux2_reg>; |
| 199 | pinctrl-names = "default", "sleep"; | ||
| 200 | pinctrl-0 = <&sdi4_default_mode>; | ||
| 201 | pinctrl-1 = <&sdi4_sleep_mode>; | ||
| 153 | 202 | ||
| 154 | status = "okay"; | 203 | status = "okay"; |
| 155 | }; | 204 | }; |
| 156 | 205 | ||
| 157 | uart@80120000 { | 206 | uart@80120000 { |
| 207 | pinctrl-names = "default", "sleep"; | ||
| 208 | pinctrl-0 = <&uart0_default_mode>; | ||
| 209 | pinctrl-1 = <&uart0_sleep_mode>; | ||
| 158 | status = "okay"; | 210 | status = "okay"; |
| 159 | }; | 211 | }; |
| 160 | 212 | ||
| 161 | uart@80121000 { | 213 | uart@80121000 { |
| 214 | pinctrl-names = "default", "sleep"; | ||
| 215 | pinctrl-0 = <&uart1_default_mode>; | ||
| 216 | pinctrl-1 = <&uart1_sleep_mode>; | ||
| 162 | status = "okay"; | 217 | status = "okay"; |
| 163 | }; | 218 | }; |
| 164 | 219 | ||
| 165 | uart@80007000 { | 220 | uart@80007000 { |
| 221 | pinctrl-names = "default", "sleep"; | ||
| 222 | pinctrl-0 = <&uart2_default_mode>; | ||
| 223 | pinctrl-1 = <&uart2_sleep_mode>; | ||
| 166 | status = "okay"; | 224 | status = "okay"; |
| 167 | }; | 225 | }; |
| 168 | 226 | ||
| 227 | i2c@80004000 { | ||
| 228 | pinctrl-names = "default","sleep"; | ||
| 229 | pinctrl-0 = <&i2c0_default_mode>; | ||
| 230 | pinctrl-1 = <&i2c0_sleep_mode>; | ||
| 231 | }; | ||
| 232 | |||
| 233 | i2c@80122000 { | ||
| 234 | pinctrl-names = "default","sleep"; | ||
| 235 | pinctrl-0 = <&i2c1_default_mode>; | ||
| 236 | pinctrl-1 = <&i2c1_sleep_mode>; | ||
| 237 | }; | ||
| 238 | |||
| 239 | i2c@80128000 { | ||
| 240 | pinctrl-names = "default","sleep"; | ||
| 241 | pinctrl-0 = <&i2c2_default_mode>; | ||
| 242 | pinctrl-1 = <&i2c2_sleep_mode>; | ||
| 243 | }; | ||
| 244 | |||
| 245 | i2c@80110000 { | ||
| 246 | pinctrl-names = "default","sleep"; | ||
| 247 | pinctrl-0 = <&i2c3_default_mode>; | ||
| 248 | pinctrl-1 = <&i2c3_sleep_mode>; | ||
| 249 | }; | ||
| 250 | |||
| 251 | ssp@80002000 { | ||
| 252 | pinctrl-names = "default"; | ||
| 253 | pinctrl-0 = <&ssp0_snowball_mode>; | ||
| 254 | }; | ||
| 255 | |||
| 169 | cpufreq-cooling { | 256 | cpufreq-cooling { |
| 170 | status = "okay"; | 257 | status = "okay"; |
| 171 | }; | 258 | }; |
| @@ -266,5 +353,141 @@ | |||
| 266 | }; | 353 | }; |
| 267 | }; | 354 | }; |
| 268 | }; | 355 | }; |
| 356 | |||
| 357 | pinctrl { | ||
| 358 | /* | ||
| 359 | * Set this up using hogs, as time goes by and as seems fit, these | ||
| 360 | * can be moved over to being controlled by respective device. | ||
| 361 | */ | ||
| 362 | pinctrl-names = "default"; | ||
| 363 | pinctrl-0 = <&accel_snowball_mode>, | ||
| 364 | <&magneto_snowball_mode>, | ||
| 365 | <&gbf_snowball_mode>, | ||
| 366 | <&wlan_snowball_mode>; | ||
| 367 | |||
| 368 | ethernet { | ||
| 369 | /* | ||
| 370 | * Mux in "SM" which is used for the | ||
| 371 | * SMSC911x Ethernet adapter | ||
| 372 | */ | ||
| 373 | eth_snowball_mode: eth_snowball { | ||
| 374 | snowball_mux { | ||
| 375 | ste,function = "sm"; | ||
| 376 | ste,pins = "sm_b_1"; | ||
| 377 | }; | ||
| 378 | /* LAN IRQ pin */ | ||
| 379 | snowball_cfg1 { | ||
| 380 | ste,pins = "GPIO140_B11"; | ||
| 381 | ste,config = <&in_nopull>; | ||
| 382 | }; | ||
| 383 | /* LAN reset pin */ | ||
| 384 | snowball_cfg2 { | ||
| 385 | ste,pins = "GPIO141_C12"; | ||
| 386 | ste,config = <&gpio_out_hi>; | ||
| 387 | }; | ||
| 388 | |||
| 389 | }; | ||
| 390 | }; | ||
| 391 | sdi0 { | ||
| 392 | sdi0_default_mode: sdi0_default { | ||
| 393 | snowball_mux { | ||
| 394 | ste,function = "mc0"; | ||
| 395 | ste,pins = "mc0dat31dir_a_1"; | ||
| 396 | }; | ||
| 397 | snowball_cfg1 { | ||
| 398 | ste,pins = "GPIO21_AB3"; /* DAT31DIR */ | ||
| 399 | ste,config = <&out_hi>; | ||
| 400 | }; | ||
| 401 | |||
| 402 | }; | ||
| 403 | }; | ||
| 404 | ssp0 { | ||
| 405 | ssp0_snowball_mode: ssp0_snowball_default { | ||
| 406 | snowball_mux { | ||
| 407 | ste,function = "ssp0"; | ||
| 408 | ste,pins = "ssp0_a_1"; | ||
| 409 | }; | ||
| 410 | snowball_cfg1 { | ||
| 411 | ste,pins = "GPIO144_B13"; /* FRM */ | ||
| 412 | ste,config = <&gpio_out_hi>; | ||
| 413 | }; | ||
| 414 | snowball_cfg2 { | ||
| 415 | ste,pins = "GPIO145_C13"; /* RXD */ | ||
| 416 | ste,config = <&in_pd>; | ||
| 417 | }; | ||
| 418 | snowball_cfg3 { | ||
| 419 | ste,pins = | ||
| 420 | "GPIO146_D13", /* TXD */ | ||
| 421 | "GPIO143_D12"; /* CLK */ | ||
| 422 | ste,config = <&out_lo>; | ||
| 423 | }; | ||
| 424 | |||
| 425 | }; | ||
| 426 | }; | ||
| 427 | gpio_led { | ||
| 428 | gpioled_snowball_mode: gpioled_default { | ||
| 429 | snowball_cfg1 { | ||
| 430 | ste,pins = "GPIO142_C11"; | ||
| 431 | ste,config = <&gpio_out_hi>; | ||
| 432 | }; | ||
| 433 | |||
| 434 | }; | ||
| 435 | }; | ||
| 436 | accelerometer { | ||
| 437 | accel_snowball_mode: accel_snowball { | ||
| 438 | /* Accelerometer lines */ | ||
| 439 | snowball_cfg1 { | ||
| 440 | ste,pins = | ||
| 441 | "GPIO163_C20", /* ACCEL_IRQ1 */ | ||
| 442 | "GPIO164_B21"; /* ACCEL_IRQ2 */ | ||
| 443 | ste,config = <&gpio_in_pu>; | ||
| 444 | }; | ||
| 445 | }; | ||
| 446 | }; | ||
| 447 | magnetometer { | ||
| 448 | magneto_snowball_mode: magneto_snowball { | ||
| 449 | snowball_cfg1 { | ||
| 450 | ste,pins = "GPIO165_C21"; /* MAG_DRDY */ | ||
| 451 | ste,config = <&gpio_in_pu>; | ||
| 452 | }; | ||
| 453 | }; | ||
| 454 | }; | ||
| 455 | gbf { | ||
| 456 | gbf_snowball_mode: gbf_snowball { | ||
| 457 | /* | ||
| 458 | * GBF (GPS, Bluetooth, FM-radio) interface, | ||
| 459 | * pull low to reset state | ||
| 460 | */ | ||
| 461 | snowball_cfg1 { | ||
| 462 | ste,pins = "GPIO171_D23"; /* GBF_ENA_RESET */ | ||
| 463 | ste,config = <&gpio_out_lo>; | ||
| 464 | }; | ||
| 465 | }; | ||
| 466 | }; | ||
| 467 | wlan { | ||
| 468 | wlan_snowball_mode: wlan_snowball { | ||
| 469 | /* | ||
| 470 | * Activate this mode with the WLAN chip. | ||
| 471 | * These are plain GPIO pins used by WLAN | ||
| 472 | */ | ||
| 473 | snowball_cfg1 { | ||
| 474 | ste,pins = | ||
| 475 | "GPIO161_D21", /* WLAN_PMU_EN */ | ||
| 476 | "GPIO215_AH13"; /* WLAN_ENA */ | ||
| 477 | ste,config = <&gpio_out_lo>; | ||
| 478 | }; | ||
| 479 | snowball_cfg2 { | ||
| 480 | ste,pins = "GPIO216_AG12"; /* WLAN_IRQ */ | ||
| 481 | ste,config = <&gpio_in_pu>; | ||
| 482 | }; | ||
| 483 | }; | ||
| 484 | }; | ||
| 485 | }; | ||
| 486 | |||
| 487 | mcde@a0350000 { | ||
| 488 | pinctrl-names = "default", "sleep"; | ||
| 489 | pinctrl-0 = <&lcd_default_mode>; | ||
| 490 | pinctrl-1 = <&lcd_sleep_mode>; | ||
| 491 | }; | ||
| 269 | }; | 492 | }; |
| 270 | }; | 493 | }; |
