1/* 2 * Samsung's S5PV210 SoC device tree source 3 * 4 * Copyright (c) 2013-2014 Samsung Electronics, Co. Ltd. 5 * 6 * Mateusz Krawczuk <m.krawczuk@partner.samsung.com> 7 * Tomasz Figa <t.figa@samsung.com> 8 * 9 * Board device tree source for Samsung Goni board. 10 * 11 * This program is free software; you can redistribute it and/or modify 12 * it under the terms of the GNU General Public License version 2 as 13 * published by the Free Software Foundation. 14 */ 15 16/dts-v1/; 17#include <dt-bindings/input/input.h> 18#include "s5pv210.dtsi" 19 20/ { 21 model = "Samsung Goni based on S5PC110"; 22 compatible = "samsung,goni", "samsung,s5pv210"; 23 24 aliases { 25 i2c3 = &i2c_pmic; 26 }; 27 28 chosen { 29 bootargs = "console=ttySAC0,115200n8 root=/dev/mmcblk0p5 rw rootwait ignore_loglevel earlyprintk"; 30 }; 31 32 memory { 33 device_type = "memory"; 34 reg = <0x30000000 0x05000000 35 0x40000000 0x10000000 36 0x50000000 0x08000000>; 37 }; 38 39 regulators { 40 compatible = "simple-bus"; 41 #address-cells = <1>; 42 #size-cells = <0>; 43 44 vtf_reg: fixed-regulator@0 { 45 compatible = "regulator-fixed"; 46 regulator-name = "V_TF_2.8V"; 47 regulator-min-microvolt = <2800000>; 48 regulator-max-microvolt = <2800000>; 49 reg = <0>; 50 gpios = <&mp05 4 0>; 51 enable-active-high; 52 }; 53 54 pda_reg: fixed-regulator@1 { 55 compatible = "regulator-fixed"; 56 regulator-name = "VCC_1.8V_PDA"; 57 regulator-min-microvolt = <1800000>; 58 regulator-max-microvolt = <1800000>; 59 reg = <1>; 60 }; 61 62 bat_reg: fixed-regulator@2 { 63 compatible = "regulator-fixed"; 64 regulator-name = "V_BAT"; 65 regulator-min-microvolt = <3700000>; 66 regulator-max-microvolt = <3700000>; 67 reg = <2>; 68 }; 69 70 tsp_reg: fixed-regulator@3 { 71 compatible = "regulator-fixed"; 72 regulator-name = "TSP_VDD"; 73 regulator-min-microvolt = <2800000>; 74 regulator-max-microvolt = <2800000>; 75 reg = <3>; 76 gpios = <&gpj1 3 0>; 77 enable-active-high; 78 }; 79 }; 80 81 i2c_pmic: i2c-pmic { 82 compatible = "i2c-gpio"; 83 gpios = <&gpj4 0 0>, /* sda */ 84 <&gpj4 3 0>; /* scl */ 85 i2c-gpio,delay-us = <2>; /* ~100 kHz */ 86 #address-cells = <1>; 87 #size-cells = <0>; 88 89 pmic@66 { 90 compatible = "national,lp3974"; 91 reg = <0x66>; 92 93 max8998,pmic-buck1-default-dvs-idx = <0>; 94 max8998,pmic-buck1-dvs-gpios = <&gph0 3 0>, 95 <&gph0 4 0>; 96 max8998,pmic-buck1-dvs-voltage = <1200000>, <1200000>, 97 <1200000>, <1200000>; 98 99 max8998,pmic-buck2-default-dvs-idx = <0>; 100 max8998,pmic-buck2-dvs-gpio = <&gph0 5 0>; 101 max8998,pmic-buck2-dvs-voltage = <1200000>, <1200000>; 102 103 regulators { 104 ldo2_reg: LDO2 { 105 regulator-name = "VALIVE_1.1V"; 106 regulator-min-microvolt = <1100000>; 107 regulator-max-microvolt = <1100000>; 108 regulator-always-on; 109 }; 110 111 ldo3_reg: LDO3 { 112 regulator-name = "VUSB+MIPI_1.1V"; 113 regulator-min-microvolt = <1100000>; 114 regulator-max-microvolt = <1100000>; 115 regulator-always-on; 116 }; 117 118 ldo4_reg: LDO4 { 119 regulator-name = "VADC_3.3V"; 120 regulator-min-microvolt = <3300000>; 121 regulator-max-microvolt = <3300000>; 122 }; 123 124 ldo5_reg: LDO5 { 125 regulator-name = "VTF_2.8V"; 126 regulator-min-microvolt = <2800000>; 127 regulator-max-microvolt = <2800000>; 128 }; 129 130 ldo6_reg: LDO6 { 131 regulator-name = "VCC_3.3V"; 132 regulator-min-microvolt = <3300000>; 133 regulator-max-microvolt = <3300000>; 134 }; 135 136 ldo7_reg: LDO7 { 137 regulator-name = "VLCD_1.8V"; 138 regulator-min-microvolt = <1800000>; 139 regulator-max-microvolt = <1800000>; 140 regulator-always-on; 141 }; 142 143 ldo8_reg: LDO8 { 144 regulator-name = "VUSB+VDAC_3.3V"; 145 regulator-min-microvolt = <3300000>; 146 regulator-max-microvolt = <3300000>; 147 }; 148 149 ldo9_reg: LDO9 { 150 regulator-name = "VCC+VCAM_2.8V"; 151 regulator-min-microvolt = <2800000>; 152 regulator-max-microvolt = <2800000>; 153 }; 154 155 ldo10_reg: LDO10 { 156 regulator-name = "VPLL_1.1V"; 157 regulator-min-microvolt = <1100000>; 158 regulator-max-microvolt = <1100000>; 159 regulator-boot-on; 160 }; 161 162 ldo11_reg: LDO11 { 163 regulator-name = "CAM_IO_2.8V"; 164 regulator-min-microvolt = <2800000>; 165 regulator-max-microvolt = <2800000>; 166 }; 167 168 ldo12_reg: LDO12 { 169 regulator-name = "CAM_ISP_1.2V"; 170 regulator-min-microvolt = <1200000>; 171 regulator-max-microvolt = <1200000>; 172 }; 173 174 ldo13_reg: LDO13 { 175 regulator-name = "CAM_A_2.8V"; 176 regulator-min-microvolt = <2800000>; 177 regulator-max-microvolt = <2800000>; 178 }; 179 180 ldo14_reg: LDO14 { 181 regulator-name = "CAM_CIF_1.8V"; 182 regulator-min-microvolt = <1800000>; 183 regulator-max-microvolt = <1800000>; 184 }; 185 186 ldo15_reg: LDO15 { 187 regulator-name = "CAM_AF_3.3V"; 188 regulator-min-microvolt = <3300000>; 189 regulator-max-microvolt = <3300000>; 190 }; 191 192 ldo16_reg: LDO16 { 193 regulator-name = "VMIPI_1.8V"; 194 regulator-min-microvolt = <1800000>; 195 regulator-max-microvolt = <1800000>; 196 }; 197 198 ldo17_reg: LDO17 { 199 regulator-name = "CAM_8M_1.8V"; 200 regulator-min-microvolt = <1800000>; 201 regulator-max-microvolt = <1800000>; 202 regulator-always-on; 203 }; 204 205 buck1_reg: BUCK1 { 206 regulator-name = "VARM_1.2V"; 207 regulator-min-microvolt = <1200000>; 208 regulator-max-microvolt = <1200000>; 209 }; 210 211 buck2_reg: BUCK2 { 212 regulator-name = "VINT_1.2V"; 213 regulator-min-microvolt = <1200000>; 214 regulator-max-microvolt = <1200000>; 215 }; 216 217 buck3_reg: BUCK3 { 218 regulator-name = "VCC_1.8V"; 219 regulator-min-microvolt = <1800000>; 220 regulator-max-microvolt = <1800000>; 221 regulator-always-on; 222 }; 223 224 buck4_reg: BUCK4 { 225 regulator-name = "CAM_CORE_1.2V"; 226 regulator-min-microvolt = <1200000>; 227 regulator-max-microvolt = <1200000>; 228 regulator-always-on; 229 }; 230 }; 231 }; 232 }; 233 234 gpio-keys { 235 compatible = "gpio-keys"; 236 237 power-key { 238 gpios = <&gph2 6 1>; 239 linux,code = <KEY_POWER>; 240 label = "power"; 241 debounce-interval = <1>; 242 gpio-key,wakeup; 243 }; 244 }; 245}; 246 247&xusbxti { 248 clock-frequency = <24000000>; 249}; 250 251&keypad { 252 linux,input-no-autorepeat; 253 linux,input-wakeup; 254 samsung,keypad-num-rows = <3>; 255 samsung,keypad-num-columns = <3>; 256 pinctrl-names = "default"; 257 pinctrl-0 = <&keypad_row0>, <&keypad_row1>, <&keypad_row2>, 258 <&keypad_col0>, <&keypad_col1>, <&keypad_col2>; 259 status = "okay"; 260 261 key_1 { 262 keypad,row = <0>; 263 keypad,column = <1>; 264 linux,code = <KEY_CONNECT>; 265 }; 266 267 key_2 { 268 keypad,row = <0>; 269 keypad,column = <2>; 270 linux,code = <KEY_BACK>; 271 }; 272 273 key_3 { 274 keypad,row = <1>; 275 keypad,column = <1>; 276 linux,code = <KEY_CAMERA_FOCUS>; 277 }; 278 279 key_4 { 280 keypad,row = <1>; 281 keypad,column = <2>; 282 linux,code = <KEY_VOLUMEUP>; 283 }; 284 285 key_5 { 286 keypad,row = <2>; 287 keypad,column = <1>; 288 linux,code = <KEY_CAMERA>; 289 }; 290 291 key_6 { 292 keypad,row = <2>; 293 keypad,column = <2>; 294 linux,code = <KEY_VOLUMEDOWN>; 295 }; 296}; 297 298&uart0 { 299 status = "okay"; 300}; 301 302&uart1 { 303 status = "okay"; 304}; 305 306&uart2 { 307 status = "okay"; 308}; 309 310&uart3 { 311 status = "okay"; 312}; 313 314&sdhci0 { 315 bus-width = <4>; 316 non-removable; 317 vmmc-supply = <&ldo5_reg>; 318 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus1 &sd0_bus4>; 319 pinctrl-names = "default"; 320 status = "okay"; 321}; 322 323&sdhci2 { 324 bus-width = <4>; 325 cd-gpios = <&gph3 4 1>; 326 vmmc-supply = <&vtf_reg>; 327 cd-inverted; 328 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>; 329 pinctrl-names = "default"; 330 status = "okay"; 331}; 332 333&hsotg { 334 vusb_a-supply = <&ldo3_reg>; 335 vusb_d-supply = <&ldo8_reg>; 336 dr_mode = "peripheral"; 337 status = "okay"; 338}; 339 340&usbphy { 341 status = "okay"; 342}; 343 344&i2c2 { 345 samsung,i2c-sda-delay = <100>; 346 samsung,i2c-max-bus-freq = <400000>; 347 samsung,i2c-slave-addr = <0x10>; 348 status = "okay"; 349 350 tsp@4a { 351 compatible = "atmel,maxtouch"; 352 reg = <0x4a>; 353 interrupt-parent = <&gpj0>; 354 interrupts = <5 2>; 355 356 atmel,x-line = <17>; 357 atmel,y-line = <11>; 358 atmel,x-size = <800>; 359 atmel,y-size = <480>; 360 atmel,burst-length = <0x21>; 361 atmel,threshold = <0x28>; 362 atmel,orientation = <1>; 363 364 vdd-supply = <&tsp_reg>; 365 }; 366}; 367 368&i2c0 { 369 samsung,i2c-sda-delay = <100>; 370 samsung,i2c-max-bus-freq = <100000>; 371 samsung,i2c-slave-addr = <0x10>; 372 status = "okay"; 373 374 noon010pc30: sensor@30 { 375 compatible = "siliconfile,noon010pc30"; 376 reg = <0x30>; 377 vddio-supply = <&ldo11_reg>; 378 vdda-supply = <&ldo13_reg>; 379 vdd_core-supply = <&ldo14_reg>; 380 381 clock-frequency = <16000000>; 382 clocks = <&clock_cam 0>; 383 clock-names = "mclk"; 384 nreset-gpios = <&gpb 2 0>; 385 nstby-gpios = <&gpb 0 0>; 386 387 port { 388 noon010pc30_ep: endpoint { 389 remote-endpoint = <&fimc0_ep>; 390 bus-width = <8>; 391 hsync-active = <0>; 392 vsync-active = <1>; 393 pclk-sample = <1>; 394 }; 395 }; 396 }; 397}; 398 399&camera { 400 pinctrl-0 = <&cam_port_a_io &cam_port_a_clk_active>; 401 pinctrl-1 = <&cam_port_a_io &cam_port_a_clk_idle>; 402 pinctrl-names = "default", "idle"; 403 404 parallel-ports { 405 #address-cells = <1>; 406 #size-cells = <0>; 407 408 /* camera A input */ 409 port@1 { 410 reg = <1>; 411 fimc0_ep: endpoint { 412 remote-endpoint = <&noon010pc30_ep>; 413 bus-width = <8>; 414 hsync-active = <1>; 415 vsync-active = <1>; 416 pclk-sample = <0>; 417 }; 418 }; 419 }; 420}; 421 422&fimd { 423 pinctrl-0 = <&lcd_clk &lcd_data24>; 424 pinctrl-names = "default"; 425 status = "okay"; 426 427 display-timings { 428 native-mode = <&timing0>; 429 timing0: timing { 430 /* 480x800@55Hz */ 431 clock-frequency = <23439570>; 432 hactive = <480>; 433 hfront-porch = <16>; 434 hback-porch = <16>; 435 hsync-len = <2>; 436 vactive = <800>; 437 vback-porch = <2>; 438 vfront-porch = <28>; 439 vsync-len = <1>; 440 hsync-active = <0>; 441 vsync-active = <0>; 442 de-active = <0>; 443 pixelclk-active = <0>; 444 }; 445 }; 446}; 447 448&onenand { 449 status = "okay"; 450}; 451