tegra114.dtsi 19.7 KB
Newer Older
1
#include <dt-bindings/clock/tegra114-car.h>
2
#include <dt-bindings/gpio/tegra-gpio.h>
3
#include <dt-bindings/pinctrl/pinctrl-tegra.h>
4
#include <dt-bindings/interrupt-controller/arm-gic.h>
5

6
#include "skeleton.dtsi"
7 8 9 10 11

/ {
	compatible = "nvidia,tegra114";
	interrupt-parent = <&gic>;

12 13 14 15 16 17 18
	aliases {
		serial0 = &uarta;
		serial1 = &uartb;
		serial2 = &uartc;
		serial3 = &uartd;
	};

19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
	host1x@50000000 {
		compatible = "nvidia,tegra114-host1x", "simple-bus";
		reg = <0x50000000 0x00028000>;
		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
			     <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
		clocks = <&tegra_car TEGRA114_CLK_HOST1X>;
		resets = <&tegra_car 28>;
		reset-names = "host1x";

		#address-cells = <1>;
		#size-cells = <1>;

		ranges = <0x54000000 0x54000000 0x01000000>;

		dc@54200000 {
			compatible = "nvidia,tegra114-dc", "nvidia,tegra20-dc";
			reg = <0x54200000 0x00040000>;
			interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&tegra_car TEGRA114_CLK_DISP1>,
				 <&tegra_car TEGRA114_CLK_PLL_P>;
			clock-names = "dc", "parent";
			resets = <&tegra_car 27>;
			reset-names = "dc";

			rgb {
				status = "disabled";
			};
		};

		dc@54240000 {
			compatible = "nvidia,tegra114-dc", "nvidia,tegra20-dc";
			reg = <0x54240000 0x00040000>;
			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&tegra_car TEGRA114_CLK_DISP2>,
				 <&tegra_car TEGRA114_CLK_PLL_P>;
			clock-names = "dc", "parent";
			resets = <&tegra_car 26>;
			reset-names = "dc";

			rgb {
				status = "disabled";
			};
		};

		hdmi@54280000 {
			compatible = "nvidia,tegra114-hdmi";
			reg = <0x54280000 0x00040000>;
			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&tegra_car TEGRA114_CLK_HDMI>,
				 <&tegra_car TEGRA114_CLK_PLL_D2_OUT0>;
			clock-names = "hdmi", "parent";
			resets = <&tegra_car 51>;
			reset-names = "hdmi";
			status = "disabled";
		};
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

		dsi@54300000 {
			compatible = "nvidia,tegra114-dsi";
			reg = <0x54300000 0x00040000>;
			clocks = <&tegra_car TEGRA114_CLK_DSIA>,
				 <&tegra_car TEGRA114_CLK_DSIALP>,
				 <&tegra_car TEGRA114_CLK_PLL_D_OUT0>;
			clock-names = "dsi", "lp", "parent";
			resets = <&tegra_car 48>;
			reset-names = "dsi";
			nvidia,mipi-calibrate = <&mipi 0x060>; /* DSIA & DSIB pads */
			status = "disabled";

			#address-cells = <1>;
			#size-cells = <0>;
		};

		dsi@54400000 {
			compatible = "nvidia,tegra114-dsi";
			reg = <0x54400000 0x00040000>;
			clocks = <&tegra_car TEGRA114_CLK_DSIB>,
				 <&tegra_car TEGRA114_CLK_DSIBLP>,
				 <&tegra_car TEGRA114_CLK_PLL_D2_OUT0>;
			clock-names = "dsi", "lp", "parent";
			resets = <&tegra_car 82>;
			reset-names = "dsi";
			nvidia,mipi-calibrate = <&mipi 0x180>; /* DSIC & DSID pads */
			status = "disabled";

			#address-cells = <1>;
			#size-cells = <0>;
		};
106 107
	};

108
	gic: interrupt-controller@50041000 {
109 110 111 112 113 114 115
		compatible = "arm,cortex-a15-gic";
		#interrupt-cells = <3>;
		interrupt-controller;
		reg = <0x50041000 0x1000>,
		      <0x50042000 0x1000>,
		      <0x50044000 0x2000>,
		      <0x50046000 0x2000>;
116 117
		interrupts = <GIC_PPI 9
			(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
118 119 120 121 122
	};

	timer@60005000 {
		compatible = "nvidia,tegra114-timer", "nvidia,tegra20-timer";
		reg = <0x60005000 0x400>;
123 124 125 126 127 128
		interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
129
		clocks = <&tegra_car TEGRA114_CLK_TIMER>;
130 131
	};

132
	tegra_car: clock@60006000 {
133
		compatible = "nvidia,tegra114-car";
134 135
		reg = <0x60006000 0x1000>;
		#clock-cells = <1>;
136
		#reset-cells = <1>;
137 138
	};

139
	apbdma: dma@6000a000 {
140 141
		compatible = "nvidia,tegra114-apbdma";
		reg = <0x6000a000 0x1400>;
142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173
		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
174
		clocks = <&tegra_car TEGRA114_CLK_APBDMA>;
175 176
		resets = <&tegra_car 34>;
		reset-names = "dma";
177
		#dma-cells = <1>;
178 179
	};

180
	ahb: ahb@6000c004 {
181 182 183 184
		compatible = "nvidia,tegra114-ahb", "nvidia,tegra30-ahb";
		reg = <0x6000c004 0x14c>;
	};

185
	gpio: gpio@6000d000 {
186 187
		compatible = "nvidia,tegra114-gpio", "nvidia,tegra30-gpio";
		reg = <0x6000d000 0x1000>;
188 189 190 191 192 193 194 195
		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
			     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
196 197 198 199 200 201
		#gpio-cells = <2>;
		gpio-controller;
		#interrupt-cells = <2>;
		interrupt-controller;
	};

202
	pinmux: pinmux@70000868 {
203 204 205 206 207
		compatible = "nvidia,tegra114-pinmux";
		reg = <0x70000868 0x148		/* Pad control registers */
		       0x70003000 0x40c>;	/* Mux registers */
	};

208 209 210 211 212 213 214 215 216
	/*
	 * There are two serial driver i.e. 8250 based simple serial
	 * driver and APB DMA based serial driver for higher baudrate
	 * and performace. To enable the 8250 based driver, the compatible
	 * is "nvidia,tegra114-uart", "nvidia,tegra20-uart" and to enable
	 * the APB DMA based serial driver, the comptible is
	 * "nvidia,tegra114-hsuart", "nvidia,tegra30-hsuart".
	 */
	uarta: serial@70006000 {
217 218 219
		compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
		reg = <0x70006000 0x40>;
		reg-shift = <2>;
220
		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
221
		clocks = <&tegra_car TEGRA114_CLK_UARTA>;
222 223
		resets = <&tegra_car 6>;
		reset-names = "serial";
224 225
		dmas = <&apbdma 8>, <&apbdma 8>;
		dma-names = "rx", "tx";
226
		status = "disabled";
227 228
	};

229
	uartb: serial@70006040 {
230 231 232
		compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
		reg = <0x70006040 0x40>;
		reg-shift = <2>;
233
		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
234
		clocks = <&tegra_car TEGRA114_CLK_UARTB>;
235 236
		resets = <&tegra_car 7>;
		reset-names = "serial";
237 238
		dmas = <&apbdma 9>, <&apbdma 9>;
		dma-names = "rx", "tx";
239
		status = "disabled";
240 241
	};

242
	uartc: serial@70006200 {
243 244 245
		compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
		reg = <0x70006200 0x100>;
		reg-shift = <2>;
246
		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
247
		clocks = <&tegra_car TEGRA114_CLK_UARTC>;
248 249
		resets = <&tegra_car 55>;
		reset-names = "serial";
250 251
		dmas = <&apbdma 10>, <&apbdma 10>;
		dma-names = "rx", "tx";
252
		status = "disabled";
253 254
	};

255
	uartd: serial@70006300 {
256 257 258
		compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
		reg = <0x70006300 0x100>;
		reg-shift = <2>;
259
		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
260
		clocks = <&tegra_car TEGRA114_CLK_UARTD>;
261 262
		resets = <&tegra_car 65>;
		reset-names = "serial";
263 264
		dmas = <&apbdma 19>, <&apbdma 19>;
		dma-names = "rx", "tx";
265
		status = "disabled";
266 267
	};

268
	pwm: pwm@7000a000 {
269 270 271
		compatible = "nvidia,tegra114-pwm", "nvidia,tegra20-pwm";
		reg = <0x7000a000 0x100>;
		#pwm-cells = <2>;
272
		clocks = <&tegra_car TEGRA114_CLK_PWM>;
273 274
		resets = <&tegra_car 17>;
		reset-names = "pwm";
275 276 277
		status = "disabled";
	};

278 279 280
	i2c@7000c000 {
		compatible = "nvidia,tegra114-i2c";
		reg = <0x7000c000 0x100>;
281
		interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
282 283
		#address-cells = <1>;
		#size-cells = <0>;
284
		clocks = <&tegra_car TEGRA114_CLK_I2C1>;
285
		clock-names = "div-clk";
286 287
		resets = <&tegra_car 12>;
		reset-names = "i2c";
288 289
		dmas = <&apbdma 21>, <&apbdma 21>;
		dma-names = "rx", "tx";
290 291 292 293 294 295
		status = "disabled";
	};

	i2c@7000c400 {
		compatible = "nvidia,tegra114-i2c";
		reg = <0x7000c400 0x100>;
296
		interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
297 298
		#address-cells = <1>;
		#size-cells = <0>;
299
		clocks = <&tegra_car TEGRA114_CLK_I2C2>;
300
		clock-names = "div-clk";
301 302
		resets = <&tegra_car 54>;
		reset-names = "i2c";
303 304
		dmas = <&apbdma 22>, <&apbdma 22>;
		dma-names = "rx", "tx";
305 306 307 308 309 310
		status = "disabled";
	};

	i2c@7000c500 {
		compatible = "nvidia,tegra114-i2c";
		reg = <0x7000c500 0x100>;
311
		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
312 313
		#address-cells = <1>;
		#size-cells = <0>;
314
		clocks = <&tegra_car TEGRA114_CLK_I2C3>;
315
		clock-names = "div-clk";
316 317
		resets = <&tegra_car 67>;
		reset-names = "i2c";
318 319
		dmas = <&apbdma 23>, <&apbdma 23>;
		dma-names = "rx", "tx";
320 321 322 323 324 325
		status = "disabled";
	};

	i2c@7000c700 {
		compatible = "nvidia,tegra114-i2c";
		reg = <0x7000c700 0x100>;
326
		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
327 328
		#address-cells = <1>;
		#size-cells = <0>;
329
		clocks = <&tegra_car TEGRA114_CLK_I2C4>;
330
		clock-names = "div-clk";
331 332
		resets = <&tegra_car 103>;
		reset-names = "i2c";
333 334
		dmas = <&apbdma 26>, <&apbdma 26>;
		dma-names = "rx", "tx";
335 336 337 338 339 340
		status = "disabled";
	};

	i2c@7000d000 {
		compatible = "nvidia,tegra114-i2c";
		reg = <0x7000d000 0x100>;
341
		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
342 343
		#address-cells = <1>;
		#size-cells = <0>;
344
		clocks = <&tegra_car TEGRA114_CLK_I2C5>;
345
		clock-names = "div-clk";
346 347
		resets = <&tegra_car 47>;
		reset-names = "i2c";
348 349
		dmas = <&apbdma 24>, <&apbdma 24>;
		dma-names = "rx", "tx";
350 351 352
		status = "disabled";
	};

353 354 355
	spi@7000d400 {
		compatible = "nvidia,tegra114-spi";
		reg = <0x7000d400 0x200>;
356
		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
357 358
		#address-cells = <1>;
		#size-cells = <0>;
359
		clocks = <&tegra_car TEGRA114_CLK_SBC1>;
360
		clock-names = "spi";
361 362
		resets = <&tegra_car 41>;
		reset-names = "spi";
363 364
		dmas = <&apbdma 15>, <&apbdma 15>;
		dma-names = "rx", "tx";
365 366 367 368 369 370
		status = "disabled";
	};

	spi@7000d600 {
		compatible = "nvidia,tegra114-spi";
		reg = <0x7000d600 0x200>;
371
		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
372 373
		#address-cells = <1>;
		#size-cells = <0>;
374
		clocks = <&tegra_car TEGRA114_CLK_SBC2>;
375
		clock-names = "spi";
376 377
		resets = <&tegra_car 44>;
		reset-names = "spi";
378 379
		dmas = <&apbdma 16>, <&apbdma 16>;
		dma-names = "rx", "tx";
380 381 382 383 384 385
		status = "disabled";
	};

	spi@7000d800 {
		compatible = "nvidia,tegra114-spi";
		reg = <0x7000d800 0x200>;
386
		interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
387 388
		#address-cells = <1>;
		#size-cells = <0>;
389
		clocks = <&tegra_car TEGRA114_CLK_SBC3>;
390
		clock-names = "spi";
391 392
		resets = <&tegra_car 46>;
		reset-names = "spi";
393 394
		dmas = <&apbdma 17>, <&apbdma 17>;
		dma-names = "rx", "tx";
395 396 397 398 399 400
		status = "disabled";
	};

	spi@7000da00 {
		compatible = "nvidia,tegra114-spi";
		reg = <0x7000da00 0x200>;
401
		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
402 403
		#address-cells = <1>;
		#size-cells = <0>;
404
		clocks = <&tegra_car TEGRA114_CLK_SBC4>;
405
		clock-names = "spi";
406 407
		resets = <&tegra_car 68>;
		reset-names = "spi";
408 409
		dmas = <&apbdma 18>, <&apbdma 18>;
		dma-names = "rx", "tx";
410 411 412 413 414 415
		status = "disabled";
	};

	spi@7000dc00 {
		compatible = "nvidia,tegra114-spi";
		reg = <0x7000dc00 0x200>;
416
		interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
417 418
		#address-cells = <1>;
		#size-cells = <0>;
419
		clocks = <&tegra_car TEGRA114_CLK_SBC5>;
420
		clock-names = "spi";
421 422
		resets = <&tegra_car 104>;
		reset-names = "spi";
423 424
		dmas = <&apbdma 27>, <&apbdma 27>;
		dma-names = "rx", "tx";
425 426 427 428 429 430
		status = "disabled";
	};

	spi@7000de00 {
		compatible = "nvidia,tegra114-spi";
		reg = <0x7000de00 0x200>;
431
		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
432 433
		#address-cells = <1>;
		#size-cells = <0>;
434
		clocks = <&tegra_car TEGRA114_CLK_SBC6>;
435
		clock-names = "spi";
436 437
		resets = <&tegra_car 105>;
		reset-names = "spi";
438 439
		dmas = <&apbdma 28>, <&apbdma 28>;
		dma-names = "rx", "tx";
440 441 442
		status = "disabled";
	};

443
	rtc@7000e000 {
444 445
		compatible = "nvidia,tegra114-rtc", "nvidia,tegra20-rtc";
		reg = <0x7000e000 0x100>;
446
		interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
447
		clocks = <&tegra_car TEGRA114_CLK_RTC>;
448 449
	};

450
	kbc@7000e200 {
451 452
		compatible = "nvidia,tegra114-kbc";
		reg = <0x7000e200 0x100>;
453
		interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
454
		clocks = <&tegra_car TEGRA114_CLK_KBC>;
455 456
		resets = <&tegra_car 36>;
		reset-names = "kbc";
457 458 459
		status = "disabled";
	};

460
	pmc@7000e400 {
461
		compatible = "nvidia,tegra114-pmc";
462
		reg = <0x7000e400 0x400>;
463
		clocks = <&tegra_car TEGRA114_CLK_PCLK>, <&clk32k_in>;
464
		clock-names = "pclk", "clk32k_in";
465 466
	};

467
	iommu@70019010 {
468
		compatible = "nvidia,tegra114-smmu", "nvidia,tegra30-smmu";
469 470 471
		reg = <0x70019010 0x02c
		       0x700191f0 0x010
		       0x70019228 0x074>;
472 473 474 475 476 477
		nvidia,#asids = <4>;
		dma-window = <0 0x40000000>;
		nvidia,swgroups = <0x18659fe>;
		nvidia,ahb = <&ahb>;
	};

478
	ahub@70080000 {
479 480 481 482 483 484
		compatible = "nvidia,tegra114-ahub";
		reg = <0x70080000 0x200>,
		      <0x70080200 0x100>,
		      <0x70081000 0x200>;
		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&tegra_car TEGRA114_CLK_D_AUDIO>,
485 486
			 <&tegra_car TEGRA114_CLK_APBIF>;
		clock-names = "d_audio", "apbif";
487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502
		resets = <&tegra_car 106>, /* d_audio */
			 <&tegra_car 107>, /* apbif */
			 <&tegra_car 30>,  /* i2s0 */
			 <&tegra_car 11>,  /* i2s1 */
			 <&tegra_car 18>,  /* i2s2 */
			 <&tegra_car 101>, /* i2s3 */
			 <&tegra_car 102>, /* i2s4 */
			 <&tegra_car 108>, /* dam0 */
			 <&tegra_car 109>, /* dam1 */
			 <&tegra_car 110>, /* dam2 */
			 <&tegra_car 10>,  /* spdif */
			 <&tegra_car 153>, /* amx */
			 <&tegra_car 154>; /* adx */
		reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
			      "i2s3", "i2s4", "dam0", "dam1", "dam2",
			      "spdif", "amx", "adx";
503 504 505 506 507 508 509 510 511 512 513 514 515 516
		dmas = <&apbdma 1>, <&apbdma 1>,
		       <&apbdma 2>, <&apbdma 2>,
		       <&apbdma 3>, <&apbdma 3>,
		       <&apbdma 4>, <&apbdma 4>,
		       <&apbdma 6>, <&apbdma 6>,
		       <&apbdma 7>, <&apbdma 7>,
		       <&apbdma 12>, <&apbdma 12>,
		       <&apbdma 13>, <&apbdma 13>,
		       <&apbdma 14>, <&apbdma 14>,
		       <&apbdma 29>, <&apbdma 29>;
		dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2",
			    "rx3", "tx3", "rx4", "tx4", "rx5", "tx5",
			    "rx6", "tx6", "rx7", "tx7", "rx8", "tx8",
			    "rx9", "tx9";
517 518 519 520 521 522 523 524 525
		ranges;
		#address-cells = <1>;
		#size-cells = <1>;

		tegra_i2s0: i2s@70080300 {
			compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
			reg = <0x70080300 0x100>;
			nvidia,ahub-cif-ids = <4 4>;
			clocks = <&tegra_car TEGRA114_CLK_I2S0>;
526 527
			resets = <&tegra_car 30>;
			reset-names = "i2s";
528 529 530 531 532 533 534 535
			status = "disabled";
		};

		tegra_i2s1: i2s@70080400 {
			compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
			reg = <0x70080400 0x100>;
			nvidia,ahub-cif-ids = <5 5>;
			clocks = <&tegra_car TEGRA114_CLK_I2S1>;
536 537
			resets = <&tegra_car 11>;
			reset-names = "i2s";
538 539 540 541 542 543 544 545
			status = "disabled";
		};

		tegra_i2s2: i2s@70080500 {
			compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
			reg = <0x70080500 0x100>;
			nvidia,ahub-cif-ids = <6 6>;
			clocks = <&tegra_car TEGRA114_CLK_I2S2>;
546 547
			resets = <&tegra_car 18>;
			reset-names = "i2s";
548 549 550 551 552 553 554 555
			status = "disabled";
		};

		tegra_i2s3: i2s@70080600 {
			compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
			reg = <0x70080600 0x100>;
			nvidia,ahub-cif-ids = <7 7>;
			clocks = <&tegra_car TEGRA114_CLK_I2S3>;
556 557
			resets = <&tegra_car 101>;
			reset-names = "i2s";
558 559 560 561 562 563 564 565
			status = "disabled";
		};

		tegra_i2s4: i2s@70080700 {
			compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
			reg = <0x70080700 0x100>;
			nvidia,ahub-cif-ids = <8 8>;
			clocks = <&tegra_car TEGRA114_CLK_I2S4>;
566 567
			resets = <&tegra_car 102>;
			reset-names = "i2s";
568 569 570 571
			status = "disabled";
		};
	};

572 573 574 575 576 577 578
	mipi: mipi@700e3000 {
		compatible = "nvidia,tegra114-mipi";
		reg = <0x700e3000 0x100>;
		clocks = <&tegra_car TEGRA114_CLK_MIPI_CAL>;
		#nvidia,mipi-calibrate-cells = <1>;
	};

579 580 581
	sdhci@78000000 {
		compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
		reg = <0x78000000 0x200>;
582
		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
583
		clocks = <&tegra_car TEGRA114_CLK_SDMMC1>;
584 585
		resets = <&tegra_car 14>;
		reset-names = "sdhci";
586 587 588 589 590 591
		status = "disable";
	};

	sdhci@78000200 {
		compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
		reg = <0x78000200 0x200>;
592
		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
593
		clocks = <&tegra_car TEGRA114_CLK_SDMMC2>;
594 595
		resets = <&tegra_car 9>;
		reset-names = "sdhci";
596 597 598 599 600 601
		status = "disable";
	};

	sdhci@78000400 {
		compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
		reg = <0x78000400 0x200>;
602
		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
603
		clocks = <&tegra_car TEGRA114_CLK_SDMMC3>;
604 605
		resets = <&tegra_car 69>;
		reset-names = "sdhci";
606 607 608 609 610 611
		status = "disable";
	};

	sdhci@78000600 {
		compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
		reg = <0x78000600 0x200>;
612
		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
613
		clocks = <&tegra_car TEGRA114_CLK_SDMMC4>;
614 615
		resets = <&tegra_car 15>;
		reset-names = "sdhci";
616 617 618
		status = "disable";
	};

619 620 621 622 623 624
	usb@7d000000 {
		compatible = "nvidia,tegra30-ehci", "usb-ehci";
		reg = <0x7d000000 0x4000>;
		interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
		phy_type = "utmi";
		clocks = <&tegra_car TEGRA114_CLK_USBD>;
625 626
		resets = <&tegra_car 22>;
		reset-names = "usb";
627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657
		nvidia,phy = <&phy1>;
		status = "disabled";
	};

	phy1: usb-phy@7d000000 {
		compatible = "nvidia,tegra30-usb-phy";
		reg = <0x7d000000 0x4000 0x7d000000 0x4000>;
		phy_type = "utmi";
		clocks = <&tegra_car TEGRA114_CLK_USBD>,
			 <&tegra_car TEGRA114_CLK_PLL_U>,
			 <&tegra_car TEGRA114_CLK_USBD>;
		clock-names = "reg", "pll_u", "utmi-pads";
		nvidia,hssync-start-delay = <0>;
		nvidia,idle-wait-delay = <17>;
		nvidia,elastic-limit = <16>;
		nvidia,term-range-adj = <6>;
		nvidia,xcvr-setup = <9>;
		nvidia,xcvr-lsfslew = <0>;
		nvidia,xcvr-lsrslew = <3>;
		nvidia,hssquelch-level = <2>;
		nvidia,hsdiscon-level = <5>;
		nvidia,xcvr-hsslew = <12>;
		status = "disabled";
	};

	usb@7d008000 {
		compatible = "nvidia,tegra30-ehci", "usb-ehci";
		reg = <0x7d008000 0x4000>;
		interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
		phy_type = "utmi";
		clocks = <&tegra_car TEGRA114_CLK_USB3>;
658 659
		resets = <&tegra_car 59>;
		reset-names = "usb";
660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684
		nvidia,phy = <&phy3>;
		status = "disabled";
	};

	phy3: usb-phy@7d008000 {
		compatible = "nvidia,tegra30-usb-phy";
		reg = <0x7d008000 0x4000 0x7d000000 0x4000>;
		phy_type = "utmi";
		clocks = <&tegra_car TEGRA114_CLK_USB3>,
			 <&tegra_car TEGRA114_CLK_PLL_U>,
			 <&tegra_car TEGRA114_CLK_USBD>;
		clock-names = "reg", "pll_u", "utmi-pads";
		nvidia,hssync-start-delay = <0>;
		nvidia,idle-wait-delay = <17>;
		nvidia,elastic-limit = <16>;
		nvidia,term-range-adj = <6>;
		nvidia,xcvr-setup = <9>;
		nvidia,xcvr-lsfslew = <0>;
		nvidia,xcvr-lsrslew = <3>;
		nvidia,hssquelch-level = <2>;
		nvidia,hsdiscon-level = <5>;
		nvidia,xcvr-hsslew = <12>;
		status = "disabled";
	};

685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715
	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu@0 {
			device_type = "cpu";
			compatible = "arm,cortex-a15";
			reg = <0>;
		};

		cpu@1 {
			device_type = "cpu";
			compatible = "arm,cortex-a15";
			reg = <1>;
		};

		cpu@2 {
			device_type = "cpu";
			compatible = "arm,cortex-a15";
			reg = <2>;
		};

		cpu@3 {
			device_type = "cpu";
			compatible = "arm,cortex-a15";
			reg = <3>;
		};
	};

	timer {
		compatible = "arm,armv7-timer";
716 717 718 719 720 721 722 723 724
		interrupts =
			<GIC_PPI 13
				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
			<GIC_PPI 14
				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
			<GIC_PPI 11
				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
			<GIC_PPI 10
				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
725 726
	};
};