Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'tegra-for-6.13-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt

arm64: tegra: Device tree changes for v6.13-rc1

Changes in this batch add an device tree file for the industrial module
version of the Jetson AGX Orin Developer Kit. There are also some fixes
for the Jetson TX1 and new features such as touchscreen, temperature
sensor and USB-C extcon support for Smaug (a.k.a. Pixel C).

* tag 'tegra-for-6.13-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
arm64: tegra: smaug: Declare cros-ec extcon
arm64: tegra: Add SDMMC sdr104-offsets for Tegra X1
arm64: dts: nvidia: tegra210-smaug: Add TMP451 temperature sensor node
arm64: dts: nvidia: tegra210-smaug: Add touchscreen node
arm64: tegra: p2180: Add mandatory compatible for WiFi node
arm64: tegra: Create SKU8 AGX Orin board file

Link: https://lore.kernel.org/r/20241025150555.2558582-3-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+591 -543
+1
arch/arm64/boot/dts/nvidia/Makefile
··· 27 27 dtb-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra194-p3509-0000+p3668-0001.dtb 28 28 dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-sim-vdk.dtb 29 29 dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3737-0000+p3701-0000.dtb 30 + dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3737-0000+p3701-0008.dtb 30 31 dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3740-0002+p3701-0008.dtb 31 32 dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3768-0000+p3767-0000.dtb 32 33 dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3768-0000+p3767-0005.dtb
+1 -1
arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
··· 351 351 #size-cells = <0>; 352 352 353 353 wifi@1 { 354 - compatible = "brcm,bcm4354-fmac"; 354 + compatible = "brcm,bcm4354-fmac", "brcm,bcm4329-fmac"; 355 355 reg = <1>; 356 356 interrupt-parent = <&gpio>; 357 357 interrupts = <TEGRA_GPIO(H, 2) IRQ_TYPE_LEVEL_HIGH>;
+27
arch/arm64/boot/dts/nvidia/tegra210-smaug.dts
··· 1362 1362 }; 1363 1363 }; 1364 1364 1365 + i2c@7000c000 { 1366 + status = "okay"; 1367 + clock-frequency = <1000000>; 1368 + 1369 + touchscreen: i2c-hid-dev@20 { 1370 + compatible = "hid-over-i2c"; 1371 + reg = <0x20>; 1372 + hid-descr-addr = <0x0020>; 1373 + interrupt-parent = <&gpio>; 1374 + interrupts = <TEGRA_GPIO(X, 1) IRQ_TYPE_EDGE_FALLING>; 1375 + }; 1376 + }; 1377 + 1365 1378 i2c@7000c400 { 1366 1379 status = "okay"; 1367 1380 clock-frequency = <1000000>; ··· 1397 1384 compatible = "ti,bq27742"; 1398 1385 reg = <0x55>; 1399 1386 }; 1387 + }; 1388 + 1389 + usbc_extcon0: extcon0 { 1390 + compatible = "google,extcon-usbc-cros-ec"; 1391 + google,usb-port-id = <0>; 1400 1392 }; 1401 1393 }; 1402 1394 }; ··· 1736 1718 gpio-controller; 1737 1719 #gpio-cells = <2>; 1738 1720 status = "okay"; 1721 + }; 1722 + 1723 + tmp451: temperature-sensor@4c { 1724 + compatible = "ti,tmp451"; 1725 + reg = <0x4c>; 1726 + interrupt-parent = <&gpio>; 1727 + interrupts = <TEGRA_GPIO(X, 4) IRQ_TYPE_LEVEL_LOW>; 1728 + vcc-supply = <&pp1800>; 1729 + #thermal-sensor-cells = <1>; 1739 1730 }; 1740 1731 }; 1741 1732
+2
arch/arm64/boot/dts/nvidia/tegra210.dtsi
··· 1218 1218 nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>; 1219 1219 nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>; 1220 1220 nvidia,pad-autocal-pull-down-offset-1v8 = <0x7b>; 1221 + nvidia,pad-autocal-pull-up-offset-sdr104 = <0x0>; 1222 + nvidia,pad-autocal-pull-down-offset-sdr104 = <0x0>; 1221 1223 nvidia,default-tap = <0x2>; 1222 1224 nvidia,default-trim = <0x4>; 1223 1225 assigned-clocks = <&tegra_car TEGRA210_CLK_SDMMC4>,
+2 -542
arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
··· 1 1 // SPDX-License-Identifier: GPL-2.0 2 2 /dts-v1/; 3 3 4 - #include <dt-bindings/input/linux-event-codes.h> 5 - #include <dt-bindings/input/gpio-keys.h> 6 - #include <dt-bindings/sound/rt5640.h> 7 - 4 + // Module files must be included first 8 5 #include "tegra234-p3701-0000.dtsi" 6 + #include "tegra234-p3737-0000+p3701.dtsi" 9 7 10 8 / { 11 9 model = "NVIDIA Jetson AGX Orin Developer Kit"; 12 10 compatible = "nvidia,p3737-0000+p3701-0000", "nvidia,p3701-0000", "nvidia,tegra234"; 13 - 14 - aliases { 15 - serial0 = &tcu; 16 - serial1 = &uarta; 17 - }; 18 - 19 - chosen { 20 - bootargs = "console=ttyTCU0,115200n8"; 21 - stdout-path = "serial0:115200n8"; 22 - }; 23 - 24 - bus@0 { 25 - aconnect@2900000 { 26 - ahub@2900800 { 27 - i2s@2901000 { 28 - ports { 29 - port@1 { 30 - endpoint { 31 - dai-format = "i2s"; 32 - remote-endpoint = <&rt5640_ep>; 33 - }; 34 - }; 35 - }; 36 - }; 37 - }; 38 - }; 39 - 40 - serial@3100000 { 41 - compatible = "nvidia,tegra194-hsuart"; 42 - reset-names = "serial"; 43 - status = "okay"; 44 - }; 45 - 46 - i2c@3160000 { 47 - status = "okay"; 48 - 49 - eeprom@56 { 50 - compatible = "atmel,24c02"; 51 - reg = <0x56>; 52 - 53 - label = "system"; 54 - vcc-supply = <&vdd_1v8_sys>; 55 - address-width = <8>; 56 - pagesize = <8>; 57 - size = <256>; 58 - read-only; 59 - }; 60 - }; 61 - 62 - serial@31d0000 { 63 - current-speed = <115200>; 64 - status = "okay"; 65 - }; 66 - 67 - i2c@31e0000 { 68 - status = "okay"; 69 - 70 - audio-codec@1c { 71 - compatible = "realtek,rt5640"; 72 - reg = <0x1c>; 73 - interrupt-parent = <&gpio>; 74 - interrupts = <TEGRA234_MAIN_GPIO(AC, 5) GPIO_ACTIVE_HIGH>; 75 - clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>; 76 - clock-names = "mclk"; 77 - realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>; 78 - realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>; 79 - realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>; 80 - sound-name-prefix = "CVB-RT"; 81 - 82 - port { 83 - rt5640_ep: endpoint { 84 - remote-endpoint = <&i2s1_dap>; 85 - mclk-fs = <256>; 86 - }; 87 - }; 88 - }; 89 - }; 90 - 91 - pwm@3280000 { 92 - status = "okay"; 93 - }; 94 - 95 - pwm@32a0000 { 96 - assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>; 97 - assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>; 98 - status = "okay"; 99 - }; 100 - 101 - pwm@32c0000 { 102 - status = "okay"; 103 - }; 104 - 105 - pwm@32f0000 { 106 - status = "okay"; 107 - }; 108 - 109 - mmc@3400000 { 110 - status = "okay"; 111 - bus-width = <4>; 112 - cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>; 113 - disable-wp; 114 - }; 115 - 116 - hda@3510000 { 117 - nvidia,model = "NVIDIA Jetson AGX Orin HDA"; 118 - status = "okay"; 119 - }; 120 - 121 - padctl@3520000 { 122 - status = "okay"; 123 - 124 - pads { 125 - usb2 { 126 - lanes { 127 - usb2-0 { 128 - status = "okay"; 129 - }; 130 - 131 - usb2-1 { 132 - status = "okay"; 133 - }; 134 - 135 - usb2-2 { 136 - status = "okay"; 137 - }; 138 - 139 - usb2-3 { 140 - status = "okay"; 141 - }; 142 - }; 143 - }; 144 - 145 - usb3 { 146 - lanes { 147 - usb3-0 { 148 - status = "okay"; 149 - }; 150 - 151 - usb3-1 { 152 - status = "okay"; 153 - }; 154 - 155 - usb3-2 { 156 - status = "okay"; 157 - }; 158 - }; 159 - }; 160 - }; 161 - 162 - ports { 163 - usb2-0 { 164 - mode = "otg"; 165 - usb-role-switch; 166 - status = "okay"; 167 - 168 - port { 169 - hs_typec_p1: endpoint { 170 - remote-endpoint = <&hs_ucsi_ccg_p1>; 171 - }; 172 - }; 173 - }; 174 - 175 - usb2-1 { 176 - mode = "host"; 177 - status = "okay"; 178 - 179 - port { 180 - hs_typec_p0: endpoint { 181 - remote-endpoint = <&hs_ucsi_ccg_p0>; 182 - }; 183 - }; 184 - }; 185 - 186 - usb2-2 { 187 - mode = "host"; 188 - status = "okay"; 189 - }; 190 - 191 - usb2-3 { 192 - mode = "host"; 193 - status = "okay"; 194 - }; 195 - 196 - usb3-0 { 197 - nvidia,usb2-companion = <1>; 198 - status = "okay"; 199 - 200 - port { 201 - ss_typec_p0: endpoint { 202 - remote-endpoint = <&ss_ucsi_ccg_p0>; 203 - }; 204 - }; 205 - }; 206 - 207 - usb3-1 { 208 - nvidia,usb2-companion = <0>; 209 - status = "okay"; 210 - 211 - port { 212 - ss_typec_p1: endpoint { 213 - remote-endpoint = <&ss_ucsi_ccg_p1>; 214 - }; 215 - }; 216 - }; 217 - 218 - usb3-2 { 219 - nvidia,usb2-companion = <3>; 220 - status = "okay"; 221 - }; 222 - }; 223 - }; 224 - 225 - usb@3550000 { 226 - status = "okay"; 227 - 228 - phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 229 - <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>; 230 - phy-names = "usb2-0", "usb3-0"; 231 - }; 232 - 233 - usb@3610000 { 234 - status = "okay"; 235 - 236 - phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 237 - <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>, 238 - <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>, 239 - <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>, 240 - <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>, 241 - <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>, 242 - <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>; 243 - phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3", 244 - "usb3-0", "usb3-1", "usb3-2"; 245 - }; 246 - 247 - ethernet@6800000 { 248 - status = "okay"; 249 - 250 - phy-handle = <&mgbe0_phy>; 251 - phy-mode = "10gbase-r"; 252 - 253 - mdio { 254 - #address-cells = <1>; 255 - #size-cells = <0>; 256 - 257 - mgbe0_phy: phy@0 { 258 - compatible = "ethernet-phy-ieee802.3-c45"; 259 - reg = <0x0>; 260 - 261 - #phy-cells = <0>; 262 - }; 263 - }; 264 - }; 265 - 266 - i2c@c240000 { 267 - status = "okay"; 268 - 269 - typec@8 { 270 - compatible = "cypress,cypd4226"; 271 - reg = <0x08>; 272 - interrupt-parent = <&gpio>; 273 - interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>; 274 - firmware-name = "nvidia,jetson-agx-xavier"; 275 - status = "okay"; 276 - 277 - #address-cells = <1>; 278 - #size-cells = <0>; 279 - 280 - ccg_typec_con0: connector@0 { 281 - compatible = "usb-c-connector"; 282 - reg = <0>; 283 - label = "USB-C"; 284 - data-role = "host"; 285 - 286 - ports { 287 - #address-cells = <1>; 288 - #size-cells = <0>; 289 - 290 - port@0 { 291 - reg = <0>; 292 - 293 - hs_ucsi_ccg_p0: endpoint { 294 - remote-endpoint = <&hs_typec_p0>; 295 - }; 296 - }; 297 - 298 - port@1 { 299 - reg = <1>; 300 - 301 - ss_ucsi_ccg_p0: endpoint { 302 - remote-endpoint = <&ss_typec_p0>; 303 - }; 304 - }; 305 - }; 306 - }; 307 - 308 - ccg_typec_con1: connector@1 { 309 - compatible = "usb-c-connector"; 310 - reg = <1>; 311 - label = "USB-C"; 312 - data-role = "dual"; 313 - 314 - ports { 315 - #address-cells = <1>; 316 - #size-cells = <0>; 317 - 318 - port@0 { 319 - reg = <0>; 320 - 321 - hs_ucsi_ccg_p1: endpoint { 322 - remote-endpoint = <&hs_typec_p1>; 323 - }; 324 - }; 325 - 326 - port@1 { 327 - reg = <1>; 328 - 329 - ss_ucsi_ccg_p1: endpoint { 330 - remote-endpoint = <&ss_typec_p1>; 331 - }; 332 - }; 333 - }; 334 - }; 335 - }; 336 - }; 337 - 338 - pcie@14100000 { 339 - status = "okay"; 340 - 341 - vddio-pex-ctl-supply = <&vdd_1v8_ao>; 342 - 343 - phys = <&p2u_hsio_3>; 344 - phy-names = "p2u-0"; 345 - }; 346 - 347 - pcie@14160000 { 348 - status = "okay"; 349 - 350 - vddio-pex-ctl-supply = <&vdd_1v8_ao>; 351 - 352 - phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>, 353 - <&p2u_hsio_7>; 354 - phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3"; 355 - }; 356 - 357 - pcie@141a0000 { 358 - status = "okay"; 359 - 360 - vddio-pex-ctl-supply = <&vdd_1v8_ls>; 361 - vpcie3v3-supply = <&vdd_3v3_pcie>; 362 - vpcie12v-supply = <&vdd_12v_pcie>; 363 - 364 - phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>, 365 - <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>, 366 - <&p2u_nvhs_6>, <&p2u_nvhs_7>; 367 - phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4", 368 - "p2u-5", "p2u-6", "p2u-7"; 369 - }; 370 - 371 - pcie-ep@141a0000 { 372 - status = "disabled"; 373 - 374 - vddio-pex-ctl-supply = <&vdd_1v8_ls>; 375 - 376 - reset-gpios = <&gpio TEGRA234_MAIN_GPIO(AF, 1) GPIO_ACTIVE_LOW>; 377 - 378 - nvidia,refclk-select-gpios = <&gpio_aon 379 - TEGRA234_AON_GPIO(AA, 4) 380 - GPIO_ACTIVE_HIGH>; 381 - 382 - phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>, 383 - <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>, 384 - <&p2u_nvhs_6>, <&p2u_nvhs_7>; 385 - phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4", 386 - "p2u-5", "p2u-6", "p2u-7"; 387 - }; 388 - }; 389 - 390 - gpio-keys { 391 - compatible = "gpio-keys"; 392 - status = "okay"; 393 - 394 - key-force-recovery { 395 - label = "Force Recovery"; 396 - gpios = <&gpio TEGRA234_MAIN_GPIO(G, 0) GPIO_ACTIVE_LOW>; 397 - linux,input-type = <EV_KEY>; 398 - linux,code = <BTN_1>; 399 - }; 400 - 401 - key-power { 402 - label = "Power"; 403 - gpios = <&gpio_aon TEGRA234_AON_GPIO(EE, 4) GPIO_ACTIVE_LOW>; 404 - linux,input-type = <EV_KEY>; 405 - linux,code = <KEY_POWER>; 406 - wakeup-event-action = <EV_ACT_ASSERTED>; 407 - wakeup-source; 408 - }; 409 - 410 - key-suspend { 411 - label = "Suspend"; 412 - gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>; 413 - linux,input-type = <EV_KEY>; 414 - linux,code = <KEY_SLEEP>; 415 - }; 416 - }; 417 - 418 - fan: pwm-fan { 419 - compatible = "pwm-fan"; 420 - cooling-levels = <66 215 255>; 421 - pwms = <&pwm3 0 45334>; 422 - #cooling-cells = <2>; 423 - }; 424 - 425 - serial { 426 - status = "okay"; 427 - }; 428 - 429 - sound { 430 - compatible = "nvidia,tegra186-audio-graph-card"; 431 - status = "okay"; 432 - 433 - dais = /* ADMAIF (FE) Ports */ 434 - <&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>, 435 - <&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>, 436 - <&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>, 437 - <&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>, 438 - <&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>, 439 - /* XBAR Ports */ 440 - <&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s4_port>, 441 - <&xbar_i2s6_port>, <&xbar_dmic3_port>, 442 - <&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>, 443 - <&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>, 444 - <&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>, 445 - <&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>, 446 - <&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>, 447 - <&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>, 448 - <&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>, 449 - <&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>, 450 - <&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>, 451 - <&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>, 452 - <&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>, 453 - <&xbar_adx1_in_port>, <&xbar_adx2_in_port>, 454 - <&xbar_adx3_in_port>, <&xbar_adx4_in_port>, 455 - <&xbar_mix_in1_port>, <&xbar_mix_in2_port>, 456 - <&xbar_mix_in3_port>, <&xbar_mix_in4_port>, 457 - <&xbar_mix_in5_port>, <&xbar_mix_in6_port>, 458 - <&xbar_mix_in7_port>, <&xbar_mix_in8_port>, 459 - <&xbar_mix_in9_port>, <&xbar_mix_in10_port>, 460 - <&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>, 461 - <&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>, 462 - <&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>, 463 - <&xbar_asrc_in7_port>, 464 - <&xbar_ope1_in_port>, 465 - /* HW accelerators */ 466 - <&sfc1_out_port>, <&sfc2_out_port>, 467 - <&sfc3_out_port>, <&sfc4_out_port>, 468 - <&mvc1_out_port>, <&mvc2_out_port>, 469 - <&amx1_out_port>, <&amx2_out_port>, 470 - <&amx3_out_port>, <&amx4_out_port>, 471 - <&adx1_out1_port>, <&adx1_out2_port>, 472 - <&adx1_out3_port>, <&adx1_out4_port>, 473 - <&adx2_out1_port>, <&adx2_out2_port>, 474 - <&adx2_out3_port>, <&adx2_out4_port>, 475 - <&adx3_out1_port>, <&adx3_out2_port>, 476 - <&adx3_out3_port>, <&adx3_out4_port>, 477 - <&adx4_out1_port>, <&adx4_out2_port>, 478 - <&adx4_out3_port>, <&adx4_out4_port>, 479 - <&mix_out1_port>, <&mix_out2_port>, <&mix_out3_port>, 480 - <&mix_out4_port>, <&mix_out5_port>, 481 - <&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>, 482 - <&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>, 483 - <&ope1_out_port>, 484 - /* BE I/O Ports */ 485 - <&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>, 486 - <&dmic3_port>; 487 - 488 - label = "NVIDIA Jetson AGX Orin APE"; 489 - 490 - widgets = "Microphone", "CVB-RT MIC Jack", 491 - "Microphone", "CVB-RT MIC", 492 - "Headphone", "CVB-RT HP Jack", 493 - "Speaker", "CVB-RT SPK"; 494 - 495 - routing = /* I2S1 <-> RT5640 */ 496 - "CVB-RT AIF1 Playback", "I2S1 DAP-Playback", 497 - "I2S1 DAP-Capture", "CVB-RT AIF1 Capture", 498 - /* RT5640 codec controls */ 499 - "CVB-RT HP Jack", "CVB-RT HPOL", 500 - "CVB-RT HP Jack", "CVB-RT HPOR", 501 - "CVB-RT IN1P", "CVB-RT MIC Jack", 502 - "CVB-RT IN2P", "CVB-RT MIC Jack", 503 - "CVB-RT SPK", "CVB-RT SPOLP", 504 - "CVB-RT SPK", "CVB-RT SPORP", 505 - "CVB-RT DMIC1", "CVB-RT MIC", 506 - "CVB-RT DMIC2", "CVB-RT MIC"; 507 - }; 508 - 509 - thermal-zones { 510 - tj-thermal { 511 - cooling-maps { 512 - map-active-0 { 513 - cooling-device = <&fan 0 1>; 514 - trip = <&tj_trip_active0>; 515 - }; 516 - 517 - map-active-1 { 518 - cooling-device = <&fan 1 2>; 519 - trip = <&tj_trip_active1>; 520 - }; 521 - }; 522 - }; 523 - }; 524 - 525 - vdd_1v8_sys: regulator-vdd-1v8-sys { 526 - compatible = "regulator-fixed"; 527 - regulator-name = "VDD_1V8_SYS"; 528 - regulator-min-microvolt = <1800000>; 529 - regulator-max-microvolt = <1800000>; 530 - regulator-always-on; 531 - }; 532 - 533 - vdd_3v3_pcie: regulator-vdd-3v3-pcie { 534 - compatible = "regulator-fixed"; 535 - regulator-name = "VDD_3V3_PCIE"; 536 - regulator-min-microvolt = <3300000>; 537 - regulator-max-microvolt = <3300000>; 538 - gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>; 539 - regulator-boot-on; 540 - enable-active-high; 541 - }; 542 - 543 - vdd_12v_pcie: regulator-vdd-12v-pcie { 544 - compatible = "regulator-fixed"; 545 - regulator-name = "VDD_12V_PCIE"; 546 - regulator-min-microvolt = <12000000>; 547 - regulator-max-microvolt = <12000000>; 548 - gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>; 549 - regulator-boot-on; 550 - }; 551 11 };
+11
arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0008.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0 2 + /dts-v1/; 3 + 4 + // Module files must be included first 5 + #include "tegra234-p3701-0008.dtsi" 6 + #include "tegra234-p3737-0000+p3701.dtsi" 7 + 8 + / { 9 + model = "NVIDIA Jetson AGX Orin Developer Kit"; 10 + compatible = "nvidia,p3737-0000+p3701-0008", "nvidia,p3701-0008", "nvidia,tegra234"; 11 + };
+547
arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701.dtsi
··· 1 + // SPDX-License-Identifier: GPL-2.0 2 + 3 + #include <dt-bindings/clock/tegra234-clock.h> 4 + #include <dt-bindings/gpio/tegra234-gpio.h> 5 + #include <dt-bindings/input/linux-event-codes.h> 6 + #include <dt-bindings/input/gpio-keys.h> 7 + #include <dt-bindings/sound/rt5640.h> 8 + 9 + / { 10 + aliases { 11 + serial0 = &tcu; 12 + serial1 = &uarta; 13 + }; 14 + 15 + chosen { 16 + bootargs = "console=ttyTCU0,115200n8"; 17 + stdout-path = "serial0:115200n8"; 18 + }; 19 + 20 + bus@0 { 21 + aconnect@2900000 { 22 + ahub@2900800 { 23 + i2s@2901000 { 24 + ports { 25 + port@1 { 26 + endpoint { 27 + dai-format = "i2s"; 28 + remote-endpoint = <&rt5640_ep>; 29 + }; 30 + }; 31 + }; 32 + }; 33 + }; 34 + }; 35 + 36 + serial@3100000 { 37 + compatible = "nvidia,tegra194-hsuart"; 38 + reset-names = "serial"; 39 + status = "okay"; 40 + }; 41 + 42 + i2c@3160000 { 43 + status = "okay"; 44 + 45 + eeprom@56 { 46 + compatible = "atmel,24c02"; 47 + reg = <0x56>; 48 + 49 + label = "system"; 50 + vcc-supply = <&vdd_1v8_sys>; 51 + address-width = <8>; 52 + pagesize = <8>; 53 + size = <256>; 54 + read-only; 55 + }; 56 + }; 57 + 58 + serial@31d0000 { 59 + current-speed = <115200>; 60 + status = "okay"; 61 + }; 62 + 63 + i2c@31e0000 { 64 + status = "okay"; 65 + 66 + audio-codec@1c { 67 + compatible = "realtek,rt5640"; 68 + reg = <0x1c>; 69 + interrupt-parent = <&gpio>; 70 + interrupts = <TEGRA234_MAIN_GPIO(AC, 5) GPIO_ACTIVE_HIGH>; 71 + clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>; 72 + clock-names = "mclk"; 73 + realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>; 74 + realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>; 75 + realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>; 76 + sound-name-prefix = "CVB-RT"; 77 + 78 + port { 79 + rt5640_ep: endpoint { 80 + remote-endpoint = <&i2s1_dap>; 81 + mclk-fs = <256>; 82 + }; 83 + }; 84 + }; 85 + }; 86 + 87 + pwm@3280000 { 88 + status = "okay"; 89 + }; 90 + 91 + pwm@32a0000 { 92 + assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>; 93 + assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>; 94 + status = "okay"; 95 + }; 96 + 97 + pwm@32c0000 { 98 + status = "okay"; 99 + }; 100 + 101 + pwm@32f0000 { 102 + status = "okay"; 103 + }; 104 + 105 + mmc@3400000 { 106 + status = "okay"; 107 + bus-width = <4>; 108 + cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>; 109 + disable-wp; 110 + }; 111 + 112 + hda@3510000 { 113 + nvidia,model = "NVIDIA Jetson AGX Orin HDA"; 114 + status = "okay"; 115 + }; 116 + 117 + padctl@3520000 { 118 + status = "okay"; 119 + 120 + pads { 121 + usb2 { 122 + lanes { 123 + usb2-0 { 124 + status = "okay"; 125 + }; 126 + 127 + usb2-1 { 128 + status = "okay"; 129 + }; 130 + 131 + usb2-2 { 132 + status = "okay"; 133 + }; 134 + 135 + usb2-3 { 136 + status = "okay"; 137 + }; 138 + }; 139 + }; 140 + 141 + usb3 { 142 + lanes { 143 + usb3-0 { 144 + status = "okay"; 145 + }; 146 + 147 + usb3-1 { 148 + status = "okay"; 149 + }; 150 + 151 + usb3-2 { 152 + status = "okay"; 153 + }; 154 + }; 155 + }; 156 + }; 157 + 158 + ports { 159 + usb2-0 { 160 + mode = "otg"; 161 + usb-role-switch; 162 + status = "okay"; 163 + 164 + port { 165 + hs_typec_p1: endpoint { 166 + remote-endpoint = <&hs_ucsi_ccg_p1>; 167 + }; 168 + }; 169 + }; 170 + 171 + usb2-1 { 172 + mode = "host"; 173 + status = "okay"; 174 + 175 + port { 176 + hs_typec_p0: endpoint { 177 + remote-endpoint = <&hs_ucsi_ccg_p0>; 178 + }; 179 + }; 180 + }; 181 + 182 + usb2-2 { 183 + mode = "host"; 184 + status = "okay"; 185 + }; 186 + 187 + usb2-3 { 188 + mode = "host"; 189 + status = "okay"; 190 + }; 191 + 192 + usb3-0 { 193 + nvidia,usb2-companion = <1>; 194 + status = "okay"; 195 + 196 + port { 197 + ss_typec_p0: endpoint { 198 + remote-endpoint = <&ss_ucsi_ccg_p0>; 199 + }; 200 + }; 201 + }; 202 + 203 + usb3-1 { 204 + nvidia,usb2-companion = <0>; 205 + status = "okay"; 206 + 207 + port { 208 + ss_typec_p1: endpoint { 209 + remote-endpoint = <&ss_ucsi_ccg_p1>; 210 + }; 211 + }; 212 + }; 213 + 214 + usb3-2 { 215 + nvidia,usb2-companion = <3>; 216 + status = "okay"; 217 + }; 218 + }; 219 + }; 220 + 221 + usb@3550000 { 222 + status = "okay"; 223 + 224 + phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 225 + <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>; 226 + phy-names = "usb2-0", "usb3-0"; 227 + }; 228 + 229 + usb@3610000 { 230 + status = "okay"; 231 + 232 + phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>, 233 + <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>, 234 + <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>, 235 + <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>, 236 + <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>, 237 + <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>, 238 + <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>; 239 + phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3", 240 + "usb3-0", "usb3-1", "usb3-2"; 241 + }; 242 + 243 + ethernet@6800000 { 244 + status = "okay"; 245 + 246 + phy-handle = <&mgbe0_phy>; 247 + phy-mode = "10gbase-r"; 248 + 249 + mdio { 250 + #address-cells = <1>; 251 + #size-cells = <0>; 252 + 253 + mgbe0_phy: phy@0 { 254 + compatible = "ethernet-phy-ieee802.3-c45"; 255 + reg = <0x0>; 256 + 257 + #phy-cells = <0>; 258 + }; 259 + }; 260 + }; 261 + 262 + i2c@c240000 { 263 + status = "okay"; 264 + 265 + typec@8 { 266 + compatible = "cypress,cypd4226"; 267 + reg = <0x08>; 268 + interrupt-parent = <&gpio>; 269 + interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>; 270 + firmware-name = "nvidia,jetson-agx-xavier"; 271 + status = "okay"; 272 + 273 + #address-cells = <1>; 274 + #size-cells = <0>; 275 + 276 + ccg_typec_con0: connector@0 { 277 + compatible = "usb-c-connector"; 278 + reg = <0>; 279 + label = "USB-C"; 280 + data-role = "host"; 281 + 282 + ports { 283 + #address-cells = <1>; 284 + #size-cells = <0>; 285 + 286 + port@0 { 287 + reg = <0>; 288 + 289 + hs_ucsi_ccg_p0: endpoint { 290 + remote-endpoint = <&hs_typec_p0>; 291 + }; 292 + }; 293 + 294 + port@1 { 295 + reg = <1>; 296 + 297 + ss_ucsi_ccg_p0: endpoint { 298 + remote-endpoint = <&ss_typec_p0>; 299 + }; 300 + }; 301 + }; 302 + }; 303 + 304 + ccg_typec_con1: connector@1 { 305 + compatible = "usb-c-connector"; 306 + reg = <1>; 307 + label = "USB-C"; 308 + data-role = "dual"; 309 + 310 + ports { 311 + #address-cells = <1>; 312 + #size-cells = <0>; 313 + 314 + port@0 { 315 + reg = <0>; 316 + 317 + hs_ucsi_ccg_p1: endpoint { 318 + remote-endpoint = <&hs_typec_p1>; 319 + }; 320 + }; 321 + 322 + port@1 { 323 + reg = <1>; 324 + 325 + ss_ucsi_ccg_p1: endpoint { 326 + remote-endpoint = <&ss_typec_p1>; 327 + }; 328 + }; 329 + }; 330 + }; 331 + }; 332 + }; 333 + 334 + pcie@14100000 { 335 + status = "okay"; 336 + 337 + vddio-pex-ctl-supply = <&vdd_1v8_ao>; 338 + 339 + phys = <&p2u_hsio_3>; 340 + phy-names = "p2u-0"; 341 + }; 342 + 343 + pcie@14160000 { 344 + status = "okay"; 345 + 346 + vddio-pex-ctl-supply = <&vdd_1v8_ao>; 347 + 348 + phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>, 349 + <&p2u_hsio_7>; 350 + phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3"; 351 + }; 352 + 353 + pcie@141a0000 { 354 + status = "okay"; 355 + 356 + vddio-pex-ctl-supply = <&vdd_1v8_ls>; 357 + vpcie3v3-supply = <&vdd_3v3_pcie>; 358 + vpcie12v-supply = <&vdd_12v_pcie>; 359 + 360 + phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>, 361 + <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>, 362 + <&p2u_nvhs_6>, <&p2u_nvhs_7>; 363 + phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4", 364 + "p2u-5", "p2u-6", "p2u-7"; 365 + }; 366 + 367 + pcie-ep@141a0000 { 368 + status = "disabled"; 369 + 370 + vddio-pex-ctl-supply = <&vdd_1v8_ls>; 371 + 372 + reset-gpios = <&gpio TEGRA234_MAIN_GPIO(AF, 1) GPIO_ACTIVE_LOW>; 373 + 374 + nvidia,refclk-select-gpios = <&gpio_aon 375 + TEGRA234_AON_GPIO(AA, 4) 376 + GPIO_ACTIVE_HIGH>; 377 + 378 + phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>, 379 + <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>, 380 + <&p2u_nvhs_6>, <&p2u_nvhs_7>; 381 + phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4", 382 + "p2u-5", "p2u-6", "p2u-7"; 383 + }; 384 + }; 385 + 386 + gpio-keys { 387 + compatible = "gpio-keys"; 388 + status = "okay"; 389 + 390 + key-force-recovery { 391 + label = "Force Recovery"; 392 + gpios = <&gpio TEGRA234_MAIN_GPIO(G, 0) GPIO_ACTIVE_LOW>; 393 + linux,input-type = <EV_KEY>; 394 + linux,code = <BTN_1>; 395 + }; 396 + 397 + key-power { 398 + label = "Power"; 399 + gpios = <&gpio_aon TEGRA234_AON_GPIO(EE, 4) GPIO_ACTIVE_LOW>; 400 + linux,input-type = <EV_KEY>; 401 + linux,code = <KEY_POWER>; 402 + wakeup-event-action = <EV_ACT_ASSERTED>; 403 + wakeup-source; 404 + }; 405 + 406 + key-suspend { 407 + label = "Suspend"; 408 + gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>; 409 + linux,input-type = <EV_KEY>; 410 + linux,code = <KEY_SLEEP>; 411 + }; 412 + }; 413 + 414 + fan: pwm-fan { 415 + compatible = "pwm-fan"; 416 + cooling-levels = <66 215 255>; 417 + pwms = <&pwm3 0 45334>; 418 + #cooling-cells = <2>; 419 + }; 420 + 421 + serial { 422 + status = "okay"; 423 + }; 424 + 425 + sound { 426 + compatible = "nvidia,tegra186-audio-graph-card"; 427 + status = "okay"; 428 + 429 + dais = /* ADMAIF (FE) Ports */ 430 + <&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>, 431 + <&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>, 432 + <&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>, 433 + <&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>, 434 + <&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>, 435 + /* XBAR Ports */ 436 + <&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s4_port>, 437 + <&xbar_i2s6_port>, <&xbar_dmic3_port>, 438 + <&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>, 439 + <&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>, 440 + <&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>, 441 + <&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>, 442 + <&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>, 443 + <&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>, 444 + <&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>, 445 + <&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>, 446 + <&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>, 447 + <&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>, 448 + <&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>, 449 + <&xbar_adx1_in_port>, <&xbar_adx2_in_port>, 450 + <&xbar_adx3_in_port>, <&xbar_adx4_in_port>, 451 + <&xbar_mix_in1_port>, <&xbar_mix_in2_port>, 452 + <&xbar_mix_in3_port>, <&xbar_mix_in4_port>, 453 + <&xbar_mix_in5_port>, <&xbar_mix_in6_port>, 454 + <&xbar_mix_in7_port>, <&xbar_mix_in8_port>, 455 + <&xbar_mix_in9_port>, <&xbar_mix_in10_port>, 456 + <&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>, 457 + <&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>, 458 + <&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>, 459 + <&xbar_asrc_in7_port>, 460 + <&xbar_ope1_in_port>, 461 + /* HW accelerators */ 462 + <&sfc1_out_port>, <&sfc2_out_port>, 463 + <&sfc3_out_port>, <&sfc4_out_port>, 464 + <&mvc1_out_port>, <&mvc2_out_port>, 465 + <&amx1_out_port>, <&amx2_out_port>, 466 + <&amx3_out_port>, <&amx4_out_port>, 467 + <&adx1_out1_port>, <&adx1_out2_port>, 468 + <&adx1_out3_port>, <&adx1_out4_port>, 469 + <&adx2_out1_port>, <&adx2_out2_port>, 470 + <&adx2_out3_port>, <&adx2_out4_port>, 471 + <&adx3_out1_port>, <&adx3_out2_port>, 472 + <&adx3_out3_port>, <&adx3_out4_port>, 473 + <&adx4_out1_port>, <&adx4_out2_port>, 474 + <&adx4_out3_port>, <&adx4_out4_port>, 475 + <&mix_out1_port>, <&mix_out2_port>, <&mix_out3_port>, 476 + <&mix_out4_port>, <&mix_out5_port>, 477 + <&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>, 478 + <&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>, 479 + <&ope1_out_port>, 480 + /* BE I/O Ports */ 481 + <&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>, 482 + <&dmic3_port>; 483 + 484 + label = "NVIDIA Jetson AGX Orin APE"; 485 + 486 + widgets = "Microphone", "CVB-RT MIC Jack", 487 + "Microphone", "CVB-RT MIC", 488 + "Headphone", "CVB-RT HP Jack", 489 + "Speaker", "CVB-RT SPK"; 490 + 491 + routing = /* I2S1 <-> RT5640 */ 492 + "CVB-RT AIF1 Playback", "I2S1 DAP-Playback", 493 + "I2S1 DAP-Capture", "CVB-RT AIF1 Capture", 494 + /* RT5640 codec controls */ 495 + "CVB-RT HP Jack", "CVB-RT HPOL", 496 + "CVB-RT HP Jack", "CVB-RT HPOR", 497 + "CVB-RT IN1P", "CVB-RT MIC Jack", 498 + "CVB-RT IN2P", "CVB-RT MIC Jack", 499 + "CVB-RT SPK", "CVB-RT SPOLP", 500 + "CVB-RT SPK", "CVB-RT SPORP", 501 + "CVB-RT DMIC1", "CVB-RT MIC", 502 + "CVB-RT DMIC2", "CVB-RT MIC"; 503 + }; 504 + 505 + thermal-zones { 506 + tj-thermal { 507 + cooling-maps { 508 + map-active-0 { 509 + cooling-device = <&fan 0 1>; 510 + trip = <&tj_trip_active0>; 511 + }; 512 + 513 + map-active-1 { 514 + cooling-device = <&fan 1 2>; 515 + trip = <&tj_trip_active1>; 516 + }; 517 + }; 518 + }; 519 + }; 520 + 521 + vdd_1v8_sys: regulator-vdd-1v8-sys { 522 + compatible = "regulator-fixed"; 523 + regulator-name = "VDD_1V8_SYS"; 524 + regulator-min-microvolt = <1800000>; 525 + regulator-max-microvolt = <1800000>; 526 + regulator-always-on; 527 + }; 528 + 529 + vdd_3v3_pcie: regulator-vdd-3v3-pcie { 530 + compatible = "regulator-fixed"; 531 + regulator-name = "VDD_3V3_PCIE"; 532 + regulator-min-microvolt = <3300000>; 533 + regulator-max-microvolt = <3300000>; 534 + gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>; 535 + regulator-boot-on; 536 + enable-active-high; 537 + }; 538 + 539 + vdd_12v_pcie: regulator-vdd-12v-pcie { 540 + compatible = "regulator-fixed"; 541 + regulator-name = "VDD_12V_PCIE"; 542 + regulator-min-microvolt = <12000000>; 543 + regulator-max-microvolt = <12000000>; 544 + gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>; 545 + regulator-boot-on; 546 + }; 547 + };