1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Samsung's S5PV210 based Galaxy Aries board device tree source 4 */ 5 6/dts-v1/; 7#include <dt-bindings/gpio/gpio.h> 8#include <dt-bindings/interrupt-controller/irq.h> 9#include "s5pv210.dtsi" 10 11/ { 12 compatible = "samsung,aries", "samsung,s5pv210"; 13 14 aliases { 15 i2c6 = &i2c_pmic; 16 i2c9 = &i2c_fuel; 17 }; 18 19 memory@30000000 { 20 device_type = "memory"; 21 reg = <0x30000000 0x05000000 22 0x40000000 0x10000000 23 0x50000000 0x08000000>; 24 }; 25 26 reserved-memory { 27 #address-cells = <1>; 28 #size-cells = <1>; 29 ranges; 30 31 mfc_left: region@43000000 { 32 compatible = "shared-dma-pool"; 33 no-map; 34 reg = <0x43000000 0x2000000>; 35 }; 36 37 mfc_right: region@51000000 { 38 compatible = "shared-dma-pool"; 39 no-map; 40 reg = <0x51000000 0x2000000>; 41 }; 42 }; 43 44 vibrator_pwr: regulator-fixed-0 { 45 compatible = "regulator-fixed"; 46 regulator-name = "vibrator-en"; 47 enable-active-high; 48 gpio = <&gpj1 1 GPIO_ACTIVE_HIGH>; 49 }; 50 51 wifi_pwrseq: wifi-pwrseq { 52 compatible = "mmc-pwrseq-simple"; 53 reset-gpios = <&gpg1 2 GPIO_ACTIVE_LOW>; 54 pinctrl-names = "default"; 55 pinctrl-0 = <&wlan_gpio_rst>; 56 post-power-on-delay-ms = <500>; 57 power-off-delay-us = <500>; 58 }; 59 60 i2c_pmic: i2c-gpio-0 { 61 compatible = "i2c-gpio"; 62 sda-gpios = <&gpj4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 63 scl-gpios = <&gpj4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 64 i2c-gpio,delay-us = <2>; 65 #address-cells = <1>; 66 #size-cells = <0>; 67 68 pmic@66 { 69 compatible = "maxim,max8998"; 70 reg = <0x66>; 71 interrupt-parent = <&gph0>; 72 interrupts = <7 IRQ_TYPE_EDGE_FALLING>; 73 74 max8998,pmic-buck1-default-dvs-idx = <1>; 75 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>, 76 <&gph0 4 GPIO_ACTIVE_HIGH>; 77 max8998,pmic-buck1-dvs-voltage = <1275000>, <1200000>, 78 <1050000>, <950000>; 79 80 max8998,pmic-buck2-default-dvs-idx = <0>; 81 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>; 82 max8998,pmic-buck2-dvs-voltage = <1100000>, <1000000>; 83 84 regulators { 85 ldo2_reg: LDO2 { 86 regulator-name = "VALIVE_1.2V"; 87 regulator-min-microvolt = <1200000>; 88 regulator-max-microvolt = <1200000>; 89 regulator-always-on; 90 91 regulator-state-mem { 92 regulator-on-in-suspend; 93 }; 94 }; 95 96 ldo3_reg: LDO3 { 97 regulator-name = "VUSB_1.1V"; 98 regulator-min-microvolt = <1100000>; 99 regulator-max-microvolt = <1100000>; 100 101 regulator-state-mem { 102 regulator-off-in-suspend; 103 }; 104 }; 105 106 ldo4_reg: LDO4 { 107 regulator-name = "VADC_3.3V"; 108 regulator-min-microvolt = <3300000>; 109 regulator-max-microvolt = <3300000>; 110 regulator-always-on; 111 112 regulator-state-mem { 113 regulator-off-in-suspend; 114 }; 115 }; 116 117 ldo5_reg: LDO5 { 118 regulator-name = "VTF_2.8V"; 119 regulator-min-microvolt = <2800000>; 120 regulator-max-microvolt = <2800000>; 121 122 regulator-state-mem { 123 regulator-off-in-suspend; 124 }; 125 }; 126 127 ldo6_reg: LDO6 { 128 regulator-name = "LDO6"; 129 regulator-min-microvolt = <1600000>; 130 regulator-max-microvolt = <3600000>; 131 }; 132 133 ldo7_reg: LDO7 { 134 regulator-name = "VLCD_1.8V"; 135 regulator-min-microvolt = <1800000>; 136 regulator-max-microvolt = <1800000>; 137 /* Till we get panel driver */ 138 regulator-always-on; 139 140 regulator-state-mem { 141 regulator-off-in-suspend; 142 }; 143 }; 144 145 ldo8_reg: LDO8 { 146 regulator-name = "VUSB_3.3V"; 147 regulator-min-microvolt = <3300000>; 148 regulator-max-microvolt = <3300000>; 149 150 regulator-state-mem { 151 regulator-off-in-suspend; 152 }; 153 }; 154 155 ldo9_reg: LDO9 { 156 regulator-name = "VCC_2.8V_PDA"; 157 regulator-min-microvolt = <2800000>; 158 regulator-max-microvolt = <2800000>; 159 regulator-always-on; 160 }; 161 162 ldo10_reg: LDO10 { 163 regulator-name = "VPLL_1.2V"; 164 regulator-min-microvolt = <1200000>; 165 regulator-max-microvolt = <1200000>; 166 regulator-always-on; 167 168 regulator-state-mem { 169 regulator-on-in-suspend; 170 }; 171 }; 172 173 ldo11_reg: LDO11 { 174 regulator-name = "CAM_AF_3.0V"; 175 regulator-min-microvolt = <3000000>; 176 regulator-max-microvolt = <3000000>; 177 178 regulator-state-mem { 179 regulator-off-in-suspend; 180 }; 181 }; 182 183 ldo12_reg: LDO12 { 184 regulator-name = "CAM_SENSOR_CORE_1.2V"; 185 regulator-min-microvolt = <1200000>; 186 regulator-max-microvolt = <1200000>; 187 188 regulator-state-mem { 189 regulator-off-in-suspend; 190 }; 191 }; 192 193 ldo13_reg: LDO13 { 194 regulator-name = "VGA_VDDIO_2.8V"; 195 regulator-min-microvolt = <2800000>; 196 regulator-max-microvolt = <2800000>; 197 198 regulator-state-mem { 199 regulator-off-in-suspend; 200 }; 201 }; 202 203 ldo14_reg: LDO14 { 204 regulator-name = "VGA_DVDD_1.8V"; 205 regulator-min-microvolt = <1800000>; 206 regulator-max-microvolt = <1800000>; 207 208 regulator-state-mem { 209 regulator-off-in-suspend; 210 }; 211 }; 212 213 ldo15_reg: LDO15 { 214 regulator-name = "CAM_ISP_HOST_2.8V"; 215 regulator-min-microvolt = <2800000>; 216 regulator-max-microvolt = <2800000>; 217 218 regulator-state-mem { 219 regulator-off-in-suspend; 220 }; 221 }; 222 223 ldo16_reg: LDO16 { 224 regulator-name = "VGA_AVDD_2.8V"; 225 regulator-min-microvolt = <2800000>; 226 regulator-max-microvolt = <2800000>; 227 228 regulator-state-mem { 229 regulator-off-in-suspend; 230 }; 231 }; 232 233 ldo17_reg: LDO17 { 234 regulator-name = "VCC_3.0V_LCD"; 235 regulator-min-microvolt = <3000000>; 236 regulator-max-microvolt = <3000000>; 237 /* Till we get panel driver */ 238 regulator-always-on; 239 240 regulator-state-mem { 241 regulator-off-in-suspend; 242 }; 243 }; 244 245 buck1_reg: BUCK1 { 246 regulator-name = "vddarm"; 247 regulator-min-microvolt = <750000>; 248 regulator-max-microvolt = <1500000>; 249 250 regulator-state-mem { 251 regulator-off-in-suspend; 252 regulator-suspend-microvolt = <1250000>; 253 }; 254 }; 255 256 buck2_reg: BUCK2 { 257 regulator-name = "vddint"; 258 regulator-min-microvolt = <750000>; 259 regulator-max-microvolt = <1500000>; 260 261 regulator-state-mem { 262 regulator-off-in-suspend; 263 regulator-suspend-microvolt = <1100000>; 264 }; 265 }; 266 267 buck3_reg: BUCK3 { 268 regulator-name = "VCC_1.8V"; 269 regulator-min-microvolt = <1800000>; 270 regulator-max-microvolt = <1800000>; 271 regulator-always-on; 272 }; 273 274 buck4_reg: BUCK4 { 275 regulator-name = "CAM_ISP_CORE_1.2V"; 276 regulator-min-microvolt = <1200000>; 277 regulator-max-microvolt = <1200000>; 278 279 regulator-state-mem { 280 regulator-off-in-suspend; 281 }; 282 }; 283 284 ap32khz_reg: EN32KHz-AP { 285 regulator-name = "32KHz AP"; 286 regulator-always-on; 287 }; 288 289 cp32khz_reg: EN32KHz-CP { 290 regulator-name = "32KHz CP"; 291 }; 292 293 vichg_reg: ENVICHG { 294 regulator-name = "VICHG"; 295 regulator-always-on; 296 }; 297 298 safe1_sreg: ESAFEOUT1 { 299 regulator-name = "SAFEOUT1"; 300 }; 301 302 safe2_sreg: ESAFEOUT2 { 303 regulator-name = "SAFEOUT2"; 304 }; 305 }; 306 }; 307 }; 308 309 i2c_fuel: i2c-gpio-1 { 310 compatible = "i2c-gpio"; 311 sda-gpios = <&mp05 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 312 scl-gpios = <&mp05 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 313 i2c-gpio,delay-us = <2>; 314 #address-cells = <1>; 315 #size-cells = <0>; 316 317 fuelgauge@36 { 318 compatible = "maxim,max17040"; 319 interrupt-parent = <&vic0>; 320 interrupts = <7>; 321 reg = <0x36>; 322 }; 323 }; 324 325 vibrator: pwm-vibrator { 326 compatible = "pwm-vibrator"; 327 pwms = <&pwm 1 44642 0>; 328 pwm-names = "enable"; 329 vcc-supply = <&vibrator_pwr>; 330 pinctrl-names = "default"; 331 pinctrl-0 = <&pwm1_out>; 332 }; 333 334 poweroff: syscon-poweroff { 335 compatible = "syscon-poweroff"; 336 regmap = <&pmu_syscon>; 337 offset = <0x681c>; /* PS_HOLD_CONTROL */ 338 value = <0x5200>; 339 }; 340}; 341 342&fimd { 343 pinctrl-names = "default"; 344 pinctrl-0 = <&lcd_clk &lcd_data24>; 345 status = "okay"; 346 347 samsung,invert-vden; 348 samsung,invert-vclk; 349 350 display-timings { 351 timing-0 { 352 /* 480x800@60Hz */ 353 clock-frequency = <25628040>; 354 hactive = <480>; 355 vactive = <800>; 356 hfront-porch = <16>; 357 hback-porch = <16>; 358 hsync-len = <2>; 359 vfront-porch = <28>; 360 vback-porch = <1>; 361 vsync-len = <2>; 362 }; 363 }; 364}; 365 366&hsotg { 367 vusb_a-supply = <&ldo8_reg>; 368 vusb_d-supply = <&ldo3_reg>; 369 dr_mode = "peripheral"; 370 status = "okay"; 371}; 372 373&i2c2 { 374 samsung,i2c-sda-delay = <100>; 375 samsung,i2c-max-bus-freq = <400000>; 376 samsung,i2c-slave-addr = <0x10>; 377 status = "okay"; 378 379 touchscreen@4a { 380 compatible = "atmel,maxtouch"; 381 reg = <0x4a>; 382 interrupt-parent = <&gpj0>; 383 interrupts = <5 IRQ_TYPE_EDGE_FALLING>; 384 pinctrl-names = "default"; 385 pinctrl-0 = <&ts_irq>; 386 reset-gpios = <&gpj1 3 GPIO_ACTIVE_HIGH>; 387 }; 388}; 389 390&mfc { 391 memory-region = <&mfc_left>, <&mfc_right>; 392}; 393 394&pinctrl0 { 395 wlan_bt_en: wlan-bt-en { 396 samsung,pins = "gpb-5"; 397 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 398 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>; 399 samsung,pin-val = <1>; 400 }; 401 402 wlan_gpio_rst: wlan-gpio-rst { 403 samsung,pins = "gpg1-2"; 404 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 405 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>; 406 }; 407 408 wifi_host_wake: wifi-host-wake { 409 samsung,pins = "gph2-4"; 410 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 411 samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>; 412 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 413 }; 414 415 bt_host_wake: bt-host-wake { 416 samsung,pins = "gph2-5"; 417 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 418 samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>; 419 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 420 }; 421 422 tf_detect: tf-detect { 423 samsung,pins = "gph3-4"; 424 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 425 samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>; 426 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 427 }; 428 429 wifi_wake: wifi-wake { 430 samsung,pins = "gph3-5"; 431 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 432 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>; 433 }; 434 435 ts_irq: ts-irq { 436 samsung,pins = "gpj0-5"; 437 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 438 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>; 439 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 440 }; 441}; 442 443&pwm { 444 samsung,pwm-outputs = <1>; 445}; 446 447&sdhci1 { 448 #address-cells = <1>; 449 #size-cells = <0>; 450 451 bus-width = <4>; 452 max-frequency = <38400000>; 453 pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4 &wifi_wake &wifi_host_wake &wlan_bt_en>; 454 pinctrl-names = "default"; 455 cap-sd-highspeed; 456 cap-mmc-highspeed; 457 458 mmc-pwrseq = <&wifi_pwrseq>; 459 non-removable; 460 status = "okay"; 461 462 wlan@1 { 463 reg = <1>; 464 compatible = "brcm,bcm4329-fmac"; 465 interrupt-parent = <&gph2>; 466 interrupts = <4 IRQ_TYPE_LEVEL_HIGH>; 467 interrupt-names = "host-wake"; 468 }; 469}; 470 471&sdhci2 { 472 bus-width = <4>; 473 cd-gpios = <&gph3 4 GPIO_ACTIVE_LOW>; 474 vmmc-supply = <&ldo5_reg>; 475 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &tf_detect>; 476 pinctrl-names = "default"; 477 status = "okay"; 478}; 479 480&uart0 { 481 status = "okay"; 482 483 bluetooth { 484 compatible = "brcm,bcm43438-bt"; 485 max-speed = <115200>; 486 pinctrl-names = "default"; 487 pinctrl-0 = <&uart0_data &uart0_fctl &bt_host_wake>; 488 shutdown-gpios = <&gpb 3 GPIO_ACTIVE_HIGH>; 489 device-wakeup-gpios = <&gpg3 4 GPIO_ACTIVE_HIGH>; 490 host-wakeup-gpios = <&gph2 5 GPIO_ACTIVE_HIGH>; 491 }; 492}; 493 494&uart1 { 495 status = "okay"; 496}; 497 498&uart2 { 499 status = "okay"; 500}; 501 502&usbphy { 503 status = "okay"; 504 vbus-supply = <&safe1_sreg>; 505}; 506 507&xusbxti { 508 clock-frequency = <24000000>; 509}; 510