1/dts-v1/; 2 3#include "tegra124.dtsi" 4 5/ { 6 model = "Colorado Engineering TK1-SOM"; 7 compatible = "nvidia,cei-tk1-som", "nvidia,tegra124"; 8 9 chosen { 10 stdout-path = &uartd; 11 }; 12 13 aliases { 14 i2c0 = "/i2c@7000d000"; 15 i2c1 = "/i2c@7000c000"; 16 i2c2 = "/i2c@7000c400"; 17 i2c3 = "/i2c@7000c500"; 18 i2c4 = "/i2c@7000c700"; 19 mmc0 = "/sdhci@700b0600"; 20 mmc1 = "/sdhci@700b0400"; 21 spi0 = "/spi@7000d400"; 22 spi1 = "/spi@7000da00"; 23 usb0 = "/usb@7d000000"; 24 usb1 = "/usb@7d008000"; 25 }; 26 27 memory { 28 device_type = "memory"; 29 reg = <0x80000000 0x80000000>; 30 }; 31 32 pcie-controller@01003000 { 33 status = "okay"; 34 35 avddio-pex-supply = <&vdd_1v05_run>; 36 dvddio-pex-supply = <&vdd_1v05_run>; 37 avdd-pex-pll-supply = <&vdd_1v05_run>; 38 hvdd-pex-supply = <&vdd_3v3_lp0>; 39 hvdd-pex-pll-e-supply = <&vdd_3v3_lp0>; 40 vddio-pex-ctl-supply = <&vdd_3v3_lp0>; 41 avdd-pll-erefe-supply = <&avdd_1v05_run>; 42 43 pci@1,0 { 44 status = "okay"; 45 nvidia,num-lanes = <4>; 46 }; 47 48 pci@2,0 { 49 status = "okay"; 50 }; 51 }; 52 53 i2c@7000c000 { 54 status = "okay"; 55 clock-frequency = <100000>; 56 }; 57 58 i2c@7000c400 { 59 status = "okay"; 60 clock-frequency = <100000>; 61 }; 62 63 i2c@7000c500 { 64 status = "okay"; 65 clock-frequency = <100000>; 66 }; 67 68 i2c@7000c700 { 69 status = "okay"; 70 clock-frequency = <100000>; 71 }; 72 73 /* Expansion PWR_I2C_*, on-board components */ 74 i2c@7000d000 { 75 status = "okay"; 76 clock-frequency = <400000>; 77 78 pmic: pmic@40 { 79 compatible = "ams,as3722"; 80 reg = <0x40>; 81 interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; 82 83 ams,system-power-controller; 84 85 #interrupt-cells = <2>; 86 interrupt-controller; 87 88 gpio-controller; 89 #gpio-cells = <2>; 90 91 pinctrl-names = "default"; 92 pinctrl-0 = <&as3722_default>; 93 94 as3722_default: pinmux { 95 gpio0 { 96 pins = "gpio0"; 97 function = "gpio"; 98 bias-pull-down; 99 }; 100 101 gpio1_2_4_7 { 102 pins = "gpio1", "gpio2", "gpio4", "gpio7"; 103 function = "gpio"; 104 bias-pull-up; 105 }; 106 107 gpio3_5_6 { 108 pins = "gpio3", "gpio5", "gpio6"; 109 bias-high-impedance; 110 }; 111 }; 112 113 regulators { 114 vsup-sd2-supply = <&vdd_5v0_sys>; 115 vsup-sd3-supply = <&vdd_5v0_sys>; 116 vsup-sd4-supply = <&vdd_5v0_sys>; 117 vsup-sd5-supply = <&vdd_5v0_sys>; 118 vin-ldo0-supply = <&vdd_1v35_lp0>; 119 vin-ldo1-6-supply = <&vdd_3v3_run>; 120 vin-ldo2-5-7-supply = <&vddio_1v8>; 121 vin-ldo3-4-supply = <&vdd_3v3_sys>; 122 vin-ldo9-10-supply = <&vdd_5v0_sys>; 123 vin-ldo11-supply = <&vdd_3v3_run>; 124 125 sd0 { 126 regulator-name = "+VDD_CPU_AP"; 127 regulator-min-microvolt = <700000>; 128 regulator-max-microvolt = <1400000>; 129 regulator-min-microamp = <3500000>; 130 regulator-max-microamp = <3500000>; 131 regulator-always-on; 132 regulator-boot-on; 133 ams,ext-control = <2>; 134 }; 135 136 sd1 { 137 regulator-name = "+VDD_CORE"; 138 regulator-min-microvolt = <700000>; 139 regulator-max-microvolt = <1350000>; 140 regulator-min-microamp = <2500000>; 141 regulator-max-microamp = <2500000>; 142 regulator-always-on; 143 regulator-boot-on; 144 ams,ext-control = <1>; 145 }; 146 147 vdd_1v35_lp0: sd2 { 148 regulator-name = "+1.35V_LP0(sd2)"; 149 regulator-min-microvolt = <1350000>; 150 regulator-max-microvolt = <1350000>; 151 regulator-always-on; 152 regulator-boot-on; 153 }; 154 155 sd3 { 156 regulator-name = "+1.35V_LP0(sd3)"; 157 regulator-min-microvolt = <1350000>; 158 regulator-max-microvolt = <1350000>; 159 regulator-always-on; 160 regulator-boot-on; 161 }; 162 163 vdd_1v05_run: sd4 { 164 regulator-name = "+1.05V_RUN"; 165 regulator-min-microvolt = <1050000>; 166 regulator-max-microvolt = <1050000>; 167 }; 168 169 vddio_1v8: sd5 { 170 regulator-name = "+1.8V_VDDIO"; 171 regulator-min-microvolt = <1800000>; 172 regulator-max-microvolt = <1800000>; 173 regulator-boot-on; 174 regulator-always-on; 175 }; 176 177 vdd_gpu: sd6 { 178 regulator-name = "+VDD_GPU_AP"; 179 regulator-min-microvolt = <650000>; 180 regulator-max-microvolt = <1200000>; 181 regulator-min-microamp = <3500000>; 182 regulator-max-microamp = <3500000>; 183 regulator-boot-on; 184 regulator-always-on; 185 }; 186 187 avdd_1v05_run: ldo0 { 188 regulator-name = "+1.05V_RUN_AVDD"; 189 regulator-min-microvolt = <1050000>; 190 regulator-max-microvolt = <1050000>; 191 regulator-boot-on; 192 regulator-always-on; 193 ams,ext-control = <1>; 194 }; 195 196 ldo1 { 197 regulator-name = "+1.8V_RUN_CAM"; 198 regulator-min-microvolt = <1800000>; 199 regulator-max-microvolt = <1800000>; 200 }; 201 202 ldo2 { 203 regulator-name = "+1.2V_GEN_AVDD"; 204 regulator-min-microvolt = <1200000>; 205 regulator-max-microvolt = <1200000>; 206 regulator-boot-on; 207 regulator-always-on; 208 }; 209 210 ldo3 { 211 regulator-name = "+1.05V_LP0_VDD_RTC"; 212 regulator-min-microvolt = <1000000>; 213 regulator-max-microvolt = <1000000>; 214 regulator-boot-on; 215 regulator-always-on; 216 ams,enable-tracking; 217 }; 218 219 ldo4 { 220 regulator-name = "+2.8V_RUN_CAM"; 221 regulator-min-microvolt = <2800000>; 222 regulator-max-microvolt = <2800000>; 223 }; 224 225 ldo5 { 226 regulator-name = "+1.2V_RUN_CAM_FRONT"; 227 regulator-min-microvolt = <1200000>; 228 regulator-max-microvolt = <1200000>; 229 }; 230 231 vddio_sdmmc3: ldo6 { 232 regulator-name = "+VDDIO_SDMMC3"; 233 regulator-min-microvolt = <1800000>; 234 regulator-max-microvolt = <3300000>; 235 }; 236 237 ldo7 { 238 regulator-name = "+1.05V_RUN_CAM_REAR"; 239 regulator-min-microvolt = <1050000>; 240 regulator-max-microvolt = <1050000>; 241 }; 242 243 ldo9 { 244 regulator-name = "+3.3V_RUN_TOUCH"; 245 regulator-min-microvolt = <2800000>; 246 regulator-max-microvolt = <2800000>; 247 }; 248 249 ldo10 { 250 regulator-name = "+2.8V_RUN_CAM_AF"; 251 regulator-min-microvolt = <2800000>; 252 regulator-max-microvolt = <2800000>; 253 }; 254 255 ldo11 { 256 regulator-name = "+1.8V_RUN_VPP_FUSE"; 257 regulator-min-microvolt = <1800000>; 258 regulator-max-microvolt = <1800000>; 259 }; 260 }; 261 }; 262 }; 263 264 i2c@7000d100 { 265 status = "okay"; 266 clock-frequency = <400000>; 267 }; 268 269 spi@7000d400 { 270 status = "okay"; 271 spi-max-frequency = <25000000>; 272 }; 273 274 spi@7000da00 { 275 status = "okay"; 276 spi-max-frequency = <25000000>; 277 }; 278 279 padctl@7009f000 { 280 pinctrl-0 = <&padctl_default>; 281 pinctrl-names = "default"; 282 283 padctl_default: pinmux { 284 usb3 { 285 nvidia,lanes = "sata-0"; 286 nvidia,function = "usb3"; 287 nvidia,iddq = <0>; 288 }; 289 290 pcie { 291 nvidia,lanes = "pcie-0", "pcie-1", "pcie-2", "pcie-3", 292 "pcie-4"; 293 nvidia,function = "pcie"; 294 nvidia,iddq = <0>; 295 }; 296 297 }; 298 }; 299 300 sdhci@700b0400 { 301 status = "okay"; 302 cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; 303 power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; 304 wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_HIGH>; 305 bus-width = <4>; 306 }; 307 308 sdhci@700b0600 { 309 status = "okay"; 310 bus-width = <8>; 311 }; 312 313 usb@7d000000 { 314 status = "okay"; 315 dr_mode = "otg"; 316 nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; 317 }; 318 319 usb@7d008000 { 320 status = "okay"; 321 nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; 322 }; 323 324 clocks { 325 compatible = "simple-bus"; 326 #address-cells = <1>; 327 #size-cells = <0>; 328 329 clk32k_in: clock@0 { 330 compatible = "fixed-clock"; 331 reg = <0>; 332 #clock-cells = <0>; 333 clock-frequency = <32768>; 334 }; 335 }; 336 337 regulators { 338 compatible = "simple-bus"; 339 #address-cells = <1>; 340 #size-cells = <0>; 341 342 vdd_mux: regulator@0 { 343 compatible = "regulator-fixed"; 344 reg = <0>; 345 regulator-name = "+VDD_MUX"; 346 regulator-min-microvolt = <12000000>; 347 regulator-max-microvolt = <12000000>; 348 regulator-always-on; 349 regulator-boot-on; 350 }; 351 352 vdd_5v0_sys: regulator@1 { 353 compatible = "regulator-fixed"; 354 reg = <1>; 355 regulator-name = "+5V_SYS"; 356 regulator-min-microvolt = <5000000>; 357 regulator-max-microvolt = <5000000>; 358 regulator-always-on; 359 regulator-boot-on; 360 vin-supply = <&vdd_mux>; 361 }; 362 363 vdd_3v3_sys: regulator@2 { 364 compatible = "regulator-fixed"; 365 reg = <2>; 366 regulator-name = "+3.3V_SYS"; 367 regulator-min-microvolt = <3300000>; 368 regulator-max-microvolt = <3300000>; 369 regulator-always-on; 370 regulator-boot-on; 371 vin-supply = <&vdd_mux>; 372 }; 373 374 vdd_3v3_run: regulator@3 { 375 compatible = "regulator-fixed"; 376 reg = <3>; 377 regulator-name = "+3.3V_RUN"; 378 regulator-min-microvolt = <3300000>; 379 regulator-max-microvolt = <3300000>; 380 regulator-always-on; 381 regulator-boot-on; 382 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; 383 enable-active-high; 384 vin-supply = <&vdd_3v3_sys>; 385 }; 386 387 vdd_3v3_hdmi: regulator@4 { 388 compatible = "regulator-fixed"; 389 reg = <4>; 390 regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; 391 regulator-min-microvolt = <3300000>; 392 regulator-max-microvolt = <3300000>; 393 vin-supply = <&vdd_3v3_run>; 394 }; 395 396 vdd_usb1_vbus: regulator@7 { 397 compatible = "regulator-fixed"; 398 reg = <7>; 399 regulator-name = "+USB0_VBUS_SW"; 400 regulator-min-microvolt = <5000000>; 401 regulator-max-microvolt = <5000000>; 402 gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; 403 enable-active-high; 404 gpio-open-drain; 405 vin-supply = <&vdd_5v0_sys>; 406 }; 407 408 vdd_usb3_vbus: regulator@8 { 409 compatible = "regulator-fixed"; 410 reg = <8>; 411 regulator-name = "+5V_USB_HS"; 412 regulator-min-microvolt = <5000000>; 413 regulator-max-microvolt = <5000000>; 414 gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; 415 enable-active-high; 416 gpio-open-drain; 417 vin-supply = <&vdd_5v0_sys>; 418 }; 419 420 vdd_3v3_lp0: regulator@10 { 421 compatible = "regulator-fixed"; 422 reg = <10>; 423 regulator-name = "+3.3V_LP0"; 424 regulator-min-microvolt = <3300000>; 425 regulator-max-microvolt = <3300000>; 426 regulator-always-on; 427 regulator-boot-on; 428 gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; 429 enable-active-high; 430 vin-supply = <&vdd_3v3_sys>; 431 }; 432 433 vdd_hdmi_pll: regulator@11 { 434 compatible = "regulator-fixed"; 435 reg = <11>; 436 regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; 437 regulator-min-microvolt = <1050000>; 438 regulator-max-microvolt = <1050000>; 439 gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; 440 vin-supply = <&vdd_1v05_run>; 441 }; 442 443 vdd_5v0_hdmi: regulator@12 { 444 compatible = "regulator-fixed"; 445 reg = <12>; 446 regulator-name = "+5V_HDMI_CON"; 447 regulator-min-microvolt = <5000000>; 448 regulator-max-microvolt = <5000000>; 449 gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; 450 enable-active-high; 451 vin-supply = <&vdd_5v0_sys>; 452 }; 453 454 /* Molex power connector */ 455 vdd_5v0_sata: regulator@13 { 456 compatible = "regulator-fixed"; 457 reg = <13>; 458 regulator-name = "+5V_SATA"; 459 regulator-min-microvolt = <5000000>; 460 regulator-max-microvolt = <5000000>; 461 gpio = <&gpio TEGRA_GPIO(EE, 2) GPIO_ACTIVE_HIGH>; 462 enable-active-high; 463 vin-supply = <&vdd_5v0_sys>; 464 }; 465 466 vdd_12v0_sata: regulator@14 { 467 compatible = "regulator-fixed"; 468 reg = <14>; 469 regulator-name = "+12V_SATA"; 470 regulator-min-microvolt = <12000000>; 471 regulator-max-microvolt = <12000000>; 472 gpio = <&gpio TEGRA_GPIO(EE, 2) GPIO_ACTIVE_HIGH>; 473 enable-active-high; 474 vin-supply = <&vdd_mux>; 475 }; 476 }; 477}; 478 479&uartd { 480 status = "okay"; 481}; 482