1// SPDX-License-Identifier: GPL-2.0 2/* 3 * SAMSUNG SMDK5250 board device tree source 4 * 5 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com 7 */ 8 9/dts-v1/; 10#include <dt-bindings/gpio/gpio.h> 11#include <dt-bindings/interrupt-controller/irq.h> 12#include "exynos5250.dtsi" 13 14/ { 15 model = "SAMSUNG SMDK5250 board based on EXYNOS5250"; 16 compatible = "samsung,smdk5250", "samsung,exynos5250", "samsung,exynos5"; 17 18 aliases { 19 }; 20 21 memory@40000000 { 22 device_type = "memory"; 23 reg = <0x40000000 0x80000000>; 24 }; 25 26 chosen { 27 bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M init=/linuxrc"; 28 stdout-path = "serial2:115200n8"; 29 }; 30 31 vdd: fixed-regulator-vdd { 32 compatible = "regulator-fixed"; 33 regulator-name = "vdd-supply"; 34 regulator-min-microvolt = <1800000>; 35 regulator-max-microvolt = <1800000>; 36 regulator-always-on; 37 }; 38 39 dbvdd: fixed-regulator-dbvdd { 40 compatible = "regulator-fixed"; 41 regulator-name = "dbvdd-supply"; 42 regulator-min-microvolt = <3300000>; 43 regulator-max-microvolt = <3300000>; 44 regulator-always-on; 45 }; 46 47 spkvdd: fixed-regulator-spkvdd { 48 compatible = "regulator-fixed"; 49 regulator-name = "spkvdd-supply"; 50 regulator-min-microvolt = <5000000>; 51 regulator-max-microvolt = <5000000>; 52 regulator-always-on; 53 }; 54 55 sound { 56 compatible = "samsung,smdk-wm8994"; 57 58 samsung,i2s-controller = <&i2s0>; 59 samsung,audio-codec = <&wm8994>; 60 }; 61 62 fixed-rate-clocks { 63 xxti { 64 compatible = "samsung,clock-xxti"; 65 clock-frequency = <24000000>; 66 }; 67 68 codec_mclk: codec-mclk { 69 compatible = "fixed-clock"; 70 #clock-cells = <0>; 71 clock-frequency = <16934000>; 72 }; 73 }; 74}; 75 76&cpu0 { 77 cpu0-supply = <&buck2_reg>; 78}; 79 80&dp { 81 samsung,color-space = <0>; 82 samsung,color-depth = <1>; 83 samsung,link-rate = <0x0a>; 84 samsung,lane-count = <4>; 85 86 pinctrl-names = "default"; 87 pinctrl-0 = <&dp_hpd>; 88 status = "okay"; 89 90 display-timings { 91 native-mode = <&timing0>; 92 93 timing0: timing { 94 /* 1280x800 */ 95 clock-frequency = <50000>; 96 hactive = <1280>; 97 vactive = <800>; 98 hfront-porch = <4>; 99 hback-porch = <4>; 100 hsync-len = <4>; 101 vback-porch = <4>; 102 vfront-porch = <4>; 103 vsync-len = <4>; 104 }; 105 }; 106}; 107 108&ehci { 109 samsung,vbus-gpio = <&gpx2 6 GPIO_ACTIVE_HIGH>; 110}; 111 112&fimd { 113 status = "okay"; 114}; 115 116&hdmi { 117 status = "okay"; 118 ddc = <&i2c_2>; 119 hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>; 120 vdd-supply = <&ldo8_reg>; 121 vdd_osc-supply = <&ldo10_reg>; 122 vdd_pll-supply = <&ldo8_reg>; 123}; 124 125&i2c_0 { 126 status = "okay"; 127 samsung,i2c-sda-delay = <100>; 128 samsung,i2c-max-bus-freq = <20000>; 129 130 eeprom@50 { 131 compatible = "samsung,s524ad0xd1", "atmel,24c128"; 132 reg = <0x50>; 133 }; 134 135 max77686@9 { 136 compatible = "maxim,max77686"; 137 reg = <0x09>; 138 interrupt-parent = <&gpx3>; 139 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; 140 pinctrl-names = "default"; 141 pinctrl-0 = <&max77686_irq>; 142 wakeup-source; 143 144 voltage-regulators { 145 ldo1_reg: LDO1 { 146 regulator-name = "P1.0V_LDO_OUT1"; 147 regulator-min-microvolt = <1000000>; 148 regulator-max-microvolt = <1000000>; 149 regulator-always-on; 150 }; 151 152 ldo2_reg: LDO2 { 153 regulator-name = "P1.2V_LDO_OUT2"; 154 regulator-min-microvolt = <1200000>; 155 regulator-max-microvolt = <1200000>; 156 regulator-always-on; 157 }; 158 159 ldo3_reg: LDO3 { 160 regulator-name = "P1.8V_LDO_OUT3"; 161 regulator-min-microvolt = <1800000>; 162 regulator-max-microvolt = <1800000>; 163 regulator-always-on; 164 }; 165 166 ldo4_reg: LDO4 { 167 regulator-name = "P2.8V_LDO_OUT4"; 168 regulator-min-microvolt = <2800000>; 169 regulator-max-microvolt = <2800000>; 170 }; 171 172 ldo5_reg: LDO5 { 173 regulator-name = "P1.8V_LDO_OUT5"; 174 regulator-min-microvolt = <1800000>; 175 regulator-max-microvolt = <1800000>; 176 }; 177 178 ldo6_reg: LDO6 { 179 regulator-name = "P1.1V_LDO_OUT6"; 180 regulator-min-microvolt = <1100000>; 181 regulator-max-microvolt = <1100000>; 182 regulator-always-on; 183 }; 184 185 ldo7_reg: LDO7 { 186 regulator-name = "P1.1V_LDO_OUT7"; 187 regulator-min-microvolt = <1100000>; 188 regulator-max-microvolt = <1100000>; 189 regulator-always-on; 190 }; 191 192 ldo8_reg: LDO8 { 193 regulator-name = "P1.0V_LDO_OUT8"; 194 regulator-min-microvolt = <1000000>; 195 regulator-max-microvolt = <1000000>; 196 }; 197 198 ldo10_reg: LDO10 { 199 regulator-name = "P1.8V_LDO_OUT10"; 200 regulator-min-microvolt = <1800000>; 201 regulator-max-microvolt = <1800000>; 202 regulator-always-on; 203 }; 204 205 ldo11_reg: LDO11 { 206 regulator-name = "P1.8V_LDO_OUT11"; 207 regulator-min-microvolt = <1800000>; 208 regulator-max-microvolt = <1800000>; 209 }; 210 211 ldo12_reg: LDO12 { 212 regulator-name = "P3.0V_LDO_OUT12"; 213 regulator-min-microvolt = <3000000>; 214 regulator-max-microvolt = <3000000>; 215 }; 216 217 ldo13_reg: LDO13 { 218 regulator-name = "P1.8V_LDO_OUT13"; 219 regulator-min-microvolt = <1800000>; 220 regulator-max-microvolt = <1800000>; 221 }; 222 223 ldo14_reg: LDO14 { 224 regulator-name = "P1.8V_LDO_OUT14"; 225 regulator-min-microvolt = <1800000>; 226 regulator-max-microvolt = <1800000>; 227 }; 228 229 ldo15_reg: LDO15 { 230 regulator-name = "P1.0V_LDO_OUT15"; 231 regulator-min-microvolt = <1000000>; 232 regulator-max-microvolt = <1000000>; 233 }; 234 235 ldo16_reg: LDO16 { 236 regulator-name = "P1.8V_LDO_OUT16"; 237 regulator-min-microvolt = <1800000>; 238 regulator-max-microvolt = <1800000>; 239 }; 240 241 buck1_reg: BUCK1 { 242 regulator-name = "vdd_mif"; 243 regulator-min-microvolt = <950000>; 244 regulator-max-microvolt = <1300000>; 245 regulator-always-on; 246 regulator-boot-on; 247 }; 248 249 buck2_reg: BUCK2 { 250 regulator-name = "vdd_arm"; 251 regulator-min-microvolt = <850000>; 252 regulator-max-microvolt = <1350000>; 253 regulator-always-on; 254 regulator-boot-on; 255 }; 256 257 buck3_reg: BUCK3 { 258 regulator-name = "vdd_int"; 259 regulator-min-microvolt = <900000>; 260 regulator-max-microvolt = <1200000>; 261 regulator-always-on; 262 regulator-boot-on; 263 }; 264 265 buck4_reg: BUCK4 { 266 regulator-name = "vdd_g3d"; 267 regulator-min-microvolt = <850000>; 268 regulator-max-microvolt = <1300000>; 269 regulator-always-on; 270 regulator-boot-on; 271 }; 272 273 buck5_reg: BUCK5 { 274 regulator-name = "P1.8V_BUCK_OUT5"; 275 regulator-min-microvolt = <1800000>; 276 regulator-max-microvolt = <1800000>; 277 regulator-always-on; 278 regulator-boot-on; 279 }; 280 }; 281 }; 282}; 283 284&i2c_1 { 285 status = "okay"; 286 samsung,i2c-sda-delay = <100>; 287 samsung,i2c-max-bus-freq = <20000>; 288 289 eeprom@51 { 290 compatible = "samsung,s524ad0xd1", "atmel,24c128"; 291 reg = <0x51>; 292 }; 293 294 wm8994: wm8994@1a { 295 compatible = "wlf,wm8994"; 296 reg = <0x1a>; 297 298 gpio-controller; 299 #gpio-cells = <2>; 300 301 clocks = <&codec_mclk>; 302 clock-names = "MCLK1"; 303 304 AVDD2-supply = <&vdd>; 305 CPVDD-supply = <&vdd>; 306 DBVDD-supply = <&dbvdd>; 307 SPKVDD1-supply = <&spkvdd>; 308 SPKVDD2-supply = <&spkvdd>; 309 }; 310}; 311 312&i2c_2 { 313 status = "okay"; 314 /* used by HDMI DDC */ 315 samsung,i2c-sda-delay = <100>; 316 samsung,i2c-max-bus-freq = <66000>; 317}; 318 319&i2c_8 { 320 status = "okay"; 321 /* used by HDMI PHY */ 322 samsung,i2c-sda-delay = <100>; 323 samsung,i2c-max-bus-freq = <66000>; 324}; 325 326&i2c_9 { 327 status = "okay"; 328 samsung,i2c-sda-delay = <100>; 329 samsung,i2c-max-bus-freq = <40000>; 330 samsung,i2c-slave-addr = <0x38>; 331 332 sata_phy_i2c: sata-phy@38 { 333 compatible = "samsung,exynos-sataphy-i2c"; 334 reg = <0x38>; 335 }; 336}; 337 338&i2s0 { 339 status = "okay"; 340}; 341 342&mixer { 343 status = "okay"; 344}; 345 346&mmc_0 { 347 status = "okay"; 348 broken-cd; 349 card-detect-delay = <200>; 350 samsung,dw-mshc-ciu-div = <3>; 351 samsung,dw-mshc-sdr-timing = <2 3>; 352 samsung,dw-mshc-ddr-timing = <1 2>; 353 pinctrl-names = "default"; 354 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; 355 bus-width = <8>; 356 cap-mmc-highspeed; 357}; 358 359&mmc_2 { 360 status = "okay"; 361 card-detect-delay = <200>; 362 samsung,dw-mshc-ciu-div = <3>; 363 samsung,dw-mshc-sdr-timing = <2 3>; 364 samsung,dw-mshc-ddr-timing = <1 2>; 365 pinctrl-names = "default"; 366 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; 367 bus-width = <4>; 368 disable-wp; 369 cap-sd-highspeed; 370}; 371 372&rtc { 373 status = "okay"; 374}; 375 376&sata { 377 status = "okay"; 378}; 379 380&sata_phy { 381 status = "okay"; 382 samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>; 383}; 384 385&spi_1 { 386 status = "okay"; 387 cs-gpios = <&gpa2 5 GPIO_ACTIVE_HIGH>; 388 389 w25q80bw@0 { 390 #address-cells = <1>; 391 #size-cells = <1>; 392 compatible = "w25x80"; 393 reg = <0>; 394 spi-max-frequency = <1000000>; 395 396 controller-data { 397 samsung,spi-feedback-delay = <0>; 398 }; 399 400 partition@0 { 401 label = "U-Boot"; 402 reg = <0x0 0x40000>; 403 read-only; 404 }; 405 406 partition@40000 { 407 label = "Kernel"; 408 reg = <0x40000 0xc0000>; 409 }; 410 }; 411}; 412 413&pinctrl_0 { 414 max77686_irq: max77686-irq { 415 samsung,pins = "gpx3-2"; 416 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 417 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 418 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 419 }; 420}; 421