Linux Audio

Check our new training course

Loading...
v4.17
   1// SPDX-License-Identifier: GPL-2.0
   2#include <dt-bindings/clock/tegra124-car.h>
   3#include <dt-bindings/gpio/tegra-gpio.h>
   4#include <dt-bindings/memory/tegra124-mc.h>
   5#include <dt-bindings/pinctrl/pinctrl-tegra.h>
   6#include <dt-bindings/interrupt-controller/arm-gic.h>
   7#include <dt-bindings/reset/tegra124-car.h>
   8#include <dt-bindings/thermal/tegra124-soctherm.h>
   9
  10#include "skeleton.dtsi"
  11
  12/ {
  13	compatible = "nvidia,tegra124";
  14	interrupt-parent = <&lic>;
  15	#address-cells = <2>;
  16	#size-cells = <2>;
  17
 
 
 
 
 
  18	pcie@1003000 {
  19		compatible = "nvidia,tegra124-pcie";
  20		device_type = "pci";
  21		reg = <0x0 0x01003000 0x0 0x00000800   /* PADS registers */
  22		       0x0 0x01003800 0x0 0x00000800   /* AFI registers */
  23		       0x0 0x02000000 0x0 0x10000000>; /* configuration space */
  24		reg-names = "pads", "afi", "cs";
  25		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
  26			     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */
  27		interrupt-names = "intr", "msi";
  28
  29		#interrupt-cells = <1>;
  30		interrupt-map-mask = <0 0 0 0>;
  31		interrupt-map = <0 0 0 0 &gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
  32
  33		bus-range = <0x00 0xff>;
  34		#address-cells = <3>;
  35		#size-cells = <2>;
  36
  37		ranges = <0x82000000 0 0x01000000 0x0 0x01000000 0 0x00001000   /* port 0 configuration space */
  38			  0x82000000 0 0x01001000 0x0 0x01001000 0 0x00001000   /* port 1 configuration space */
  39			  0x81000000 0 0x0        0x0 0x12000000 0 0x00010000   /* downstream I/O (64 KiB) */
  40			  0x82000000 0 0x13000000 0x0 0x13000000 0 0x0d000000   /* non-prefetchable memory (208 MiB) */
  41			  0xc2000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */
  42
  43		clocks = <&tegra_car TEGRA124_CLK_PCIE>,
  44			 <&tegra_car TEGRA124_CLK_AFI>,
  45			 <&tegra_car TEGRA124_CLK_PLL_E>,
  46			 <&tegra_car TEGRA124_CLK_CML0>;
  47		clock-names = "pex", "afi", "pll_e", "cml";
  48		resets = <&tegra_car 70>,
  49			 <&tegra_car 72>,
  50			 <&tegra_car 74>;
  51		reset-names = "pex", "afi", "pcie_x";
  52		status = "disabled";
  53
  54		pci@1,0 {
  55			device_type = "pci";
  56			assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>;
  57			reg = <0x000800 0 0 0 0>;
  58			bus-range = <0x00 0xff>;
  59			status = "disabled";
  60
  61			#address-cells = <3>;
  62			#size-cells = <2>;
  63			ranges;
  64
  65			nvidia,num-lanes = <2>;
  66		};
  67
  68		pci@2,0 {
  69			device_type = "pci";
  70			assigned-addresses = <0x82001000 0 0x01001000 0 0x1000>;
  71			reg = <0x001000 0 0 0 0>;
  72			bus-range = <0x00 0xff>;
  73			status = "disabled";
  74
  75			#address-cells = <3>;
  76			#size-cells = <2>;
  77			ranges;
  78
  79			nvidia,num-lanes = <1>;
  80		};
  81	};
  82
  83	host1x@50000000 {
  84		compatible = "nvidia,tegra124-host1x", "simple-bus";
  85		reg = <0x0 0x50000000 0x0 0x00034000>;
  86		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
  87			     <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
 
  88		clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
 
  89		resets = <&tegra_car 28>;
  90		reset-names = "host1x";
  91		iommus = <&mc TEGRA_SWGROUP_HC>;
  92
  93		#address-cells = <2>;
  94		#size-cells = <2>;
  95
  96		ranges = <0 0x54000000 0 0x54000000 0 0x01000000>;
  97
  98		dc@54200000 {
  99			compatible = "nvidia,tegra124-dc";
 100			reg = <0x0 0x54200000 0x0 0x00040000>;
 101			interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
 102			clocks = <&tegra_car TEGRA124_CLK_DISP1>,
 103				 <&tegra_car TEGRA124_CLK_PLL_P>;
 104			clock-names = "dc", "parent";
 105			resets = <&tegra_car 27>;
 106			reset-names = "dc";
 107
 108			iommus = <&mc TEGRA_SWGROUP_DC>;
 109
 110			nvidia,head = <0>;
 111		};
 112
 113		dc@54240000 {
 114			compatible = "nvidia,tegra124-dc";
 115			reg = <0x0 0x54240000 0x0 0x00040000>;
 116			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
 117			clocks = <&tegra_car TEGRA124_CLK_DISP2>,
 118				 <&tegra_car TEGRA124_CLK_PLL_P>;
 119			clock-names = "dc", "parent";
 120			resets = <&tegra_car 26>;
 121			reset-names = "dc";
 122
 123			iommus = <&mc TEGRA_SWGROUP_DCB>;
 124
 125			nvidia,head = <1>;
 126		};
 127
 128		hdmi: hdmi@54280000 {
 129			compatible = "nvidia,tegra124-hdmi";
 130			reg = <0x0 0x54280000 0x0 0x00040000>;
 131			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
 132			clocks = <&tegra_car TEGRA124_CLK_HDMI>,
 133				 <&tegra_car TEGRA124_CLK_PLL_D2_OUT0>;
 134			clock-names = "hdmi", "parent";
 135			resets = <&tegra_car 51>;
 136			reset-names = "hdmi";
 137			status = "disabled";
 138		};
 139
 
 
 
 
 
 
 
 
 
 
 
 
 140		sor@54540000 {
 141			compatible = "nvidia,tegra124-sor";
 142			reg = <0x0 0x54540000 0x0 0x00040000>;
 143			interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
 144			clocks = <&tegra_car TEGRA124_CLK_SOR0>,
 
 145				 <&tegra_car TEGRA124_CLK_PLL_D_OUT0>,
 146				 <&tegra_car TEGRA124_CLK_PLL_DP>,
 147				 <&tegra_car TEGRA124_CLK_CLK_M>;
 148			clock-names = "sor", "parent", "dp", "safe";
 149			resets = <&tegra_car 182>;
 150			reset-names = "sor";
 151			status = "disabled";
 152		};
 153
 154		dpaux: dpaux@545c0000 {
 155			compatible = "nvidia,tegra124-dpaux";
 156			reg = <0x0 0x545c0000 0x0 0x00040000>;
 157			interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
 158			clocks = <&tegra_car TEGRA124_CLK_DPAUX>,
 159				 <&tegra_car TEGRA124_CLK_PLL_DP>;
 160			clock-names = "dpaux", "parent";
 161			resets = <&tegra_car 181>;
 162			reset-names = "dpaux";
 163			status = "disabled";
 
 
 
 
 
 164		};
 165	};
 166
 167	gic: interrupt-controller@50041000 {
 168		compatible = "arm,cortex-a15-gic";
 169		#interrupt-cells = <3>;
 170		interrupt-controller;
 171		reg = <0x0 0x50041000 0x0 0x1000>,
 172		      <0x0 0x50042000 0x0 0x1000>,
 173		      <0x0 0x50044000 0x0 0x2000>,
 174		      <0x0 0x50046000 0x0 0x2000>;
 175		interrupts = <GIC_PPI 9
 176			(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
 177		interrupt-parent = <&gic>;
 178	};
 179
 180	/*
 181	 * Please keep the following 0, notation in place as a former mainline
 182	 * U-Boot version was looking for that particular notation in order to
 183	 * perform required fix-ups on that GPU node.
 184	 */
 185	gpu@0,57000000 {
 186		compatible = "nvidia,gk20a";
 187		reg = <0x0 0x57000000 0x0 0x01000000>,
 188		      <0x0 0x58000000 0x0 0x01000000>;
 189		interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
 190			     <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
 191		interrupt-names = "stall", "nonstall";
 192		clocks = <&tegra_car TEGRA124_CLK_GPU>,
 193			 <&tegra_car TEGRA124_CLK_PLL_P_OUT5>;
 194		clock-names = "gpu", "pwr";
 195		resets = <&tegra_car 184>;
 196		reset-names = "gpu";
 197
 198		iommus = <&mc TEGRA_SWGROUP_GPU>;
 199
 200		status = "disabled";
 201	};
 202
 203	lic: interrupt-controller@60004000 {
 204		compatible = "nvidia,tegra124-ictlr", "nvidia,tegra30-ictlr";
 205		reg = <0x0 0x60004000 0x0 0x100>,
 206		      <0x0 0x60004100 0x0 0x100>,
 207		      <0x0 0x60004200 0x0 0x100>,
 208		      <0x0 0x60004300 0x0 0x100>,
 209		      <0x0 0x60004400 0x0 0x100>;
 210		interrupt-controller;
 211		#interrupt-cells = <3>;
 212		interrupt-parent = <&gic>;
 213	};
 214
 215	timer@60005000 {
 216		compatible = "nvidia,tegra124-timer", "nvidia,tegra30-timer", "nvidia,tegra20-timer";
 217		reg = <0x0 0x60005000 0x0 0x400>;
 218		interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
 219			     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
 220			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
 221			     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
 222			     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
 223			     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
 224		clocks = <&tegra_car TEGRA124_CLK_TIMER>;
 225	};
 226
 227	tegra_car: clock@60006000 {
 228		compatible = "nvidia,tegra124-car";
 229		reg = <0x0 0x60006000 0x0 0x1000>;
 230		#clock-cells = <1>;
 231		#reset-cells = <1>;
 232		nvidia,external-memory-controller = <&emc>;
 233	};
 234
 235	flow-controller@60007000 {
 236		compatible = "nvidia,tegra124-flowctrl";
 237		reg = <0x0 0x60007000 0x0 0x1000>;
 238	};
 239
 240	actmon@6000c800 {
 241		compatible = "nvidia,tegra124-actmon";
 242		reg = <0x0 0x6000c800 0x0 0x400>;
 243		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
 244		clocks = <&tegra_car TEGRA124_CLK_ACTMON>,
 245			 <&tegra_car TEGRA124_CLK_EMC>;
 246		clock-names = "actmon", "emc";
 247		resets = <&tegra_car 119>;
 248		reset-names = "actmon";
 249	};
 250
 251	gpio: gpio@6000d000 {
 252		compatible = "nvidia,tegra124-gpio", "nvidia,tegra30-gpio";
 253		reg = <0x0 0x6000d000 0x0 0x1000>;
 254		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
 255			     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
 256			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
 257			     <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
 258			     <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
 259			     <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
 260			     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
 261			     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
 262		#gpio-cells = <2>;
 263		gpio-controller;
 264		#interrupt-cells = <2>;
 265		interrupt-controller;
 266		/*
 267		gpio-ranges = <&pinmux 0 0 251>;
 268		*/
 269	};
 270
 271	apbdma: dma@60020000 {
 272		compatible = "nvidia,tegra124-apbdma", "nvidia,tegra148-apbdma";
 273		reg = <0x0 0x60020000 0x0 0x1400>;
 274		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
 275			     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
 276			     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
 277			     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
 278			     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
 279			     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
 280			     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
 281			     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
 282			     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
 283			     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
 284			     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
 285			     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
 286			     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
 287			     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
 288			     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
 289			     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
 290			     <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
 291			     <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
 292			     <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
 293			     <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
 294			     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
 295			     <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
 296			     <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
 297			     <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
 298			     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
 299			     <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
 300			     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
 301			     <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
 302			     <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
 303			     <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
 304			     <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
 305			     <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
 306		clocks = <&tegra_car TEGRA124_CLK_APBDMA>;
 307		resets = <&tegra_car 34>;
 308		reset-names = "dma";
 309		#dma-cells = <1>;
 310	};
 311
 312	apbmisc@70000800 {
 313		compatible = "nvidia,tegra124-apbmisc", "nvidia,tegra20-apbmisc";
 314		reg = <0x0 0x70000800 0x0 0x64>,   /* Chip revision */
 315		      <0x0 0x7000e864 0x0 0x04>;   /* Strapping options */
 316	};
 317
 318	pinmux: pinmux@70000868 {
 319		compatible = "nvidia,tegra124-pinmux";
 320		reg = <0x0 0x70000868 0x0 0x164>, /* Pad control registers */
 321		      <0x0 0x70003000 0x0 0x434>, /* Mux registers */
 322		      <0x0 0x70000820 0x0 0x008>; /* MIPI pad control */
 323	};
 324
 325	/*
 326	 * There are two serial driver i.e. 8250 based simple serial
 327	 * driver and APB DMA based serial driver for higher baudrate
 328	 * and performace. To enable the 8250 based driver, the compatible
 329	 * is "nvidia,tegra124-uart", "nvidia,tegra20-uart" and to enable
 330	 * the APB DMA based serial driver, the compatible is
 331	 * "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart".
 332	 */
 333	uarta: serial@70006000 {
 334		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 335		reg = <0x0 0x70006000 0x0 0x40>;
 336		reg-shift = <2>;
 337		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
 338		clocks = <&tegra_car TEGRA124_CLK_UARTA>;
 339		resets = <&tegra_car 6>;
 340		reset-names = "serial";
 341		dmas = <&apbdma 8>, <&apbdma 8>;
 342		dma-names = "rx", "tx";
 343		status = "disabled";
 344	};
 345
 346	uartb: serial@70006040 {
 347		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 348		reg = <0x0 0x70006040 0x0 0x40>;
 349		reg-shift = <2>;
 350		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
 351		clocks = <&tegra_car TEGRA124_CLK_UARTB>;
 352		resets = <&tegra_car 7>;
 353		reset-names = "serial";
 354		dmas = <&apbdma 9>, <&apbdma 9>;
 355		dma-names = "rx", "tx";
 356		status = "disabled";
 357	};
 358
 359	uartc: serial@70006200 {
 360		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 361		reg = <0x0 0x70006200 0x0 0x40>;
 362		reg-shift = <2>;
 363		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
 364		clocks = <&tegra_car TEGRA124_CLK_UARTC>;
 365		resets = <&tegra_car 55>;
 366		reset-names = "serial";
 367		dmas = <&apbdma 10>, <&apbdma 10>;
 368		dma-names = "rx", "tx";
 369		status = "disabled";
 370	};
 371
 372	uartd: serial@70006300 {
 373		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 374		reg = <0x0 0x70006300 0x0 0x40>;
 375		reg-shift = <2>;
 376		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
 377		clocks = <&tegra_car TEGRA124_CLK_UARTD>;
 378		resets = <&tegra_car 65>;
 379		reset-names = "serial";
 380		dmas = <&apbdma 19>, <&apbdma 19>;
 381		dma-names = "rx", "tx";
 382		status = "disabled";
 383	};
 384
 385	pwm: pwm@7000a000 {
 386		compatible = "nvidia,tegra124-pwm", "nvidia,tegra20-pwm";
 387		reg = <0x0 0x7000a000 0x0 0x100>;
 388		#pwm-cells = <2>;
 389		clocks = <&tegra_car TEGRA124_CLK_PWM>;
 390		resets = <&tegra_car 17>;
 391		reset-names = "pwm";
 392		status = "disabled";
 393	};
 394
 395	i2c@7000c000 {
 396		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 397		reg = <0x0 0x7000c000 0x0 0x100>;
 398		interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
 399		#address-cells = <1>;
 400		#size-cells = <0>;
 401		clocks = <&tegra_car TEGRA124_CLK_I2C1>;
 402		clock-names = "div-clk";
 403		resets = <&tegra_car 12>;
 404		reset-names = "i2c";
 405		dmas = <&apbdma 21>, <&apbdma 21>;
 406		dma-names = "rx", "tx";
 407		status = "disabled";
 408	};
 409
 410	i2c@7000c400 {
 411		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 412		reg = <0x0 0x7000c400 0x0 0x100>;
 413		interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
 414		#address-cells = <1>;
 415		#size-cells = <0>;
 416		clocks = <&tegra_car TEGRA124_CLK_I2C2>;
 417		clock-names = "div-clk";
 418		resets = <&tegra_car 54>;
 419		reset-names = "i2c";
 420		dmas = <&apbdma 22>, <&apbdma 22>;
 421		dma-names = "rx", "tx";
 422		status = "disabled";
 423	};
 424
 425	i2c@7000c500 {
 426		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 427		reg = <0x0 0x7000c500 0x0 0x100>;
 428		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
 429		#address-cells = <1>;
 430		#size-cells = <0>;
 431		clocks = <&tegra_car TEGRA124_CLK_I2C3>;
 432		clock-names = "div-clk";
 433		resets = <&tegra_car 67>;
 434		reset-names = "i2c";
 435		dmas = <&apbdma 23>, <&apbdma 23>;
 436		dma-names = "rx", "tx";
 437		status = "disabled";
 438	};
 439
 440	i2c@7000c700 {
 441		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 442		reg = <0x0 0x7000c700 0x0 0x100>;
 443		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
 444		#address-cells = <1>;
 445		#size-cells = <0>;
 446		clocks = <&tegra_car TEGRA124_CLK_I2C4>;
 447		clock-names = "div-clk";
 448		resets = <&tegra_car 103>;
 449		reset-names = "i2c";
 450		dmas = <&apbdma 26>, <&apbdma 26>;
 451		dma-names = "rx", "tx";
 452		status = "disabled";
 453	};
 454
 455	i2c@7000d000 {
 456		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 457		reg = <0x0 0x7000d000 0x0 0x100>;
 458		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
 459		#address-cells = <1>;
 460		#size-cells = <0>;
 461		clocks = <&tegra_car TEGRA124_CLK_I2C5>;
 462		clock-names = "div-clk";
 463		resets = <&tegra_car 47>;
 464		reset-names = "i2c";
 465		dmas = <&apbdma 24>, <&apbdma 24>;
 466		dma-names = "rx", "tx";
 467		status = "disabled";
 468	};
 469
 470	i2c@7000d100 {
 471		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 472		reg = <0x0 0x7000d100 0x0 0x100>;
 473		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
 474		#address-cells = <1>;
 475		#size-cells = <0>;
 476		clocks = <&tegra_car TEGRA124_CLK_I2C6>;
 477		clock-names = "div-clk";
 478		resets = <&tegra_car 166>;
 479		reset-names = "i2c";
 480		dmas = <&apbdma 30>, <&apbdma 30>;
 481		dma-names = "rx", "tx";
 482		status = "disabled";
 483	};
 484
 485	spi@7000d400 {
 486		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 487		reg = <0x0 0x7000d400 0x0 0x200>;
 488		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
 489		#address-cells = <1>;
 490		#size-cells = <0>;
 491		clocks = <&tegra_car TEGRA124_CLK_SBC1>;
 492		clock-names = "spi";
 493		resets = <&tegra_car 41>;
 494		reset-names = "spi";
 495		dmas = <&apbdma 15>, <&apbdma 15>;
 496		dma-names = "rx", "tx";
 497		status = "disabled";
 498	};
 499
 500	spi@7000d600 {
 501		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 502		reg = <0x0 0x7000d600 0x0 0x200>;
 503		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
 504		#address-cells = <1>;
 505		#size-cells = <0>;
 506		clocks = <&tegra_car TEGRA124_CLK_SBC2>;
 507		clock-names = "spi";
 508		resets = <&tegra_car 44>;
 509		reset-names = "spi";
 510		dmas = <&apbdma 16>, <&apbdma 16>;
 511		dma-names = "rx", "tx";
 512		status = "disabled";
 513	};
 514
 515	spi@7000d800 {
 516		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 517		reg = <0x0 0x7000d800 0x0 0x200>;
 518		interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
 519		#address-cells = <1>;
 520		#size-cells = <0>;
 521		clocks = <&tegra_car TEGRA124_CLK_SBC3>;
 522		clock-names = "spi";
 523		resets = <&tegra_car 46>;
 524		reset-names = "spi";
 525		dmas = <&apbdma 17>, <&apbdma 17>;
 526		dma-names = "rx", "tx";
 527		status = "disabled";
 528	};
 529
 530	spi@7000da00 {
 531		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 532		reg = <0x0 0x7000da00 0x0 0x200>;
 533		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
 534		#address-cells = <1>;
 535		#size-cells = <0>;
 536		clocks = <&tegra_car TEGRA124_CLK_SBC4>;
 537		clock-names = "spi";
 538		resets = <&tegra_car 68>;
 539		reset-names = "spi";
 540		dmas = <&apbdma 18>, <&apbdma 18>;
 541		dma-names = "rx", "tx";
 542		status = "disabled";
 543	};
 544
 545	spi@7000dc00 {
 546		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 547		reg = <0x0 0x7000dc00 0x0 0x200>;
 548		interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
 549		#address-cells = <1>;
 550		#size-cells = <0>;
 551		clocks = <&tegra_car TEGRA124_CLK_SBC5>;
 552		clock-names = "spi";
 553		resets = <&tegra_car 104>;
 554		reset-names = "spi";
 555		dmas = <&apbdma 27>, <&apbdma 27>;
 556		dma-names = "rx", "tx";
 557		status = "disabled";
 558	};
 559
 560	spi@7000de00 {
 561		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 562		reg = <0x0 0x7000de00 0x0 0x200>;
 563		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
 564		#address-cells = <1>;
 565		#size-cells = <0>;
 566		clocks = <&tegra_car TEGRA124_CLK_SBC6>;
 567		clock-names = "spi";
 568		resets = <&tegra_car 105>;
 569		reset-names = "spi";
 570		dmas = <&apbdma 28>, <&apbdma 28>;
 571		dma-names = "rx", "tx";
 572		status = "disabled";
 573	};
 574
 575	rtc@7000e000 {
 576		compatible = "nvidia,tegra124-rtc", "nvidia,tegra20-rtc";
 577		reg = <0x0 0x7000e000 0x0 0x100>;
 578		interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
 579		clocks = <&tegra_car TEGRA124_CLK_RTC>;
 580	};
 581
 582	pmc@7000e400 {
 583		compatible = "nvidia,tegra124-pmc";
 584		reg = <0x0 0x7000e400 0x0 0x400>;
 585		clocks = <&tegra_car TEGRA124_CLK_PCLK>, <&clk32k_in>;
 586		clock-names = "pclk", "clk32k_in";
 
 587	};
 588
 589	fuse@7000f800 {
 590		compatible = "nvidia,tegra124-efuse";
 591		reg = <0x0 0x7000f800 0x0 0x400>;
 592		clocks = <&tegra_car TEGRA124_CLK_FUSE>;
 593		clock-names = "fuse";
 594		resets = <&tegra_car 39>;
 595		reset-names = "fuse";
 596	};
 597
 598	mc: memory-controller@70019000 {
 599		compatible = "nvidia,tegra124-mc";
 600		reg = <0x0 0x70019000 0x0 0x1000>;
 601		clocks = <&tegra_car TEGRA124_CLK_MC>;
 602		clock-names = "mc";
 603
 604		interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
 605
 606		#iommu-cells = <1>;
 
 607	};
 608
 609	emc: emc@7001b000 {
 610		compatible = "nvidia,tegra124-emc";
 611		reg = <0x0 0x7001b000 0x0 0x1000>;
 
 
 612
 613		nvidia,memory-controller = <&mc>;
 614	};
 615
 616	sata@70020000 {
 617		compatible = "nvidia,tegra124-ahci";
 618		reg = <0x0 0x70027000 0x0 0x2000>, /* AHCI */
 619		      <0x0 0x70020000 0x0 0x7000>; /* SATA */
 620		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
 621		clocks = <&tegra_car TEGRA124_CLK_SATA>,
 622			 <&tegra_car TEGRA124_CLK_SATA_OOB>,
 623			 <&tegra_car TEGRA124_CLK_CML1>,
 624			 <&tegra_car TEGRA124_CLK_PLL_E>;
 625		clock-names = "sata", "sata-oob", "cml1", "pll_e";
 626		resets = <&tegra_car 124>,
 627			 <&tegra_car 123>,
 628			 <&tegra_car 129>;
 629		reset-names = "sata", "sata-oob", "sata-cold";
 630		status = "disabled";
 631	};
 632
 633	hda@70030000 {
 634		compatible = "nvidia,tegra124-hda", "nvidia,tegra30-hda";
 635		reg = <0x0 0x70030000 0x0 0x10000>;
 636		interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
 637		clocks = <&tegra_car TEGRA124_CLK_HDA>,
 638			 <&tegra_car TEGRA124_CLK_HDA2HDMI>,
 639			 <&tegra_car TEGRA124_CLK_HDA2CODEC_2X>;
 640		clock-names = "hda", "hda2hdmi", "hda2codec_2x";
 641		resets = <&tegra_car 125>, /* hda */
 642			 <&tegra_car 128>, /* hda2hdmi */
 643			 <&tegra_car 111>; /* hda2codec_2x */
 644		reset-names = "hda", "hda2hdmi", "hda2codec_2x";
 645		status = "disabled";
 646	};
 647
 648	usb@70090000 {
 649		compatible = "nvidia,tegra124-xusb";
 650		reg = <0x0 0x70090000 0x0 0x8000>,
 651		      <0x0 0x70098000 0x0 0x1000>,
 652		      <0x0 0x70099000 0x0 0x1000>;
 653		reg-names = "hcd", "fpci", "ipfs";
 654
 655		interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
 656			     <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
 657
 658		clocks = <&tegra_car TEGRA124_CLK_XUSB_HOST>,
 659			 <&tegra_car TEGRA124_CLK_XUSB_HOST_SRC>,
 660			 <&tegra_car TEGRA124_CLK_XUSB_FALCON_SRC>,
 661			 <&tegra_car TEGRA124_CLK_XUSB_SS>,
 662			 <&tegra_car TEGRA124_CLK_XUSB_SS_DIV2>,
 663			 <&tegra_car TEGRA124_CLK_XUSB_SS_SRC>,
 
 664			 <&tegra_car TEGRA124_CLK_XUSB_HS_SRC>,
 665			 <&tegra_car TEGRA124_CLK_XUSB_FS_SRC>,
 666			 <&tegra_car TEGRA124_CLK_PLL_U_480M>,
 667			 <&tegra_car TEGRA124_CLK_CLK_M>,
 668			 <&tegra_car TEGRA124_CLK_PLL_E>;
 669		clock-names = "xusb_host", "xusb_host_src",
 670			      "xusb_falcon_src", "xusb_ss",
 671			      "xusb_ss_div2", "xusb_ss_src",
 672			      "xusb_hs_src", "xusb_fs_src",
 673			      "pll_u_480m", "clk_m", "pll_e";
 674		resets = <&tegra_car 89>, <&tegra_car 156>,
 675			 <&tegra_car 143>;
 676		reset-names = "xusb_host", "xusb_ss", "xusb_src";
 677
 678		nvidia,xusb-padctl = <&padctl>;
 679
 680		status = "disabled";
 681	};
 682
 683	padctl: padctl@7009f000 {
 684		compatible = "nvidia,tegra124-xusb-padctl";
 685		reg = <0x0 0x7009f000 0x0 0x1000>;
 686		resets = <&tegra_car 142>;
 687		reset-names = "padctl";
 688
 689		pads {
 690			usb2 {
 691				status = "disabled";
 692
 693				lanes {
 694					usb2-0 {
 695						status = "disabled";
 696						#phy-cells = <0>;
 697					};
 698
 699					usb2-1 {
 700						status = "disabled";
 701						#phy-cells = <0>;
 702					};
 703
 704					usb2-2 {
 705						status = "disabled";
 706						#phy-cells = <0>;
 707					};
 708				};
 709			};
 710
 711			ulpi {
 712				status = "disabled";
 713
 714				lanes {
 715					ulpi-0 {
 716						status = "disabled";
 717						#phy-cells = <0>;
 718					};
 719				};
 720			};
 721
 722			hsic {
 723				status = "disabled";
 724
 725				lanes {
 726					hsic-0 {
 727						status = "disabled";
 728						#phy-cells = <0>;
 729					};
 730
 731					hsic-1 {
 732						status = "disabled";
 733						#phy-cells = <0>;
 734					};
 735				};
 736			};
 737
 738			pcie {
 739				status = "disabled";
 740
 741				lanes {
 742					pcie-0 {
 743						status = "disabled";
 744						#phy-cells = <0>;
 745					};
 746
 747					pcie-1 {
 748						status = "disabled";
 749						#phy-cells = <0>;
 750					};
 751
 752					pcie-2 {
 753						status = "disabled";
 754						#phy-cells = <0>;
 755					};
 756
 757					pcie-3 {
 758						status = "disabled";
 759						#phy-cells = <0>;
 760					};
 761
 762					pcie-4 {
 763						status = "disabled";
 764						#phy-cells = <0>;
 765					};
 766				};
 767			};
 768
 769			sata {
 770				status = "disabled";
 771
 772				lanes {
 773					sata-0 {
 774						status = "disabled";
 775						#phy-cells = <0>;
 776					};
 777				};
 778			};
 779		};
 780
 781		ports {
 782			usb2-0 {
 783				status = "disabled";
 784			};
 785
 786			usb2-1 {
 787				status = "disabled";
 788			};
 789
 790			usb2-2 {
 791				status = "disabled";
 792			};
 793
 794			ulpi-0 {
 795				status = "disabled";
 796			};
 797
 798			hsic-0 {
 799				status = "disabled";
 800			};
 801
 802			hsic-1 {
 803				status = "disabled";
 804			};
 805
 806			usb3-0 {
 807				status = "disabled";
 808			};
 809
 810			usb3-1 {
 811				status = "disabled";
 812			};
 813		};
 814	};
 815
 816	sdhci@700b0000 {
 817		compatible = "nvidia,tegra124-sdhci";
 818		reg = <0x0 0x700b0000 0x0 0x200>;
 819		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
 820		clocks = <&tegra_car TEGRA124_CLK_SDMMC1>;
 
 821		resets = <&tegra_car 14>;
 822		reset-names = "sdhci";
 823		status = "disabled";
 824	};
 825
 826	sdhci@700b0200 {
 827		compatible = "nvidia,tegra124-sdhci";
 828		reg = <0x0 0x700b0200 0x0 0x200>;
 829		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
 830		clocks = <&tegra_car TEGRA124_CLK_SDMMC2>;
 
 831		resets = <&tegra_car 9>;
 832		reset-names = "sdhci";
 833		status = "disabled";
 834	};
 835
 836	sdhci@700b0400 {
 837		compatible = "nvidia,tegra124-sdhci";
 838		reg = <0x0 0x700b0400 0x0 0x200>;
 839		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
 840		clocks = <&tegra_car TEGRA124_CLK_SDMMC3>;
 
 841		resets = <&tegra_car 69>;
 842		reset-names = "sdhci";
 843		status = "disabled";
 844	};
 845
 846	sdhci@700b0600 {
 847		compatible = "nvidia,tegra124-sdhci";
 848		reg = <0x0 0x700b0600 0x0 0x200>;
 849		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
 850		clocks = <&tegra_car TEGRA124_CLK_SDMMC4>;
 
 851		resets = <&tegra_car 15>;
 852		reset-names = "sdhci";
 853		status = "disabled";
 854	};
 855
 856	cec@70015000 {
 857		compatible = "nvidia,tegra124-cec";
 858		reg = <0x0 0x70015000 0x0 0x00001000>;
 859		interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
 860		clocks = <&tegra_car TEGRA124_CLK_CEC>;
 861		clock-names = "cec";
 862		status = "disabled";
 863		hdmi-phandle = <&hdmi>;
 864	};
 865
 866	soctherm: thermal-sensor@700e2000 {
 867		compatible = "nvidia,tegra124-soctherm";
 868		reg = <0x0 0x700e2000 0x0 0x600 /* SOC_THERM reg_base */
 869			0x0 0x60006000 0x0 0x400>; /* CAR reg_base */
 870		reg-names = "soctherm-reg", "car-reg";
 871		interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
 872		clocks = <&tegra_car TEGRA124_CLK_TSENSOR>,
 873			<&tegra_car TEGRA124_CLK_SOC_THERM>;
 874		clock-names = "tsensor", "soctherm";
 875		resets = <&tegra_car 78>;
 876		reset-names = "soctherm";
 877		#thermal-sensor-cells = <1>;
 878
 879		throttle-cfgs {
 880			throttle_heavy: heavy {
 881				nvidia,priority = <100>;
 882				nvidia,cpu-throt-percent = <85>;
 883
 884				#cooling-cells = <2>;
 885			};
 886		};
 887	};
 888
 889	dfll: clock@70110000 {
 890		compatible = "nvidia,tegra124-dfll";
 891		reg = <0 0x70110000 0 0x100>, /* DFLL control */
 892		      <0 0x70110000 0 0x100>, /* I2C output control */
 893		      <0 0x70110100 0 0x100>, /* Integrated I2C controller */
 894		      <0 0x70110200 0 0x100>; /* Look-up table RAM */
 895		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
 896		clocks = <&tegra_car TEGRA124_CLK_DFLL_SOC>,
 897			 <&tegra_car TEGRA124_CLK_DFLL_REF>,
 898			 <&tegra_car TEGRA124_CLK_I2C5>;
 899		clock-names = "soc", "ref", "i2c";
 900		resets = <&tegra_car TEGRA124_RST_DFLL_DVCO>;
 901		reset-names = "dvco";
 902		#clock-cells = <0>;
 903		clock-output-names = "dfllCPU_out";
 904		nvidia,sample-rate = <12500>;
 905		nvidia,droop-ctrl = <0x00000f00>;
 906		nvidia,force-mode = <1>;
 907		nvidia,cf = <10>;
 908		nvidia,ci = <0>;
 909		nvidia,cg = <2>;
 910		status = "disabled";
 911	};
 912
 913	ahub@70300000 {
 914		compatible = "nvidia,tegra124-ahub";
 915		reg = <0x0 0x70300000 0x0 0x200>,
 916		      <0x0 0x70300800 0x0 0x800>,
 917		      <0x0 0x70300200 0x0 0x600>;
 918		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
 919		clocks = <&tegra_car TEGRA124_CLK_D_AUDIO>,
 920			 <&tegra_car TEGRA124_CLK_APBIF>;
 921		clock-names = "d_audio", "apbif";
 922		resets = <&tegra_car 106>, /* d_audio */
 923			 <&tegra_car 107>, /* apbif */
 924			 <&tegra_car 30>,  /* i2s0 */
 925			 <&tegra_car 11>,  /* i2s1 */
 926			 <&tegra_car 18>,  /* i2s2 */
 927			 <&tegra_car 101>, /* i2s3 */
 928			 <&tegra_car 102>, /* i2s4 */
 929			 <&tegra_car 108>, /* dam0 */
 930			 <&tegra_car 109>, /* dam1 */
 931			 <&tegra_car 110>, /* dam2 */
 932			 <&tegra_car 10>,  /* spdif */
 933			 <&tegra_car 153>, /* amx */
 934			 <&tegra_car 185>, /* amx1 */
 935			 <&tegra_car 154>, /* adx */
 936			 <&tegra_car 180>, /* adx1 */
 937			 <&tegra_car 186>, /* afc0 */
 938			 <&tegra_car 187>, /* afc1 */
 939			 <&tegra_car 188>, /* afc2 */
 940			 <&tegra_car 189>, /* afc3 */
 941			 <&tegra_car 190>, /* afc4 */
 942			 <&tegra_car 191>; /* afc5 */
 943		reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
 944			      "i2s3", "i2s4", "dam0", "dam1", "dam2",
 945			      "spdif", "amx", "amx1", "adx", "adx1",
 946			      "afc0", "afc1", "afc2", "afc3", "afc4", "afc5";
 947		dmas = <&apbdma 1>, <&apbdma 1>,
 948		       <&apbdma 2>, <&apbdma 2>,
 949		       <&apbdma 3>, <&apbdma 3>,
 950		       <&apbdma 4>, <&apbdma 4>,
 951		       <&apbdma 6>, <&apbdma 6>,
 952		       <&apbdma 7>, <&apbdma 7>,
 953		       <&apbdma 12>, <&apbdma 12>,
 954		       <&apbdma 13>, <&apbdma 13>,
 955		       <&apbdma 14>, <&apbdma 14>,
 956		       <&apbdma 29>, <&apbdma 29>;
 957		dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2",
 958			    "rx3", "tx3", "rx4", "tx4", "rx5", "tx5",
 959			    "rx6", "tx6", "rx7", "tx7", "rx8", "tx8",
 960			    "rx9", "tx9";
 961		ranges;
 962		#address-cells = <2>;
 963		#size-cells = <2>;
 964
 965		tegra_i2s0: i2s@70301000 {
 966			compatible = "nvidia,tegra124-i2s";
 967			reg = <0x0 0x70301000 0x0 0x100>;
 968			nvidia,ahub-cif-ids = <4 4>;
 969			clocks = <&tegra_car TEGRA124_CLK_I2S0>;
 970			resets = <&tegra_car 30>;
 971			reset-names = "i2s";
 972			status = "disabled";
 973		};
 974
 975		tegra_i2s1: i2s@70301100 {
 976			compatible = "nvidia,tegra124-i2s";
 977			reg = <0x0 0x70301100 0x0 0x100>;
 978			nvidia,ahub-cif-ids = <5 5>;
 979			clocks = <&tegra_car TEGRA124_CLK_I2S1>;
 980			resets = <&tegra_car 11>;
 981			reset-names = "i2s";
 982			status = "disabled";
 983		};
 984
 985		tegra_i2s2: i2s@70301200 {
 986			compatible = "nvidia,tegra124-i2s";
 987			reg = <0x0 0x70301200 0x0 0x100>;
 988			nvidia,ahub-cif-ids = <6 6>;
 989			clocks = <&tegra_car TEGRA124_CLK_I2S2>;
 990			resets = <&tegra_car 18>;
 991			reset-names = "i2s";
 992			status = "disabled";
 993		};
 994
 995		tegra_i2s3: i2s@70301300 {
 996			compatible = "nvidia,tegra124-i2s";
 997			reg = <0x0 0x70301300 0x0 0x100>;
 998			nvidia,ahub-cif-ids = <7 7>;
 999			clocks = <&tegra_car TEGRA124_CLK_I2S3>;
1000			resets = <&tegra_car 101>;
1001			reset-names = "i2s";
1002			status = "disabled";
1003		};
1004
1005		tegra_i2s4: i2s@70301400 {
1006			compatible = "nvidia,tegra124-i2s";
1007			reg = <0x0 0x70301400 0x0 0x100>;
1008			nvidia,ahub-cif-ids = <8 8>;
1009			clocks = <&tegra_car TEGRA124_CLK_I2S4>;
1010			resets = <&tegra_car 102>;
1011			reset-names = "i2s";
1012			status = "disabled";
1013		};
1014	};
1015
1016	usb@7d000000 {
1017		compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
1018		reg = <0x0 0x7d000000 0x0 0x4000>;
1019		interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
1020		phy_type = "utmi";
1021		clocks = <&tegra_car TEGRA124_CLK_USBD>;
1022		resets = <&tegra_car 22>;
1023		reset-names = "usb";
1024		nvidia,phy = <&phy1>;
1025		status = "disabled";
1026	};
1027
1028	phy1: usb-phy@7d000000 {
1029		compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
1030		reg = <0x0 0x7d000000 0x0 0x4000>,
1031		      <0x0 0x7d000000 0x0 0x4000>;
1032		phy_type = "utmi";
1033		clocks = <&tegra_car TEGRA124_CLK_USBD>,
1034			 <&tegra_car TEGRA124_CLK_PLL_U>,
1035			 <&tegra_car TEGRA124_CLK_USBD>;
1036		clock-names = "reg", "pll_u", "utmi-pads";
1037		resets = <&tegra_car 22>, <&tegra_car 22>;
1038		reset-names = "usb", "utmi-pads";
 
1039		nvidia,hssync-start-delay = <0>;
1040		nvidia,idle-wait-delay = <17>;
1041		nvidia,elastic-limit = <16>;
1042		nvidia,term-range-adj = <6>;
1043		nvidia,xcvr-setup = <9>;
1044		nvidia,xcvr-lsfslew = <0>;
1045		nvidia,xcvr-lsrslew = <3>;
1046		nvidia,hssquelch-level = <2>;
1047		nvidia,hsdiscon-level = <5>;
1048		nvidia,xcvr-hsslew = <12>;
1049		nvidia,has-utmi-pad-registers;
1050		status = "disabled";
1051	};
1052
1053	usb@7d004000 {
1054		compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
1055		reg = <0x0 0x7d004000 0x0 0x4000>;
1056		interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
1057		phy_type = "utmi";
1058		clocks = <&tegra_car TEGRA124_CLK_USB2>;
1059		resets = <&tegra_car 58>;
1060		reset-names = "usb";
1061		nvidia,phy = <&phy2>;
1062		status = "disabled";
1063	};
1064
1065	phy2: usb-phy@7d004000 {
1066		compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
1067		reg = <0x0 0x7d004000 0x0 0x4000>,
1068		      <0x0 0x7d000000 0x0 0x4000>;
1069		phy_type = "utmi";
1070		clocks = <&tegra_car TEGRA124_CLK_USB2>,
1071			 <&tegra_car TEGRA124_CLK_PLL_U>,
1072			 <&tegra_car TEGRA124_CLK_USBD>;
1073		clock-names = "reg", "pll_u", "utmi-pads";
1074		resets = <&tegra_car 58>, <&tegra_car 22>;
1075		reset-names = "usb", "utmi-pads";
 
1076		nvidia,hssync-start-delay = <0>;
1077		nvidia,idle-wait-delay = <17>;
1078		nvidia,elastic-limit = <16>;
1079		nvidia,term-range-adj = <6>;
1080		nvidia,xcvr-setup = <9>;
1081		nvidia,xcvr-lsfslew = <0>;
1082		nvidia,xcvr-lsrslew = <3>;
1083		nvidia,hssquelch-level = <2>;
1084		nvidia,hsdiscon-level = <5>;
1085		nvidia,xcvr-hsslew = <12>;
1086		status = "disabled";
1087	};
1088
1089	usb@7d008000 {
1090		compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
1091		reg = <0x0 0x7d008000 0x0 0x4000>;
1092		interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
1093		phy_type = "utmi";
1094		clocks = <&tegra_car TEGRA124_CLK_USB3>;
1095		resets = <&tegra_car 59>;
1096		reset-names = "usb";
1097		nvidia,phy = <&phy3>;
1098		status = "disabled";
1099	};
1100
1101	phy3: usb-phy@7d008000 {
1102		compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
1103		reg = <0x0 0x7d008000 0x0 0x4000>,
1104		      <0x0 0x7d000000 0x0 0x4000>;
1105		phy_type = "utmi";
1106		clocks = <&tegra_car TEGRA124_CLK_USB3>,
1107			 <&tegra_car TEGRA124_CLK_PLL_U>,
1108			 <&tegra_car TEGRA124_CLK_USBD>;
1109		clock-names = "reg", "pll_u", "utmi-pads";
1110		resets = <&tegra_car 59>, <&tegra_car 22>;
1111		reset-names = "usb", "utmi-pads";
 
1112		nvidia,hssync-start-delay = <0>;
1113		nvidia,idle-wait-delay = <17>;
1114		nvidia,elastic-limit = <16>;
1115		nvidia,term-range-adj = <6>;
1116		nvidia,xcvr-setup = <9>;
1117		nvidia,xcvr-lsfslew = <0>;
1118		nvidia,xcvr-lsrslew = <3>;
1119		nvidia,hssquelch-level = <2>;
1120		nvidia,hsdiscon-level = <5>;
1121		nvidia,xcvr-hsslew = <12>;
1122		status = "disabled";
1123	};
1124
1125	cpus {
1126		#address-cells = <1>;
1127		#size-cells = <0>;
1128
1129		cpu@0 {
1130			device_type = "cpu";
1131			compatible = "arm,cortex-a15";
1132			reg = <0>;
1133
1134			clocks = <&tegra_car TEGRA124_CLK_CCLK_G>,
1135				 <&tegra_car TEGRA124_CLK_CCLK_LP>,
1136				 <&tegra_car TEGRA124_CLK_PLL_X>,
1137				 <&tegra_car TEGRA124_CLK_PLL_P>,
1138				 <&dfll>;
1139			clock-names = "cpu_g", "cpu_lp", "pll_x", "pll_p", "dfll";
1140			/* FIXME: what's the actual transition time? */
1141			clock-latency = <300000>;
1142		};
1143
1144		cpu@1 {
1145			device_type = "cpu";
1146			compatible = "arm,cortex-a15";
1147			reg = <1>;
1148		};
1149
1150		cpu@2 {
1151			device_type = "cpu";
1152			compatible = "arm,cortex-a15";
1153			reg = <2>;
1154		};
1155
1156		cpu@3 {
1157			device_type = "cpu";
1158			compatible = "arm,cortex-a15";
1159			reg = <3>;
1160		};
1161	};
1162
1163	pmu {
1164		compatible = "arm,cortex-a15-pmu";
1165		interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
1166			     <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
1167			     <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
1168			     <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
1169		interrupt-affinity = <&{/cpus/cpu@0}>,
1170				     <&{/cpus/cpu@1}>,
1171				     <&{/cpus/cpu@2}>,
1172				     <&{/cpus/cpu@3}>;
1173	};
1174
1175	thermal-zones {
1176		cpu {
1177			polling-delay-passive = <1000>;
1178			polling-delay = <1000>;
1179
1180			thermal-sensors =
1181				<&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>;
1182
1183			trips {
1184				cpu-shutdown-trip {
1185					temperature = <103000>;
1186					hysteresis = <0>;
1187					type = "critical";
1188				};
1189				cpu_throttle_trip: throttle-trip {
1190					temperature = <100000>;
1191					hysteresis = <1000>;
1192					type = "hot";
1193				};
1194			};
1195
1196			cooling-maps {
1197				map0 {
1198					trip = <&cpu_throttle_trip>;
1199					cooling-device = <&throttle_heavy 1 1>;
1200				};
1201			};
1202		};
1203
1204		mem {
1205			polling-delay-passive = <1000>;
1206			polling-delay = <1000>;
1207
1208			thermal-sensors =
1209				<&soctherm TEGRA124_SOCTHERM_SENSOR_MEM>;
1210
1211			trips {
1212				mem-shutdown-trip {
1213					temperature = <103000>;
1214					hysteresis = <0>;
1215					type = "critical";
1216				};
1217			};
1218
1219			cooling-maps {
1220				/*
1221				 * There are currently no cooling maps,
1222				 * because there are no cooling devices.
1223				 */
1224			};
1225		};
1226
1227		gpu {
1228			polling-delay-passive = <1000>;
1229			polling-delay = <1000>;
1230
1231			thermal-sensors =
1232				<&soctherm TEGRA124_SOCTHERM_SENSOR_GPU>;
1233
1234			trips {
1235				gpu-shutdown-trip {
1236					temperature = <101000>;
1237					hysteresis = <0>;
1238					type = "critical";
1239				};
1240				gpu_throttle_trip: throttle-trip {
1241					temperature = <99000>;
1242					hysteresis = <1000>;
1243					type = "hot";
1244				};
1245			};
1246
1247			cooling-maps {
1248				map0 {
1249					trip = <&gpu_throttle_trip>;
1250					cooling-device = <&throttle_heavy 1 1>;
1251				};
1252			};
1253		};
1254
1255		pllx {
1256			polling-delay-passive = <1000>;
1257			polling-delay = <1000>;
1258
1259			thermal-sensors =
1260				<&soctherm TEGRA124_SOCTHERM_SENSOR_PLLX>;
1261
1262			trips {
1263				pllx-shutdown-trip {
1264					temperature = <103000>;
1265					hysteresis = <0>;
1266					type = "critical";
1267				};
1268			};
1269
1270			cooling-maps {
1271				/*
1272				 * There are currently no cooling maps,
1273				 * because there are no cooling devices.
1274				 */
1275			};
1276		};
1277	};
1278
1279	timer {
1280		compatible = "arm,armv7-timer";
1281		interrupts = <GIC_PPI 13
1282				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1283			     <GIC_PPI 14
1284				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1285			     <GIC_PPI 11
1286				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1287			     <GIC_PPI 10
1288				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
1289		interrupt-parent = <&gic>;
1290	};
1291};
v5.9
   1// SPDX-License-Identifier: GPL-2.0
   2#include <dt-bindings/clock/tegra124-car.h>
   3#include <dt-bindings/gpio/tegra-gpio.h>
   4#include <dt-bindings/memory/tegra124-mc.h>
   5#include <dt-bindings/pinctrl/pinctrl-tegra.h>
   6#include <dt-bindings/interrupt-controller/arm-gic.h>
   7#include <dt-bindings/reset/tegra124-car.h>
   8#include <dt-bindings/thermal/tegra124-soctherm.h>
   9#include <dt-bindings/soc/tegra-pmc.h>
 
  10
  11/ {
  12	compatible = "nvidia,tegra124";
  13	interrupt-parent = <&lic>;
  14	#address-cells = <2>;
  15	#size-cells = <2>;
  16
  17	memory@80000000 {
  18		device_type = "memory";
  19		reg = <0x0 0x80000000 0x0 0x0>;
  20	};
  21
  22	pcie@1003000 {
  23		compatible = "nvidia,tegra124-pcie";
  24		device_type = "pci";
  25		reg = <0x0 0x01003000 0x0 0x00000800>, /* PADS registers */
  26		      <0x0 0x01003800 0x0 0x00000800>, /* AFI registers */
  27		      <0x0 0x02000000 0x0 0x10000000>; /* configuration space */
  28		reg-names = "pads", "afi", "cs";
  29		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
  30			     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */
  31		interrupt-names = "intr", "msi";
  32
  33		#interrupt-cells = <1>;
  34		interrupt-map-mask = <0 0 0 0>;
  35		interrupt-map = <0 0 0 0 &gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
  36
  37		bus-range = <0x00 0xff>;
  38		#address-cells = <3>;
  39		#size-cells = <2>;
  40
  41		ranges = <0x02000000 0 0x01000000 0x0 0x01000000 0 0x00001000>, /* port 0 configuration space */
  42			 <0x02000000 0 0x01001000 0x0 0x01001000 0 0x00001000>, /* port 1 configuration space */
  43			 <0x01000000 0 0x0        0x0 0x12000000 0 0x00010000>, /* downstream I/O (64 KiB) */
  44			 <0x02000000 0 0x13000000 0x0 0x13000000 0 0x0d000000>, /* non-prefetchable memory (208 MiB) */
  45			 <0x42000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */
  46
  47		clocks = <&tegra_car TEGRA124_CLK_PCIE>,
  48			 <&tegra_car TEGRA124_CLK_AFI>,
  49			 <&tegra_car TEGRA124_CLK_PLL_E>,
  50			 <&tegra_car TEGRA124_CLK_CML0>;
  51		clock-names = "pex", "afi", "pll_e", "cml";
  52		resets = <&tegra_car 70>,
  53			 <&tegra_car 72>,
  54			 <&tegra_car 74>;
  55		reset-names = "pex", "afi", "pcie_x";
  56		status = "disabled";
  57
  58		pci@1,0 {
  59			device_type = "pci";
  60			assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>;
  61			reg = <0x000800 0 0 0 0>;
  62			bus-range = <0x00 0xff>;
  63			status = "disabled";
  64
  65			#address-cells = <3>;
  66			#size-cells = <2>;
  67			ranges;
  68
  69			nvidia,num-lanes = <2>;
  70		};
  71
  72		pci@2,0 {
  73			device_type = "pci";
  74			assigned-addresses = <0x82001000 0 0x01001000 0 0x1000>;
  75			reg = <0x001000 0 0 0 0>;
  76			bus-range = <0x00 0xff>;
  77			status = "disabled";
  78
  79			#address-cells = <3>;
  80			#size-cells = <2>;
  81			ranges;
  82
  83			nvidia,num-lanes = <1>;
  84		};
  85	};
  86
  87	host1x@50000000 {
  88		compatible = "nvidia,tegra124-host1x";
  89		reg = <0x0 0x50000000 0x0 0x00034000>;
  90		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
  91			     <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
  92		interrupt-names = "syncpt", "host1x";
  93		clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
  94		clock-names = "host1x";
  95		resets = <&tegra_car 28>;
  96		reset-names = "host1x";
  97		iommus = <&mc TEGRA_SWGROUP_HC>;
  98
  99		#address-cells = <2>;
 100		#size-cells = <2>;
 101
 102		ranges = <0 0x54000000 0 0x54000000 0 0x01000000>;
 103
 104		dc@54200000 {
 105			compatible = "nvidia,tegra124-dc";
 106			reg = <0x0 0x54200000 0x0 0x00040000>;
 107			interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
 108			clocks = <&tegra_car TEGRA124_CLK_DISP1>;
 109			clock-names = "dc";
 
 110			resets = <&tegra_car 27>;
 111			reset-names = "dc";
 112
 113			iommus = <&mc TEGRA_SWGROUP_DC>;
 114
 115			nvidia,head = <0>;
 116		};
 117
 118		dc@54240000 {
 119			compatible = "nvidia,tegra124-dc";
 120			reg = <0x0 0x54240000 0x0 0x00040000>;
 121			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
 122			clocks = <&tegra_car TEGRA124_CLK_DISP2>;
 123			clock-names = "dc";
 
 124			resets = <&tegra_car 26>;
 125			reset-names = "dc";
 126
 127			iommus = <&mc TEGRA_SWGROUP_DCB>;
 128
 129			nvidia,head = <1>;
 130		};
 131
 132		hdmi: hdmi@54280000 {
 133			compatible = "nvidia,tegra124-hdmi";
 134			reg = <0x0 0x54280000 0x0 0x00040000>;
 135			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
 136			clocks = <&tegra_car TEGRA124_CLK_HDMI>,
 137				 <&tegra_car TEGRA124_CLK_PLL_D2_OUT0>;
 138			clock-names = "hdmi", "parent";
 139			resets = <&tegra_car 51>;
 140			reset-names = "hdmi";
 141			status = "disabled";
 142		};
 143
 144		vic@54340000 {
 145			compatible = "nvidia,tegra124-vic";
 146			reg = <0x0 0x54340000 0x0 0x00040000>;
 147			interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
 148			clocks = <&tegra_car TEGRA124_CLK_VIC03>;
 149			clock-names = "vic";
 150			resets = <&tegra_car 178>;
 151			reset-names = "vic";
 152
 153			iommus = <&mc TEGRA_SWGROUP_VIC>;
 154		};
 155
 156		sor@54540000 {
 157			compatible = "nvidia,tegra124-sor";
 158			reg = <0x0 0x54540000 0x0 0x00040000>;
 159			interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
 160			clocks = <&tegra_car TEGRA124_CLK_SOR0>,
 161				 <&tegra_car TEGRA124_CLK_SOR0_OUT>,
 162				 <&tegra_car TEGRA124_CLK_PLL_D_OUT0>,
 163				 <&tegra_car TEGRA124_CLK_PLL_DP>,
 164				 <&tegra_car TEGRA124_CLK_CLK_M>;
 165			clock-names = "sor", "out", "parent", "dp", "safe";
 166			resets = <&tegra_car 182>;
 167			reset-names = "sor";
 168			status = "disabled";
 169		};
 170
 171		dpaux: dpaux@545c0000 {
 172			compatible = "nvidia,tegra124-dpaux";
 173			reg = <0x0 0x545c0000 0x0 0x00040000>;
 174			interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
 175			clocks = <&tegra_car TEGRA124_CLK_DPAUX>,
 176				 <&tegra_car TEGRA124_CLK_PLL_DP>;
 177			clock-names = "dpaux", "parent";
 178			resets = <&tegra_car 181>;
 179			reset-names = "dpaux";
 180			status = "disabled";
 181
 182			i2c-bus {
 183				#address-cells = <1>;
 184				#size-cells = <0>;
 185			};
 186		};
 187	};
 188
 189	gic: interrupt-controller@50041000 {
 190		compatible = "arm,cortex-a15-gic";
 191		#interrupt-cells = <3>;
 192		interrupt-controller;
 193		reg = <0x0 0x50041000 0x0 0x1000>,
 194		      <0x0 0x50042000 0x0 0x1000>,
 195		      <0x0 0x50044000 0x0 0x2000>,
 196		      <0x0 0x50046000 0x0 0x2000>;
 197		interrupts = <GIC_PPI 9
 198			(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
 199		interrupt-parent = <&gic>;
 200	};
 201
 202	/*
 203	 * Please keep the following 0, notation in place as a former mainline
 204	 * U-Boot version was looking for that particular notation in order to
 205	 * perform required fix-ups on that GPU node.
 206	 */
 207	gpu@0,57000000 {
 208		compatible = "nvidia,gk20a";
 209		reg = <0x0 0x57000000 0x0 0x01000000>,
 210		      <0x0 0x58000000 0x0 0x01000000>;
 211		interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
 212			     <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
 213		interrupt-names = "stall", "nonstall";
 214		clocks = <&tegra_car TEGRA124_CLK_GPU>,
 215			 <&tegra_car TEGRA124_CLK_PLL_P_OUT5>;
 216		clock-names = "gpu", "pwr";
 217		resets = <&tegra_car 184>;
 218		reset-names = "gpu";
 219
 220		iommus = <&mc TEGRA_SWGROUP_GPU>;
 221
 222		status = "disabled";
 223	};
 224
 225	lic: interrupt-controller@60004000 {
 226		compatible = "nvidia,tegra124-ictlr", "nvidia,tegra30-ictlr";
 227		reg = <0x0 0x60004000 0x0 0x100>,
 228		      <0x0 0x60004100 0x0 0x100>,
 229		      <0x0 0x60004200 0x0 0x100>,
 230		      <0x0 0x60004300 0x0 0x100>,
 231		      <0x0 0x60004400 0x0 0x100>;
 232		interrupt-controller;
 233		#interrupt-cells = <3>;
 234		interrupt-parent = <&gic>;
 235	};
 236
 237	timer@60005000 {
 238		compatible = "nvidia,tegra124-timer", "nvidia,tegra30-timer", "nvidia,tegra20-timer";
 239		reg = <0x0 0x60005000 0x0 0x400>;
 240		interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
 241			     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
 242			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
 243			     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
 244			     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
 245			     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
 246		clocks = <&tegra_car TEGRA124_CLK_TIMER>;
 247	};
 248
 249	tegra_car: clock@60006000 {
 250		compatible = "nvidia,tegra124-car";
 251		reg = <0x0 0x60006000 0x0 0x1000>;
 252		#clock-cells = <1>;
 253		#reset-cells = <1>;
 254		nvidia,external-memory-controller = <&emc>;
 255	};
 256
 257	flow-controller@60007000 {
 258		compatible = "nvidia,tegra124-flowctrl";
 259		reg = <0x0 0x60007000 0x0 0x1000>;
 260	};
 261
 262	actmon@6000c800 {
 263		compatible = "nvidia,tegra124-actmon";
 264		reg = <0x0 0x6000c800 0x0 0x400>;
 265		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
 266		clocks = <&tegra_car TEGRA124_CLK_ACTMON>,
 267			 <&tegra_car TEGRA124_CLK_EMC>;
 268		clock-names = "actmon", "emc";
 269		resets = <&tegra_car 119>;
 270		reset-names = "actmon";
 271	};
 272
 273	gpio: gpio@6000d000 {
 274		compatible = "nvidia,tegra124-gpio", "nvidia,tegra30-gpio";
 275		reg = <0x0 0x6000d000 0x0 0x1000>;
 276		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
 277			     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
 278			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
 279			     <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
 280			     <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
 281			     <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
 282			     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
 283			     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
 284		#gpio-cells = <2>;
 285		gpio-controller;
 286		#interrupt-cells = <2>;
 287		interrupt-controller;
 288		/*
 289		gpio-ranges = <&pinmux 0 0 251>;
 290		*/
 291	};
 292
 293	apbdma: dma@60020000 {
 294		compatible = "nvidia,tegra124-apbdma", "nvidia,tegra148-apbdma";
 295		reg = <0x0 0x60020000 0x0 0x1400>;
 296		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
 297			     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
 298			     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
 299			     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
 300			     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
 301			     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
 302			     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
 303			     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
 304			     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
 305			     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
 306			     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
 307			     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
 308			     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
 309			     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
 310			     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
 311			     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
 312			     <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
 313			     <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
 314			     <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
 315			     <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
 316			     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
 317			     <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
 318			     <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
 319			     <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
 320			     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
 321			     <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
 322			     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
 323			     <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
 324			     <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
 325			     <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
 326			     <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
 327			     <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
 328		clocks = <&tegra_car TEGRA124_CLK_APBDMA>;
 329		resets = <&tegra_car 34>;
 330		reset-names = "dma";
 331		#dma-cells = <1>;
 332	};
 333
 334	apbmisc@70000800 {
 335		compatible = "nvidia,tegra124-apbmisc", "nvidia,tegra20-apbmisc";
 336		reg = <0x0 0x70000800 0x0 0x64>,   /* Chip revision */
 337		      <0x0 0x7000e864 0x0 0x04>;   /* Strapping options */
 338	};
 339
 340	pinmux: pinmux@70000868 {
 341		compatible = "nvidia,tegra124-pinmux";
 342		reg = <0x0 0x70000868 0x0 0x164>, /* Pad control registers */
 343		      <0x0 0x70003000 0x0 0x434>, /* Mux registers */
 344		      <0x0 0x70000820 0x0 0x008>; /* MIPI pad control */
 345	};
 346
 347	/*
 348	 * There are two serial driver i.e. 8250 based simple serial
 349	 * driver and APB DMA based serial driver for higher baudrate
 350	 * and performace. To enable the 8250 based driver, the compatible
 351	 * is "nvidia,tegra124-uart", "nvidia,tegra20-uart" and to enable
 352	 * the APB DMA based serial driver, the compatible is
 353	 * "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart".
 354	 */
 355	uarta: serial@70006000 {
 356		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 357		reg = <0x0 0x70006000 0x0 0x40>;
 358		reg-shift = <2>;
 359		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
 360		clocks = <&tegra_car TEGRA124_CLK_UARTA>;
 361		resets = <&tegra_car 6>;
 362		reset-names = "serial";
 363		dmas = <&apbdma 8>, <&apbdma 8>;
 364		dma-names = "rx", "tx";
 365		status = "disabled";
 366	};
 367
 368	uartb: serial@70006040 {
 369		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 370		reg = <0x0 0x70006040 0x0 0x40>;
 371		reg-shift = <2>;
 372		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
 373		clocks = <&tegra_car TEGRA124_CLK_UARTB>;
 374		resets = <&tegra_car 7>;
 375		reset-names = "serial";
 376		dmas = <&apbdma 9>, <&apbdma 9>;
 377		dma-names = "rx", "tx";
 378		status = "disabled";
 379	};
 380
 381	uartc: serial@70006200 {
 382		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 383		reg = <0x0 0x70006200 0x0 0x40>;
 384		reg-shift = <2>;
 385		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
 386		clocks = <&tegra_car TEGRA124_CLK_UARTC>;
 387		resets = <&tegra_car 55>;
 388		reset-names = "serial";
 389		dmas = <&apbdma 10>, <&apbdma 10>;
 390		dma-names = "rx", "tx";
 391		status = "disabled";
 392	};
 393
 394	uartd: serial@70006300 {
 395		compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
 396		reg = <0x0 0x70006300 0x0 0x40>;
 397		reg-shift = <2>;
 398		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
 399		clocks = <&tegra_car TEGRA124_CLK_UARTD>;
 400		resets = <&tegra_car 65>;
 401		reset-names = "serial";
 402		dmas = <&apbdma 19>, <&apbdma 19>;
 403		dma-names = "rx", "tx";
 404		status = "disabled";
 405	};
 406
 407	pwm: pwm@7000a000 {
 408		compatible = "nvidia,tegra124-pwm", "nvidia,tegra20-pwm";
 409		reg = <0x0 0x7000a000 0x0 0x100>;
 410		#pwm-cells = <2>;
 411		clocks = <&tegra_car TEGRA124_CLK_PWM>;
 412		resets = <&tegra_car 17>;
 413		reset-names = "pwm";
 414		status = "disabled";
 415	};
 416
 417	i2c@7000c000 {
 418		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 419		reg = <0x0 0x7000c000 0x0 0x100>;
 420		interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
 421		#address-cells = <1>;
 422		#size-cells = <0>;
 423		clocks = <&tegra_car TEGRA124_CLK_I2C1>;
 424		clock-names = "div-clk";
 425		resets = <&tegra_car 12>;
 426		reset-names = "i2c";
 427		dmas = <&apbdma 21>, <&apbdma 21>;
 428		dma-names = "rx", "tx";
 429		status = "disabled";
 430	};
 431
 432	i2c@7000c400 {
 433		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 434		reg = <0x0 0x7000c400 0x0 0x100>;
 435		interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
 436		#address-cells = <1>;
 437		#size-cells = <0>;
 438		clocks = <&tegra_car TEGRA124_CLK_I2C2>;
 439		clock-names = "div-clk";
 440		resets = <&tegra_car 54>;
 441		reset-names = "i2c";
 442		dmas = <&apbdma 22>, <&apbdma 22>;
 443		dma-names = "rx", "tx";
 444		status = "disabled";
 445	};
 446
 447	i2c@7000c500 {
 448		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 449		reg = <0x0 0x7000c500 0x0 0x100>;
 450		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
 451		#address-cells = <1>;
 452		#size-cells = <0>;
 453		clocks = <&tegra_car TEGRA124_CLK_I2C3>;
 454		clock-names = "div-clk";
 455		resets = <&tegra_car 67>;
 456		reset-names = "i2c";
 457		dmas = <&apbdma 23>, <&apbdma 23>;
 458		dma-names = "rx", "tx";
 459		status = "disabled";
 460	};
 461
 462	i2c@7000c700 {
 463		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 464		reg = <0x0 0x7000c700 0x0 0x100>;
 465		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
 466		#address-cells = <1>;
 467		#size-cells = <0>;
 468		clocks = <&tegra_car TEGRA124_CLK_I2C4>;
 469		clock-names = "div-clk";
 470		resets = <&tegra_car 103>;
 471		reset-names = "i2c";
 472		dmas = <&apbdma 26>, <&apbdma 26>;
 473		dma-names = "rx", "tx";
 474		status = "disabled";
 475	};
 476
 477	i2c@7000d000 {
 478		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 479		reg = <0x0 0x7000d000 0x0 0x100>;
 480		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
 481		#address-cells = <1>;
 482		#size-cells = <0>;
 483		clocks = <&tegra_car TEGRA124_CLK_I2C5>;
 484		clock-names = "div-clk";
 485		resets = <&tegra_car 47>;
 486		reset-names = "i2c";
 487		dmas = <&apbdma 24>, <&apbdma 24>;
 488		dma-names = "rx", "tx";
 489		status = "disabled";
 490	};
 491
 492	i2c@7000d100 {
 493		compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
 494		reg = <0x0 0x7000d100 0x0 0x100>;
 495		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
 496		#address-cells = <1>;
 497		#size-cells = <0>;
 498		clocks = <&tegra_car TEGRA124_CLK_I2C6>;
 499		clock-names = "div-clk";
 500		resets = <&tegra_car 166>;
 501		reset-names = "i2c";
 502		dmas = <&apbdma 30>, <&apbdma 30>;
 503		dma-names = "rx", "tx";
 504		status = "disabled";
 505	};
 506
 507	spi@7000d400 {
 508		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 509		reg = <0x0 0x7000d400 0x0 0x200>;
 510		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
 511		#address-cells = <1>;
 512		#size-cells = <0>;
 513		clocks = <&tegra_car TEGRA124_CLK_SBC1>;
 514		clock-names = "spi";
 515		resets = <&tegra_car 41>;
 516		reset-names = "spi";
 517		dmas = <&apbdma 15>, <&apbdma 15>;
 518		dma-names = "rx", "tx";
 519		status = "disabled";
 520	};
 521
 522	spi@7000d600 {
 523		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 524		reg = <0x0 0x7000d600 0x0 0x200>;
 525		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
 526		#address-cells = <1>;
 527		#size-cells = <0>;
 528		clocks = <&tegra_car TEGRA124_CLK_SBC2>;
 529		clock-names = "spi";
 530		resets = <&tegra_car 44>;
 531		reset-names = "spi";
 532		dmas = <&apbdma 16>, <&apbdma 16>;
 533		dma-names = "rx", "tx";
 534		status = "disabled";
 535	};
 536
 537	spi@7000d800 {
 538		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 539		reg = <0x0 0x7000d800 0x0 0x200>;
 540		interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
 541		#address-cells = <1>;
 542		#size-cells = <0>;
 543		clocks = <&tegra_car TEGRA124_CLK_SBC3>;
 544		clock-names = "spi";
 545		resets = <&tegra_car 46>;
 546		reset-names = "spi";
 547		dmas = <&apbdma 17>, <&apbdma 17>;
 548		dma-names = "rx", "tx";
 549		status = "disabled";
 550	};
 551
 552	spi@7000da00 {
 553		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 554		reg = <0x0 0x7000da00 0x0 0x200>;
 555		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
 556		#address-cells = <1>;
 557		#size-cells = <0>;
 558		clocks = <&tegra_car TEGRA124_CLK_SBC4>;
 559		clock-names = "spi";
 560		resets = <&tegra_car 68>;
 561		reset-names = "spi";
 562		dmas = <&apbdma 18>, <&apbdma 18>;
 563		dma-names = "rx", "tx";
 564		status = "disabled";
 565	};
 566
 567	spi@7000dc00 {
 568		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 569		reg = <0x0 0x7000dc00 0x0 0x200>;
 570		interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
 571		#address-cells = <1>;
 572		#size-cells = <0>;
 573		clocks = <&tegra_car TEGRA124_CLK_SBC5>;
 574		clock-names = "spi";
 575		resets = <&tegra_car 104>;
 576		reset-names = "spi";
 577		dmas = <&apbdma 27>, <&apbdma 27>;
 578		dma-names = "rx", "tx";
 579		status = "disabled";
 580	};
 581
 582	spi@7000de00 {
 583		compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
 584		reg = <0x0 0x7000de00 0x0 0x200>;
 585		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
 586		#address-cells = <1>;
 587		#size-cells = <0>;
 588		clocks = <&tegra_car TEGRA124_CLK_SBC6>;
 589		clock-names = "spi";
 590		resets = <&tegra_car 105>;
 591		reset-names = "spi";
 592		dmas = <&apbdma 28>, <&apbdma 28>;
 593		dma-names = "rx", "tx";
 594		status = "disabled";
 595	};
 596
 597	rtc@7000e000 {
 598		compatible = "nvidia,tegra124-rtc", "nvidia,tegra20-rtc";
 599		reg = <0x0 0x7000e000 0x0 0x100>;
 600		interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
 601		clocks = <&tegra_car TEGRA124_CLK_RTC>;
 602	};
 603
 604	tegra_pmc: pmc@7000e400 {
 605		compatible = "nvidia,tegra124-pmc";
 606		reg = <0x0 0x7000e400 0x0 0x400>;
 607		clocks = <&tegra_car TEGRA124_CLK_PCLK>, <&clk32k_in>;
 608		clock-names = "pclk", "clk32k_in";
 609		#clock-cells = <1>;
 610	};
 611
 612	fuse@7000f800 {
 613		compatible = "nvidia,tegra124-efuse";
 614		reg = <0x0 0x7000f800 0x0 0x400>;
 615		clocks = <&tegra_car TEGRA124_CLK_FUSE>;
 616		clock-names = "fuse";
 617		resets = <&tegra_car 39>;
 618		reset-names = "fuse";
 619	};
 620
 621	mc: memory-controller@70019000 {
 622		compatible = "nvidia,tegra124-mc";
 623		reg = <0x0 0x70019000 0x0 0x1000>;
 624		clocks = <&tegra_car TEGRA124_CLK_MC>;
 625		clock-names = "mc";
 626
 627		interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
 628
 629		#iommu-cells = <1>;
 630		#reset-cells = <1>;
 631	};
 632
 633	emc: external-memory-controller@7001b000 {
 634		compatible = "nvidia,tegra124-emc";
 635		reg = <0x0 0x7001b000 0x0 0x1000>;
 636		clocks = <&tegra_car TEGRA124_CLK_EMC>;
 637		clock-names = "emc";
 638
 639		nvidia,memory-controller = <&mc>;
 640	};
 641
 642	sata@70020000 {
 643		compatible = "nvidia,tegra124-ahci";
 644		reg = <0x0 0x70027000 0x0 0x2000>, /* AHCI */
 645		      <0x0 0x70020000 0x0 0x7000>; /* SATA */
 646		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
 647		clocks = <&tegra_car TEGRA124_CLK_SATA>,
 648			 <&tegra_car TEGRA124_CLK_SATA_OOB>,
 649			 <&tegra_car TEGRA124_CLK_CML1>,
 650			 <&tegra_car TEGRA124_CLK_PLL_E>;
 651		clock-names = "sata", "sata-oob", "cml1", "pll_e";
 652		resets = <&tegra_car 124>,
 653			 <&tegra_car 123>,
 654			 <&tegra_car 129>;
 655		reset-names = "sata", "sata-oob", "sata-cold";
 656		status = "disabled";
 657	};
 658
 659	hda@70030000 {
 660		compatible = "nvidia,tegra124-hda", "nvidia,tegra30-hda";
 661		reg = <0x0 0x70030000 0x0 0x10000>;
 662		interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
 663		clocks = <&tegra_car TEGRA124_CLK_HDA>,
 664			 <&tegra_car TEGRA124_CLK_HDA2HDMI>,
 665			 <&tegra_car TEGRA124_CLK_HDA2CODEC_2X>;
 666		clock-names = "hda", "hda2hdmi", "hda2codec_2x";
 667		resets = <&tegra_car 125>, /* hda */
 668			 <&tegra_car 128>, /* hda2hdmi */
 669			 <&tegra_car 111>; /* hda2codec_2x */
 670		reset-names = "hda", "hda2hdmi", "hda2codec_2x";
 671		status = "disabled";
 672	};
 673
 674	usb@70090000 {
 675		compatible = "nvidia,tegra124-xusb";
 676		reg = <0x0 0x70090000 0x0 0x8000>,
 677		      <0x0 0x70098000 0x0 0x1000>,
 678		      <0x0 0x70099000 0x0 0x1000>;
 679		reg-names = "hcd", "fpci", "ipfs";
 680
 681		interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
 682			     <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
 683
 684		clocks = <&tegra_car TEGRA124_CLK_XUSB_HOST>,
 685			 <&tegra_car TEGRA124_CLK_XUSB_HOST_SRC>,
 686			 <&tegra_car TEGRA124_CLK_XUSB_FALCON_SRC>,
 687			 <&tegra_car TEGRA124_CLK_XUSB_SS>,
 
 688			 <&tegra_car TEGRA124_CLK_XUSB_SS_SRC>,
 689			 <&tegra_car TEGRA124_CLK_XUSB_SS_DIV2>,
 690			 <&tegra_car TEGRA124_CLK_XUSB_HS_SRC>,
 691			 <&tegra_car TEGRA124_CLK_XUSB_FS_SRC>,
 692			 <&tegra_car TEGRA124_CLK_PLL_U_480M>,
 693			 <&tegra_car TEGRA124_CLK_CLK_M>,
 694			 <&tegra_car TEGRA124_CLK_PLL_E>;
 695		clock-names = "xusb_host", "xusb_host_src",
 696			      "xusb_falcon_src", "xusb_ss",
 697			      "xusb_ss_src", "xusb_ss_div2",
 698			      "xusb_hs_src", "xusb_fs_src",
 699			      "pll_u_480m", "clk_m", "pll_e";
 700		resets = <&tegra_car 89>, <&tegra_car 156>,
 701			 <&tegra_car 143>;
 702		reset-names = "xusb_host", "xusb_ss", "xusb_src";
 703
 704		nvidia,xusb-padctl = <&padctl>;
 705
 706		status = "disabled";
 707	};
 708
 709	padctl: padctl@7009f000 {
 710		compatible = "nvidia,tegra124-xusb-padctl";
 711		reg = <0x0 0x7009f000 0x0 0x1000>;
 712		resets = <&tegra_car 142>;
 713		reset-names = "padctl";
 714
 715		pads {
 716			usb2 {
 717				status = "disabled";
 718
 719				lanes {
 720					usb2-0 {
 721						status = "disabled";
 722						#phy-cells = <0>;
 723					};
 724
 725					usb2-1 {
 726						status = "disabled";
 727						#phy-cells = <0>;
 728					};
 729
 730					usb2-2 {
 731						status = "disabled";
 732						#phy-cells = <0>;
 733					};
 734				};
 735			};
 736
 737			ulpi {
 738				status = "disabled";
 739
 740				lanes {
 741					ulpi-0 {
 742						status = "disabled";
 743						#phy-cells = <0>;
 744					};
 745				};
 746			};
 747
 748			hsic {
 749				status = "disabled";
 750
 751				lanes {
 752					hsic-0 {
 753						status = "disabled";
 754						#phy-cells = <0>;
 755					};
 756
 757					hsic-1 {
 758						status = "disabled";
 759						#phy-cells = <0>;
 760					};
 761				};
 762			};
 763
 764			pcie {
 765				status = "disabled";
 766
 767				lanes {
 768					pcie-0 {
 769						status = "disabled";
 770						#phy-cells = <0>;
 771					};
 772
 773					pcie-1 {
 774						status = "disabled";
 775						#phy-cells = <0>;
 776					};
 777
 778					pcie-2 {
 779						status = "disabled";
 780						#phy-cells = <0>;
 781					};
 782
 783					pcie-3 {
 784						status = "disabled";
 785						#phy-cells = <0>;
 786					};
 787
 788					pcie-4 {
 789						status = "disabled";
 790						#phy-cells = <0>;
 791					};
 792				};
 793			};
 794
 795			sata {
 796				status = "disabled";
 797
 798				lanes {
 799					sata-0 {
 800						status = "disabled";
 801						#phy-cells = <0>;
 802					};
 803				};
 804			};
 805		};
 806
 807		ports {
 808			usb2-0 {
 809				status = "disabled";
 810			};
 811
 812			usb2-1 {
 813				status = "disabled";
 814			};
 815
 816			usb2-2 {
 817				status = "disabled";
 818			};
 819
 820			ulpi-0 {
 821				status = "disabled";
 822			};
 823
 824			hsic-0 {
 825				status = "disabled";
 826			};
 827
 828			hsic-1 {
 829				status = "disabled";
 830			};
 831
 832			usb3-0 {
 833				status = "disabled";
 834			};
 835
 836			usb3-1 {
 837				status = "disabled";
 838			};
 839		};
 840	};
 841
 842	mmc@700b0000 {
 843		compatible = "nvidia,tegra124-sdhci";
 844		reg = <0x0 0x700b0000 0x0 0x200>;
 845		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
 846		clocks = <&tegra_car TEGRA124_CLK_SDMMC1>;
 847		clock-names = "sdhci";
 848		resets = <&tegra_car 14>;
 849		reset-names = "sdhci";
 850		status = "disabled";
 851	};
 852
 853	mmc@700b0200 {
 854		compatible = "nvidia,tegra124-sdhci";
 855		reg = <0x0 0x700b0200 0x0 0x200>;
 856		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
 857		clocks = <&tegra_car TEGRA124_CLK_SDMMC2>;
 858		clock-names = "sdhci";
 859		resets = <&tegra_car 9>;
 860		reset-names = "sdhci";
 861		status = "disabled";
 862	};
 863
 864	mmc@700b0400 {
 865		compatible = "nvidia,tegra124-sdhci";
 866		reg = <0x0 0x700b0400 0x0 0x200>;
 867		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
 868		clocks = <&tegra_car TEGRA124_CLK_SDMMC3>;
 869		clock-names = "sdhci";
 870		resets = <&tegra_car 69>;
 871		reset-names = "sdhci";
 872		status = "disabled";
 873	};
 874
 875	mmc@700b0600 {
 876		compatible = "nvidia,tegra124-sdhci";
 877		reg = <0x0 0x700b0600 0x0 0x200>;
 878		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
 879		clocks = <&tegra_car TEGRA124_CLK_SDMMC4>;
 880		clock-names = "sdhci";
 881		resets = <&tegra_car 15>;
 882		reset-names = "sdhci";
 883		status = "disabled";
 884	};
 885
 886	cec@70015000 {
 887		compatible = "nvidia,tegra124-cec";
 888		reg = <0x0 0x70015000 0x0 0x00001000>;
 889		interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
 890		clocks = <&tegra_car TEGRA124_CLK_CEC>;
 891		clock-names = "cec";
 892		status = "disabled";
 893		hdmi-phandle = <&hdmi>;
 894	};
 895
 896	soctherm: thermal-sensor@700e2000 {
 897		compatible = "nvidia,tegra124-soctherm";
 898		reg = <0x0 0x700e2000 0x0 0x600>, /* SOC_THERM reg_base */
 899		      <0x0 0x60006000 0x0 0x400>; /* CAR reg_base */
 900		reg-names = "soctherm-reg", "car-reg";
 901		interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
 902		clocks = <&tegra_car TEGRA124_CLK_TSENSOR>,
 903			<&tegra_car TEGRA124_CLK_SOC_THERM>;
 904		clock-names = "tsensor", "soctherm";
 905		resets = <&tegra_car 78>;
 906		reset-names = "soctherm";
 907		#thermal-sensor-cells = <1>;
 908
 909		throttle-cfgs {
 910			throttle_heavy: heavy {
 911				nvidia,priority = <100>;
 912				nvidia,cpu-throt-percent = <85>;
 913
 914				#cooling-cells = <2>;
 915			};
 916		};
 917	};
 918
 919	dfll: clock@70110000 {
 920		compatible = "nvidia,tegra124-dfll";
 921		reg = <0 0x70110000 0 0x100>, /* DFLL control */
 922		      <0 0x70110000 0 0x100>, /* I2C output control */
 923		      <0 0x70110100 0 0x100>, /* Integrated I2C controller */
 924		      <0 0x70110200 0 0x100>; /* Look-up table RAM */
 925		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
 926		clocks = <&tegra_car TEGRA124_CLK_DFLL_SOC>,
 927			 <&tegra_car TEGRA124_CLK_DFLL_REF>,
 928			 <&tegra_car TEGRA124_CLK_I2C5>;
 929		clock-names = "soc", "ref", "i2c";
 930		resets = <&tegra_car TEGRA124_RST_DFLL_DVCO>;
 931		reset-names = "dvco";
 932		#clock-cells = <0>;
 933		clock-output-names = "dfllCPU_out";
 934		nvidia,sample-rate = <12500>;
 935		nvidia,droop-ctrl = <0x00000f00>;
 936		nvidia,force-mode = <1>;
 937		nvidia,cf = <10>;
 938		nvidia,ci = <0>;
 939		nvidia,cg = <2>;
 940		status = "disabled";
 941	};
 942
 943	ahub@70300000 {
 944		compatible = "nvidia,tegra124-ahub";
 945		reg = <0x0 0x70300000 0x0 0x200>,
 946		      <0x0 0x70300800 0x0 0x800>,
 947		      <0x0 0x70300200 0x0 0x600>;
 948		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
 949		clocks = <&tegra_car TEGRA124_CLK_D_AUDIO>,
 950			 <&tegra_car TEGRA124_CLK_APBIF>;
 951		clock-names = "d_audio", "apbif";
 952		resets = <&tegra_car 106>, /* d_audio */
 953			 <&tegra_car 107>, /* apbif */
 954			 <&tegra_car 30>,  /* i2s0 */
 955			 <&tegra_car 11>,  /* i2s1 */
 956			 <&tegra_car 18>,  /* i2s2 */
 957			 <&tegra_car 101>, /* i2s3 */
 958			 <&tegra_car 102>, /* i2s4 */
 959			 <&tegra_car 108>, /* dam0 */
 960			 <&tegra_car 109>, /* dam1 */
 961			 <&tegra_car 110>, /* dam2 */
 962			 <&tegra_car 10>,  /* spdif */
 963			 <&tegra_car 153>, /* amx */
 964			 <&tegra_car 185>, /* amx1 */
 965			 <&tegra_car 154>, /* adx */
 966			 <&tegra_car 180>, /* adx1 */
 967			 <&tegra_car 186>, /* afc0 */
 968			 <&tegra_car 187>, /* afc1 */
 969			 <&tegra_car 188>, /* afc2 */
 970			 <&tegra_car 189>, /* afc3 */
 971			 <&tegra_car 190>, /* afc4 */
 972			 <&tegra_car 191>; /* afc5 */
 973		reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
 974			      "i2s3", "i2s4", "dam0", "dam1", "dam2",
 975			      "spdif", "amx", "amx1", "adx", "adx1",
 976			      "afc0", "afc1", "afc2", "afc3", "afc4", "afc5";
 977		dmas = <&apbdma 1>, <&apbdma 1>,
 978		       <&apbdma 2>, <&apbdma 2>,
 979		       <&apbdma 3>, <&apbdma 3>,
 980		       <&apbdma 4>, <&apbdma 4>,
 981		       <&apbdma 6>, <&apbdma 6>,
 982		       <&apbdma 7>, <&apbdma 7>,
 983		       <&apbdma 12>, <&apbdma 12>,
 984		       <&apbdma 13>, <&apbdma 13>,
 985		       <&apbdma 14>, <&apbdma 14>,
 986		       <&apbdma 29>, <&apbdma 29>;
 987		dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2",
 988			    "rx3", "tx3", "rx4", "tx4", "rx5", "tx5",
 989			    "rx6", "tx6", "rx7", "tx7", "rx8", "tx8",
 990			    "rx9", "tx9";
 991		ranges;
 992		#address-cells = <2>;
 993		#size-cells = <2>;
 994
 995		tegra_i2s0: i2s@70301000 {
 996			compatible = "nvidia,tegra124-i2s";
 997			reg = <0x0 0x70301000 0x0 0x100>;
 998			nvidia,ahub-cif-ids = <4 4>;
 999			clocks = <&tegra_car TEGRA124_CLK_I2S0>;
1000			resets = <&tegra_car 30>;
1001			reset-names = "i2s";
1002			status = "disabled";
1003		};
1004
1005		tegra_i2s1: i2s@70301100 {
1006			compatible = "nvidia,tegra124-i2s";
1007			reg = <0x0 0x70301100 0x0 0x100>;
1008			nvidia,ahub-cif-ids = <5 5>;
1009			clocks = <&tegra_car TEGRA124_CLK_I2S1>;
1010			resets = <&tegra_car 11>;
1011			reset-names = "i2s";
1012			status = "disabled";
1013		};
1014
1015		tegra_i2s2: i2s@70301200 {
1016			compatible = "nvidia,tegra124-i2s";
1017			reg = <0x0 0x70301200 0x0 0x100>;
1018			nvidia,ahub-cif-ids = <6 6>;
1019			clocks = <&tegra_car TEGRA124_CLK_I2S2>;
1020			resets = <&tegra_car 18>;
1021			reset-names = "i2s";
1022			status = "disabled";
1023		};
1024
1025		tegra_i2s3: i2s@70301300 {
1026			compatible = "nvidia,tegra124-i2s";
1027			reg = <0x0 0x70301300 0x0 0x100>;
1028			nvidia,ahub-cif-ids = <7 7>;
1029			clocks = <&tegra_car TEGRA124_CLK_I2S3>;
1030			resets = <&tegra_car 101>;
1031			reset-names = "i2s";
1032			status = "disabled";
1033		};
1034
1035		tegra_i2s4: i2s@70301400 {
1036			compatible = "nvidia,tegra124-i2s";
1037			reg = <0x0 0x70301400 0x0 0x100>;
1038			nvidia,ahub-cif-ids = <8 8>;
1039			clocks = <&tegra_car TEGRA124_CLK_I2S4>;
1040			resets = <&tegra_car 102>;
1041			reset-names = "i2s";
1042			status = "disabled";
1043		};
1044	};
1045
1046	usb@7d000000 {
1047		compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
1048		reg = <0x0 0x7d000000 0x0 0x4000>;
1049		interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
1050		phy_type = "utmi";
1051		clocks = <&tegra_car TEGRA124_CLK_USBD>;
1052		resets = <&tegra_car 22>;
1053		reset-names = "usb";
1054		nvidia,phy = <&phy1>;
1055		status = "disabled";
1056	};
1057
1058	phy1: usb-phy@7d000000 {
1059		compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
1060		reg = <0x0 0x7d000000 0x0 0x4000>,
1061		      <0x0 0x7d000000 0x0 0x4000>;
1062		phy_type = "utmi";
1063		clocks = <&tegra_car TEGRA124_CLK_USBD>,
1064			 <&tegra_car TEGRA124_CLK_PLL_U>,
1065			 <&tegra_car TEGRA124_CLK_USBD>;
1066		clock-names = "reg", "pll_u", "utmi-pads";
1067		resets = <&tegra_car 22>, <&tegra_car 22>;
1068		reset-names = "usb", "utmi-pads";
1069		#phy-cells = <0>;
1070		nvidia,hssync-start-delay = <0>;
1071		nvidia,idle-wait-delay = <17>;
1072		nvidia,elastic-limit = <16>;
1073		nvidia,term-range-adj = <6>;
1074		nvidia,xcvr-setup = <9>;
1075		nvidia,xcvr-lsfslew = <0>;
1076		nvidia,xcvr-lsrslew = <3>;
1077		nvidia,hssquelch-level = <2>;
1078		nvidia,hsdiscon-level = <5>;
1079		nvidia,xcvr-hsslew = <12>;
1080		nvidia,has-utmi-pad-registers;
1081		status = "disabled";
1082	};
1083
1084	usb@7d004000 {
1085		compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
1086		reg = <0x0 0x7d004000 0x0 0x4000>;
1087		interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
1088		phy_type = "utmi";
1089		clocks = <&tegra_car TEGRA124_CLK_USB2>;
1090		resets = <&tegra_car 58>;
1091		reset-names = "usb";
1092		nvidia,phy = <&phy2>;
1093		status = "disabled";
1094	};
1095
1096	phy2: usb-phy@7d004000 {
1097		compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
1098		reg = <0x0 0x7d004000 0x0 0x4000>,
1099		      <0x0 0x7d000000 0x0 0x4000>;
1100		phy_type = "utmi";
1101		clocks = <&tegra_car TEGRA124_CLK_USB2>,
1102			 <&tegra_car TEGRA124_CLK_PLL_U>,
1103			 <&tegra_car TEGRA124_CLK_USBD>;
1104		clock-names = "reg", "pll_u", "utmi-pads";
1105		resets = <&tegra_car 58>, <&tegra_car 22>;
1106		reset-names = "usb", "utmi-pads";
1107		#phy-cells = <0>;
1108		nvidia,hssync-start-delay = <0>;
1109		nvidia,idle-wait-delay = <17>;
1110		nvidia,elastic-limit = <16>;
1111		nvidia,term-range-adj = <6>;
1112		nvidia,xcvr-setup = <9>;
1113		nvidia,xcvr-lsfslew = <0>;
1114		nvidia,xcvr-lsrslew = <3>;
1115		nvidia,hssquelch-level = <2>;
1116		nvidia,hsdiscon-level = <5>;
1117		nvidia,xcvr-hsslew = <12>;
1118		status = "disabled";
1119	};
1120
1121	usb@7d008000 {
1122		compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
1123		reg = <0x0 0x7d008000 0x0 0x4000>;
1124		interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
1125		phy_type = "utmi";
1126		clocks = <&tegra_car TEGRA124_CLK_USB3>;
1127		resets = <&tegra_car 59>;
1128		reset-names = "usb";
1129		nvidia,phy = <&phy3>;
1130		status = "disabled";
1131	};
1132
1133	phy3: usb-phy@7d008000 {
1134		compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
1135		reg = <0x0 0x7d008000 0x0 0x4000>,
1136		      <0x0 0x7d000000 0x0 0x4000>;
1137		phy_type = "utmi";
1138		clocks = <&tegra_car TEGRA124_CLK_USB3>,
1139			 <&tegra_car TEGRA124_CLK_PLL_U>,
1140			 <&tegra_car TEGRA124_CLK_USBD>;
1141		clock-names = "reg", "pll_u", "utmi-pads";
1142		resets = <&tegra_car 59>, <&tegra_car 22>;
1143		reset-names = "usb", "utmi-pads";
1144		#phy-cells = <0>;
1145		nvidia,hssync-start-delay = <0>;
1146		nvidia,idle-wait-delay = <17>;
1147		nvidia,elastic-limit = <16>;
1148		nvidia,term-range-adj = <6>;
1149		nvidia,xcvr-setup = <9>;
1150		nvidia,xcvr-lsfslew = <0>;
1151		nvidia,xcvr-lsrslew = <3>;
1152		nvidia,hssquelch-level = <2>;
1153		nvidia,hsdiscon-level = <5>;
1154		nvidia,xcvr-hsslew = <12>;
1155		status = "disabled";
1156	};
1157
1158	cpus {
1159		#address-cells = <1>;
1160		#size-cells = <0>;
1161
1162		cpu@0 {
1163			device_type = "cpu";
1164			compatible = "arm,cortex-a15";
1165			reg = <0>;
1166
1167			clocks = <&tegra_car TEGRA124_CLK_CCLK_G>,
1168				 <&tegra_car TEGRA124_CLK_CCLK_LP>,
1169				 <&tegra_car TEGRA124_CLK_PLL_X>,
1170				 <&tegra_car TEGRA124_CLK_PLL_P>,
1171				 <&dfll>;
1172			clock-names = "cpu_g", "cpu_lp", "pll_x", "pll_p", "dfll";
1173			/* FIXME: what's the actual transition time? */
1174			clock-latency = <300000>;
1175		};
1176
1177		cpu@1 {
1178			device_type = "cpu";
1179			compatible = "arm,cortex-a15";
1180			reg = <1>;
1181		};
1182
1183		cpu@2 {
1184			device_type = "cpu";
1185			compatible = "arm,cortex-a15";
1186			reg = <2>;
1187		};
1188
1189		cpu@3 {
1190			device_type = "cpu";
1191			compatible = "arm,cortex-a15";
1192			reg = <3>;
1193		};
1194	};
1195
1196	pmu {
1197		compatible = "arm,cortex-a15-pmu";
1198		interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
1199			     <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
1200			     <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
1201			     <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
1202		interrupt-affinity = <&{/cpus/cpu@0}>,
1203				     <&{/cpus/cpu@1}>,
1204				     <&{/cpus/cpu@2}>,
1205				     <&{/cpus/cpu@3}>;
1206	};
1207
1208	thermal-zones {
1209		cpu {
1210			polling-delay-passive = <1000>;
1211			polling-delay = <1000>;
1212
1213			thermal-sensors =
1214				<&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>;
1215
1216			trips {
1217				cpu-shutdown-trip {
1218					temperature = <103000>;
1219					hysteresis = <0>;
1220					type = "critical";
1221				};
1222				cpu_throttle_trip: throttle-trip {
1223					temperature = <100000>;
1224					hysteresis = <1000>;
1225					type = "hot";
1226				};
1227			};
1228
1229			cooling-maps {
1230				map0 {
1231					trip = <&cpu_throttle_trip>;
1232					cooling-device = <&throttle_heavy 1 1>;
1233				};
1234			};
1235		};
1236
1237		mem {
1238			polling-delay-passive = <1000>;
1239			polling-delay = <1000>;
1240
1241			thermal-sensors =
1242				<&soctherm TEGRA124_SOCTHERM_SENSOR_MEM>;
1243
1244			trips {
1245				mem-shutdown-trip {
1246					temperature = <103000>;
1247					hysteresis = <0>;
1248					type = "critical";
1249				};
1250			};
1251
1252			cooling-maps {
1253				/*
1254				 * There are currently no cooling maps,
1255				 * because there are no cooling devices.
1256				 */
1257			};
1258		};
1259
1260		gpu {
1261			polling-delay-passive = <1000>;
1262			polling-delay = <1000>;
1263
1264			thermal-sensors =
1265				<&soctherm TEGRA124_SOCTHERM_SENSOR_GPU>;
1266
1267			trips {
1268				gpu-shutdown-trip {
1269					temperature = <101000>;
1270					hysteresis = <0>;
1271					type = "critical";
1272				};
1273				gpu_throttle_trip: throttle-trip {
1274					temperature = <99000>;
1275					hysteresis = <1000>;
1276					type = "hot";
1277				};
1278			};
1279
1280			cooling-maps {
1281				map0 {
1282					trip = <&gpu_throttle_trip>;
1283					cooling-device = <&throttle_heavy 1 1>;
1284				};
1285			};
1286		};
1287
1288		pllx {
1289			polling-delay-passive = <1000>;
1290			polling-delay = <1000>;
1291
1292			thermal-sensors =
1293				<&soctherm TEGRA124_SOCTHERM_SENSOR_PLLX>;
1294
1295			trips {
1296				pllx-shutdown-trip {
1297					temperature = <103000>;
1298					hysteresis = <0>;
1299					type = "critical";
1300				};
1301			};
1302
1303			cooling-maps {
1304				/*
1305				 * There are currently no cooling maps,
1306				 * because there are no cooling devices.
1307				 */
1308			};
1309		};
1310	};
1311
1312	timer {
1313		compatible = "arm,armv7-timer";
1314		interrupts = <GIC_PPI 13
1315				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1316			     <GIC_PPI 14
1317				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1318			     <GIC_PPI 11
1319				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1320			     <GIC_PPI 10
1321				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
1322		interrupt-parent = <&gic>;
1323	};
1324};