Home | History | Annotate | Download | only in dts
      1 #include "tegra20.dtsi"
      2 
      3 / {
      4 	model = "Avionic Design Tamonten SOM";
      5 	compatible = "ad,tamonten", "nvidia,tegra20";
      6 
      7 	memory {
      8 		reg = <0x00000000 0x20000000>;
      9 	};
     10 
     11 	host1x@50000000 {
     12 		hdmi {
     13 			vdd-supply = <&hdmi_vdd_reg>;
     14 			pll-supply = <&hdmi_pll_reg>;
     15 
     16 			nvidia,ddc-i2c-bus = <&hdmi_ddc>;
     17 			nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7)
     18 				GPIO_ACTIVE_HIGH>;
     19 		};
     20 	};
     21 
     22 	pinmux {
     23 		pinctrl-names = "default";
     24 		pinctrl-0 = <&state_default>;
     25 
     26 		state_default: pinmux {
     27 			ata {
     28 				nvidia,pins = "ata";
     29 				nvidia,function = "ide";
     30 			};
     31 			atb {
     32 				nvidia,pins = "atb", "gma", "gme";
     33 				nvidia,function = "sdio4";
     34 			};
     35 			atc {
     36 				nvidia,pins = "atc";
     37 				nvidia,function = "nand";
     38 			};
     39 			atd {
     40 				nvidia,pins = "atd", "ate", "gmb", "gmd", "gpu",
     41 					"spia", "spib", "spic";
     42 				nvidia,function = "gmi";
     43 			};
     44 			cdev1 {
     45 				nvidia,pins = "cdev1";
     46 				nvidia,function = "plla_out";
     47 			};
     48 			cdev2 {
     49 				nvidia,pins = "cdev2";
     50 				nvidia,function = "pllp_out4";
     51 			};
     52 			crtp {
     53 				nvidia,pins = "crtp";
     54 				nvidia,function = "crt";
     55 			};
     56 			csus {
     57 				nvidia,pins = "csus";
     58 				nvidia,function = "vi_sensor_clk";
     59 			};
     60 			dap1 {
     61 				nvidia,pins = "dap1";
     62 				nvidia,function = "dap1";
     63 			};
     64 			dap2 {
     65 				nvidia,pins = "dap2";
     66 				nvidia,function = "dap2";
     67 			};
     68 			dap3 {
     69 				nvidia,pins = "dap3";
     70 				nvidia,function = "dap3";
     71 			};
     72 			dap4 {
     73 				nvidia,pins = "dap4";
     74 				nvidia,function = "dap4";
     75 			};
     76 			dta {
     77 				nvidia,pins = "dta", "dtd";
     78 				nvidia,function = "sdio2";
     79 			};
     80 			dtb {
     81 				nvidia,pins = "dtb", "dtc", "dte";
     82 				nvidia,function = "rsvd1";
     83 			};
     84 			dtf {
     85 				nvidia,pins = "dtf";
     86 				nvidia,function = "i2c3";
     87 			};
     88 			gmc {
     89 				nvidia,pins = "gmc";
     90 				nvidia,function = "uartd";
     91 			};
     92 			gpu7 {
     93 				nvidia,pins = "gpu7";
     94 				nvidia,function = "rtck";
     95 			};
     96 			gpv {
     97 				nvidia,pins = "gpv", "slxa", "slxk";
     98 				nvidia,function = "pcie";
     99 			};
    100 			hdint {
    101 				nvidia,pins = "hdint";
    102 				nvidia,function = "hdmi";
    103 			};
    104 			i2cp {
    105 				nvidia,pins = "i2cp";
    106 				nvidia,function = "i2cp";
    107 			};
    108 			irrx {
    109 				nvidia,pins = "irrx", "irtx";
    110 				nvidia,function = "uarta";
    111 			};
    112 			kbca {
    113 				nvidia,pins = "kbca", "kbcb", "kbcc", "kbcd",
    114 					"kbce", "kbcf";
    115 				nvidia,function = "kbc";
    116 			};
    117 			lcsn {
    118 				nvidia,pins = "lcsn", "ld0", "ld1", "ld2",
    119 					"ld3", "ld4", "ld5", "ld6", "ld7",
    120 					"ld8", "ld9", "ld10", "ld11", "ld12",
    121 					"ld13", "ld14", "ld15", "ld16", "ld17",
    122 					"ldc", "ldi", "lhp0", "lhp1", "lhp2",
    123 					"lhs", "lm0", "lm1", "lpp", "lpw0",
    124 					"lpw1", "lpw2", "lsc0", "lsc1", "lsck",
    125 					"lsda", "lsdi", "lspi", "lvp0", "lvp1",
    126 					"lvs";
    127 				nvidia,function = "displaya";
    128 			};
    129 			owc {
    130 				nvidia,pins = "owc", "spdi", "spdo", "uac";
    131 				nvidia,function = "rsvd2";
    132 			};
    133 			pmc {
    134 				nvidia,pins = "pmc";
    135 				nvidia,function = "pwr_on";
    136 			};
    137 			rm {
    138 				nvidia,pins = "rm";
    139 				nvidia,function = "i2c1";
    140 			};
    141 			sdb {
    142 				nvidia,pins = "sdb", "sdc", "sdd";
    143 				nvidia,function = "pwm";
    144 			};
    145 			sdio1 {
    146 				nvidia,pins = "sdio1";
    147 				nvidia,function = "sdio1";
    148 			};
    149 			slxc {
    150 				nvidia,pins = "slxc", "slxd";
    151 				nvidia,function = "spdif";
    152 			};
    153 			spid {
    154 				nvidia,pins = "spid", "spie", "spif";
    155 				nvidia,function = "spi1";
    156 			};
    157 			spig {
    158 				nvidia,pins = "spig", "spih";
    159 				nvidia,function = "spi2_alt";
    160 			};
    161 			uaa {
    162 				nvidia,pins = "uaa", "uab", "uda";
    163 				nvidia,function = "ulpi";
    164 			};
    165 			uad {
    166 				nvidia,pins = "uad";
    167 				nvidia,function = "irda";
    168 			};
    169 			uca {
    170 				nvidia,pins = "uca", "ucb";
    171 				nvidia,function = "uartc";
    172 			};
    173 			conf_ata {
    174 				nvidia,pins = "ata", "atb", "atc", "atd", "ate",
    175 					"cdev1", "cdev2", "dap1", "dtb", "gma",
    176 					"gmb", "gmc", "gmd", "gme", "gpu7",
    177 					"gpv", "i2cp", "pta", "rm", "slxa",
    178 					"slxk", "spia", "spib", "uac";
    179 				nvidia,pull = <0>;
    180 				nvidia,tristate = <0>;
    181 			};
    182 			conf_ck32 {
    183 				nvidia,pins = "ck32", "ddrc", "pmca", "pmcb",
    184 					"pmcc", "pmcd", "pmce", "xm2c", "xm2d";
    185 				nvidia,pull = <0>;
    186 			};
    187 			conf_csus {
    188 				nvidia,pins = "csus", "spid", "spif";
    189 				nvidia,pull = <1>;
    190 				nvidia,tristate = <1>;
    191 			};
    192 			conf_crtp {
    193 				nvidia,pins = "crtp", "dap2", "dap3", "dap4",
    194 					"dtc", "dte", "dtf", "gpu", "sdio1",
    195 					"slxc", "slxd", "spdi", "spdo", "spig",
    196 					"uda";
    197 				nvidia,pull = <0>;
    198 				nvidia,tristate = <1>;
    199 			};
    200 			conf_ddc {
    201 				nvidia,pins = "ddc", "dta", "dtd", "kbca",
    202 					"kbcb", "kbcc", "kbcd", "kbce", "kbcf",
    203 					"sdc";
    204 				nvidia,pull = <2>;
    205 				nvidia,tristate = <0>;
    206 			};
    207 			conf_hdint {
    208 				nvidia,pins = "hdint", "lcsn", "ldc", "lm1",
    209 					"lpw1", "lsc1", "lsck", "lsda", "lsdi",
    210 					"lvp0", "owc", "sdb";
    211 				nvidia,tristate = <1>;
    212 			};
    213 			conf_irrx {
    214 				nvidia,pins = "irrx", "irtx", "sdd", "spic",
    215 					"spie", "spih", "uaa", "uab", "uad",
    216 					"uca", "ucb";
    217 				nvidia,pull = <2>;
    218 				nvidia,tristate = <1>;
    219 			};
    220 			conf_lc {
    221 				nvidia,pins = "lc", "ls";
    222 				nvidia,pull = <2>;
    223 			};
    224 			conf_ld0 {
    225 				nvidia,pins = "ld0", "ld1", "ld2", "ld3", "ld4",
    226 					"ld5", "ld6", "ld7", "ld8", "ld9",
    227 					"ld10", "ld11", "ld12", "ld13", "ld14",
    228 					"ld15", "ld16", "ld17", "ldi", "lhp0",
    229 					"lhp1", "lhp2", "lhs", "lm0", "lpp",
    230 					"lpw0", "lpw2", "lsc0", "lspi", "lvp1",
    231 					"lvs", "pmc";
    232 				nvidia,tristate = <0>;
    233 			};
    234 			conf_ld17_0 {
    235 				nvidia,pins = "ld17_0", "ld19_18", "ld21_20",
    236 					"ld23_22";
    237 				nvidia,pull = <1>;
    238 			};
    239 		};
    240 
    241 		state_i2cmux_ddc: pinmux_i2cmux_ddc {
    242 			ddc {
    243 				nvidia,pins = "ddc";
    244 				nvidia,function = "i2c2";
    245 			};
    246 			pta {
    247 				nvidia,pins = "pta";
    248 				nvidia,function = "rsvd4";
    249 			};
    250 		};
    251 
    252 		state_i2cmux_pta: pinmux_i2cmux_pta {
    253 			ddc {
    254 				nvidia,pins = "ddc";
    255 				nvidia,function = "rsvd4";
    256 			};
    257 			pta {
    258 				nvidia,pins = "pta";
    259 				nvidia,function = "i2c2";
    260 			};
    261 		};
    262 
    263 		state_i2cmux_idle: pinmux_i2cmux_idle {
    264 			ddc {
    265 				nvidia,pins = "ddc";
    266 				nvidia,function = "rsvd4";
    267 			};
    268 			pta {
    269 				nvidia,pins = "pta";
    270 				nvidia,function = "rsvd4";
    271 			};
    272 		};
    273 	};
    274 
    275 	i2s@70002800 {
    276 		status = "okay";
    277 	};
    278 
    279 	serial@70006300 {
    280 		status = "okay";
    281 	};
    282 
    283 	nand-controller@70008000 {
    284 		nvidia,wp-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
    285 		nvidia,width = <8>;
    286 		nvidia,timing = <26 100 20 80 20 10 12 10 70>;
    287 
    288 		nand@0 {
    289 			reg = <0>;
    290 			compatible = "hynix,hy27uf4g2b", "nand-flash";
    291 		};
    292 	};
    293 
    294 	i2c@7000c000 {
    295 		clock-frequency = <400000>;
    296 		status = "okay";
    297 	};
    298 
    299 	i2c@7000c400 {
    300 		clock-frequency = <100000>;
    301 		status = "okay";
    302 	};
    303 
    304 	i2cmux {
    305 		compatible = "i2c-mux-pinctrl";
    306 		#address-cells = <1>;
    307 		#size-cells = <0>;
    308 
    309 		i2c-parent = <&{/i2c@7000c400}>;
    310 
    311 		pinctrl-names = "ddc", "pta", "idle";
    312 		pinctrl-0 = <&state_i2cmux_ddc>;
    313 		pinctrl-1 = <&state_i2cmux_pta>;
    314 		pinctrl-2 = <&state_i2cmux_idle>;
    315 
    316 		hdmi_ddc: i2c@0 {
    317 			reg = <0>;
    318 			#address-cells = <1>;
    319 			#size-cells = <0>;
    320 		};
    321 
    322 		i2c@1 {
    323 			reg = <1>;
    324 			#address-cells = <1>;
    325 			#size-cells = <0>;
    326 		};
    327 	};
    328 
    329 	i2c@7000d000 {
    330 		clock-frequency = <400000>;
    331 		status = "okay";
    332 
    333 		pmic: tps6586x@34 {
    334 			compatible = "ti,tps6586x";
    335 			reg = <0x34>;
    336 			interrupts = <0 86 0x4>;
    337 
    338 			ti,system-power-controller;
    339 
    340 			#gpio-cells = <2>;
    341 			gpio-controller;
    342 
    343 			sys-supply = <&vdd_5v0_reg>;
    344 			vin-sm0-supply = <&sys_reg>;
    345 			vin-sm1-supply = <&sys_reg>;
    346 			vin-sm2-supply = <&sys_reg>;
    347 			vinldo01-supply = <&sm2_reg>;
    348 			vinldo23-supply = <&sm2_reg>;
    349 			vinldo4-supply = <&sm2_reg>;
    350 			vinldo678-supply = <&sm2_reg>;
    351 			vinldo9-supply = <&sm2_reg>;
    352 
    353 			regulators {
    354 				sys_reg: sys {
    355 					regulator-name = "vdd_sys";
    356 					regulator-always-on;
    357 				};
    358 
    359 				sm0 {
    360 					regulator-name = "vdd_sys_sm0,vdd_core";
    361 					regulator-min-microvolt = <1200000>;
    362 					regulator-max-microvolt = <1200000>;
    363 					regulator-always-on;
    364 				};
    365 
    366 				sm1 {
    367 					regulator-name = "vdd_sys_sm1,vdd_cpu";
    368 					regulator-min-microvolt = <1000000>;
    369 					regulator-max-microvolt = <1000000>;
    370 					regulator-always-on;
    371 				};
    372 
    373 				sm2_reg: sm2 {
    374 					regulator-name = "vdd_sys_sm2,vin_ldo*";
    375 					regulator-min-microvolt = <3700000>;
    376 					regulator-max-microvolt = <3700000>;
    377 					regulator-always-on;
    378 				};
    379 
    380 				ldo0 {
    381 					regulator-name = "vdd_ldo0,vddio_pex_clk";
    382 					regulator-min-microvolt = <3300000>;
    383 					regulator-max-microvolt = <3300000>;
    384 				};
    385 
    386 				ldo1 {
    387 					regulator-name = "vdd_ldo1,avdd_pll*";
    388 					regulator-min-microvolt = <1100000>;
    389 					regulator-max-microvolt = <1100000>;
    390 					regulator-always-on;
    391 				};
    392 
    393 				ldo2 {
    394 					regulator-name = "vdd_ldo2,vdd_rtc";
    395 					regulator-min-microvolt = <1200000>;
    396 					regulator-max-microvolt = <1200000>;
    397 				};
    398 
    399 				ldo3 {
    400 					regulator-name = "vdd_ldo3,avdd_usb*";
    401 					regulator-min-microvolt = <3300000>;
    402 					regulator-max-microvolt = <3300000>;
    403 					regulator-always-on;
    404 				};
    405 
    406 				ldo4 {
    407 					regulator-name = "vdd_ldo4,avdd_osc,vddio_sys";
    408 					regulator-min-microvolt = <1800000>;
    409 					regulator-max-microvolt = <1800000>;
    410 					regulator-always-on;
    411 				};
    412 
    413 				ldo5 {
    414 					regulator-name = "vdd_ldo5,vcore_mmc";
    415 					regulator-min-microvolt = <2850000>;
    416 					regulator-max-microvolt = <2850000>;
    417 				};
    418 
    419 				ldo6 {
    420 					regulator-name = "vdd_ldo6,avdd_vdac";
    421 					/*
    422 					 * According to the Tegra 2 Automotive
    423 					 * DataSheet, a typical value for this
    424 					 * would be 2.8V, but the PMIC only
    425 					 * supports 2.85V.
    426 					 */
    427 					regulator-min-microvolt = <2850000>;
    428 					regulator-max-microvolt = <2850000>;
    429 				};
    430 
    431 				hdmi_vdd_reg: ldo7 {
    432 					regulator-name = "vdd_ldo7,avdd_hdmi";
    433 					regulator-min-microvolt = <3300000>;
    434 					regulator-max-microvolt = <3300000>;
    435 				};
    436 
    437 				hdmi_pll_reg: ldo8 {
    438 					regulator-name = "vdd_ldo8,avdd_hdmi_pll";
    439 					regulator-min-microvolt = <1800000>;
    440 					regulator-max-microvolt = <1800000>;
    441 				};
    442 
    443 				ldo9 {
    444 					regulator-name = "vdd_ldo9,vdd_ddr_rx,avdd_cam";
    445 					/*
    446 					 * According to the Tegra 2 Automotive
    447 					 * DataSheet, a typical value for this
    448 					 * would be 2.8V, but the PMIC only
    449 					 * supports 2.85V.
    450 					 */
    451 					regulator-min-microvolt = <2850000>;
    452 					regulator-max-microvolt = <2850000>;
    453 					regulator-always-on;
    454 				};
    455 
    456 				ldo_rtc {
    457 					regulator-name = "vdd_rtc_out";
    458 					regulator-min-microvolt = <3300000>;
    459 					regulator-max-microvolt = <3300000>;
    460 					regulator-always-on;
    461 				};
    462 			};
    463 		};
    464 
    465 		temperature-sensor@4c {
    466 			compatible = "onnn,nct1008";
    467 			reg = <0x4c>;
    468 		};
    469 	};
    470 
    471 	pmc {
    472 		nvidia,invert-interrupt;
    473 	};
    474 
    475 	usb@c5008000 {
    476 		status = "okay";
    477 	};
    478 
    479 	sdhci@c8000600 {
    480 		cd-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_LOW>;
    481 		wp-gpios = <&gpio TEGRA_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
    482 		bus-width = <4>;
    483 		status = "okay";
    484 	};
    485 
    486 	clocks {
    487 		compatible = "simple-bus";
    488 		#address-cells = <1>;
    489 		#size-cells = <0>;
    490 
    491 		clk32k_in: clock@0 {
    492 			compatible = "fixed-clock";
    493 			reg=<0>;
    494 			#clock-cells = <0>;
    495 			clock-frequency = <32768>;
    496 		};
    497 	};
    498 
    499 	regulators {
    500 		compatible = "simple-bus";
    501 
    502 		#address-cells = <1>;
    503 		#size-cells = <0>;
    504 
    505 		vdd_5v0_reg: regulator@0 {
    506 			compatible = "regulator-fixed";
    507 			reg = <0>;
    508 			regulator-name = "vdd_5v0";
    509 			regulator-min-microvolt = <5000000>;
    510 			regulator-max-microvolt = <5000000>;
    511 			regulator-always-on;
    512 		};
    513 	};
    514 };
    515