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