1// SPDX-License-Identifier: GPL-2.0 2/dts-v1/; 3 4#include <dt-bindings/input/linux-event-codes.h> 5#include <dt-bindings/input/gpio-keys.h> 6 7#include "tegra186-p3310.dtsi" 8 9/ { 10 model = "NVIDIA Jetson TX2 Developer Kit"; 11 compatible = "nvidia,p2771-0000", "nvidia,tegra186"; 12 13 i2c@3160000 { 14 power-monitor@42 { 15 compatible = "ti,ina3221"; 16 reg = <0x42>; 17 #address-cells = <1>; 18 #size-cells = <0>; 19 20 channel@0 { 21 reg = <0x0>; 22 label = "VDD_MUX"; 23 shunt-resistor-micro-ohms = <20000>; 24 }; 25 26 channel@1 { 27 reg = <0x1>; 28 label = "VDD_5V0_IO_SYS"; 29 shunt-resistor-micro-ohms = <5000>; 30 }; 31 32 channel@2 { 33 reg = <0x2>; 34 label = "VDD_3V3_SYS"; 35 shunt-resistor-micro-ohms = <10000>; 36 }; 37 }; 38 39 power-monitor@43 { 40 compatible = "ti,ina3221"; 41 reg = <0x43>; 42 #address-cells = <1>; 43 #size-cells = <0>; 44 45 channel@0 { 46 reg = <0x0>; 47 label = "VDD_3V3_IO_SLP"; 48 shunt-resistor-micro-ohms = <10000>; 49 }; 50 51 channel@1 { 52 reg = <0x1>; 53 label = "VDD_1V8_IO"; 54 shunt-resistor-micro-ohms = <10000>; 55 }; 56 57 channel@2 { 58 reg = <0x2>; 59 label = "VDD_M2_IN"; 60 shunt-resistor-micro-ohms = <10000>; 61 }; 62 }; 63 64 exp1: gpio@74 { 65 compatible = "ti,tca9539"; 66 reg = <0x74>; 67 68 interrupt-parent = <&gpio>; 69 interrupts = <TEGRA186_MAIN_GPIO(Y, 0) 70 GPIO_ACTIVE_LOW>; 71 72 #gpio-cells = <2>; 73 gpio-controller; 74 75 vcc-supply = <&vdd_3v3_sys>; 76 }; 77 78 exp2: gpio@77 { 79 compatible = "ti,tca9539"; 80 reg = <0x77>; 81 82 interrupt-parent = <&gpio>; 83 interrupts = <TEGRA186_MAIN_GPIO(Y, 6) 84 GPIO_ACTIVE_LOW>; 85 86 #gpio-cells = <2>; 87 gpio-controller; 88 89 vcc-supply = <&vdd_1v8>; 90 }; 91 }; 92 93 /* SDMMC1 (SD/MMC) */ 94 mmc@3400000 { 95 status = "okay"; 96 97 vmmc-supply = <&vdd_sd>; 98 }; 99 100 hda@3510000 { 101 nvidia,model = "jetson-tx2-hda"; 102 status = "okay"; 103 }; 104 105 padctl@3520000 { 106 status = "okay"; 107 108 avdd-pll-erefeut-supply = <&vdd_1v8_pll>; 109 avdd-usb-supply = <&vdd_3v3_sys>; 110 vclamp-usb-supply = <&vdd_1v8>; 111 vddio-hsic-supply = <&gnd>; 112 113 pads { 114 usb2 { 115 status = "okay"; 116 117 lanes { 118 micro_b: usb2-0 { 119 nvidia,function = "xusb"; 120 status = "okay"; 121 }; 122 123 usb2-1 { 124 nvidia,function = "xusb"; 125 status = "okay"; 126 }; 127 128 usb2-2 { 129 nvidia,function = "xusb"; 130 status = "okay"; 131 }; 132 }; 133 }; 134 135 usb3 { 136 status = "okay"; 137 138 lanes { 139 usb3-0 { 140 nvidia,function = "xusb"; 141 status = "okay"; 142 }; 143 144 usb3-1 { 145 nvidia,function = "xusb"; 146 status = "okay"; 147 }; 148 149 usb3-2 { 150 nvidia,function = "xusb"; 151 status = "okay"; 152 }; 153 }; 154 }; 155 }; 156 157 ports { 158 usb2-0 { 159 status = "okay"; 160 mode = "otg"; 161 vbus-supply = <&vdd_usb0>; 162 usb-role-switch; 163 164 connector { 165 compatible = "gpio-usb-b-connector", 166 "usb-b-connector"; 167 label = "micro-USB"; 168 type = "micro"; 169 vbus-gpios = <&gpio 170 TEGRA186_MAIN_GPIO(X, 7) 171 GPIO_ACTIVE_LOW>; 172 id-gpios = <&pmic 0 GPIO_ACTIVE_HIGH>; 173 }; 174 }; 175 176 usb2-1 { 177 status = "okay"; 178 mode = "host"; 179 180 vbus-supply = <&vdd_usb1>; 181 }; 182 183 usb3-0 { 184 nvidia,usb2-companion = <1>; 185 vbus-supply = <&vdd_usb1>; 186 status = "okay"; 187 }; 188 }; 189 }; 190 191 usb@3530000 { 192 status = "okay"; 193 194 phys = <&{/padctl@3520000/pads/usb2/lanes/usb2-0}>, 195 <&{/padctl@3520000/pads/usb2/lanes/usb2-1}>, 196 <&{/padctl@3520000/pads/usb3/lanes/usb3-0}>; 197 phy-names = "usb2-0", "usb2-1", "usb3-0"; 198 }; 199 200 usb@3550000 { 201 status = "okay"; 202 203 phys = <µ_b>; 204 phy-names = "usb2-0"; 205 }; 206 207 i2c@c250000 { 208 /* carrier board ID EEPROM */ 209 eeprom@57 { 210 compatible = "atmel,24c02"; 211 reg = <0x57>; 212 213 label = "system"; 214 vcc-supply = <&vdd_1v8>; 215 address-width = <8>; 216 pagesize = <8>; 217 size = <256>; 218 read-only; 219 }; 220 }; 221 222 pcie@10003000 { 223 status = "okay"; 224 225 dvdd-pex-supply = <&vdd_pex>; 226 hvdd-pex-pll-supply = <&vdd_1v8>; 227 hvdd-pex-supply = <&vdd_1v8>; 228 vddio-pexctl-aud-supply = <&vdd_1v8>; 229 230 pci@1,0 { 231 nvidia,num-lanes = <4>; 232 status = "okay"; 233 }; 234 235 pci@2,0 { 236 nvidia,num-lanes = <0>; 237 status = "disabled"; 238 }; 239 240 pci@3,0 { 241 nvidia,num-lanes = <1>; 242 status = "disabled"; 243 }; 244 }; 245 246 host1x@13e00000 { 247 status = "okay"; 248 249 dpaux@15040000 { 250 status = "okay"; 251 }; 252 253 display-hub@15200000 { 254 status = "okay"; 255 }; 256 257 dsi@15300000 { 258 status = "disabled"; 259 }; 260 261 /* DP on E3320 */ 262 sor@15540000 { 263 status = "okay"; 264 265 avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>; 266 vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>; 267 268 nvidia,dpaux = <&dpaux>; 269 }; 270 271 sor@15580000 { 272 status = "okay"; 273 274 avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>; 275 vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>; 276 hdmi-supply = <&vdd_hdmi>; 277 278 nvidia,ddc-i2c-bus = <&ddc>; 279 nvidia,hpd-gpio = <&gpio TEGRA186_MAIN_GPIO(P, 1) 280 GPIO_ACTIVE_LOW>; 281 }; 282 283 dpaux@155c0000 { 284 status = "okay"; 285 }; 286 }; 287 288 gpio-keys { 289 compatible = "gpio-keys"; 290 291 power { 292 label = "Power"; 293 gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 0) 294 GPIO_ACTIVE_LOW>; 295 linux,input-type = <EV_KEY>; 296 linux,code = <KEY_POWER>; 297 debounce-interval = <10>; 298 wakeup-event-action = <EV_ACT_ASSERTED>; 299 wakeup-source; 300 }; 301 302 volume-up { 303 label = "Volume Up"; 304 gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 1) 305 GPIO_ACTIVE_LOW>; 306 linux,input-type = <EV_KEY>; 307 linux,code = <KEY_VOLUMEUP>; 308 debounce-interval = <10>; 309 }; 310 311 volume-down { 312 label = "Volume Down"; 313 gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 2) 314 GPIO_ACTIVE_LOW>; 315 linux,input-type = <EV_KEY>; 316 linux,code = <KEY_VOLUMEDOWN>; 317 debounce-interval = <10>; 318 }; 319 }; 320 321 vdd_sd: regulator@100 { 322 compatible = "regulator-fixed"; 323 regulator-name = "SD_CARD_SW_PWR"; 324 regulator-min-microvolt = <3300000>; 325 regulator-max-microvolt = <3300000>; 326 327 gpio = <&gpio TEGRA186_MAIN_GPIO(P, 6) GPIO_ACTIVE_HIGH>; 328 enable-active-high; 329 330 vin-supply = <&vdd_3v3_sys>; 331 }; 332 333 vdd_hdmi: regulator@101 { 334 compatible = "regulator-fixed"; 335 regulator-name = "VDD_HDMI_5V0"; 336 regulator-min-microvolt = <5000000>; 337 regulator-max-microvolt = <5000000>; 338 339 gpio = <&exp1 14 GPIO_ACTIVE_HIGH>; 340 enable-active-high; 341 342 vin-supply = <&vdd_5v0_sys>; 343 }; 344 345 vdd_usb0: regulator@102 { 346 compatible = "regulator-fixed"; 347 regulator-name = "VDD_USB0"; 348 regulator-min-microvolt = <5000000>; 349 regulator-max-microvolt = <5000000>; 350 351 gpio = <&gpio TEGRA186_MAIN_GPIO(L, 4) GPIO_ACTIVE_HIGH>; 352 enable-active-high; 353 354 vin-supply = <&vdd_5v0_sys>; 355 }; 356 357 vdd_usb1: regulator@103 { 358 compatible = "regulator-fixed"; 359 regulator-name = "VDD_USB1"; 360 regulator-min-microvolt = <5000000>; 361 regulator-max-microvolt = <5000000>; 362 363 gpio = <&gpio TEGRA186_MAIN_GPIO(L, 5) GPIO_ACTIVE_HIGH>; 364 enable-active-high; 365 366 vin-supply = <&vdd_5v0_sys>; 367 }; 368}; 369