omap3.dtsi 11.6 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14
/*
 * Device Tree Source for OMAP3 SoC
 *
 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
 *
 * This file is licensed under the terms of the GNU General Public License
 * version 2.  This program is licensed "as is" without any warranty of any
 * kind, whether express or implied.
 */

/include/ "skeleton.dtsi"

/ {
	compatible = "ti,omap3430", "ti,omap3";
15
	interrupt-parent = <&intc>;
16

17 18 19 20 21 22
	aliases {
		serial0 = &uart1;
		serial1 = &uart2;
		serial2 = &uart3;
	};

23 24 25 26 27 28
	cpus {
		cpu@0 {
			compatible = "arm,cortex-a8";
		};
	};

J
Jon Hunter 已提交
29 30 31 32 33 34
	pmu {
		compatible = "arm,cortex-a8-pmu";
		interrupts = <3>;
		ti,hwmods = "debugss";
	};

35
	/*
36
	 * The soc node represents the soc top level view. It is used for IPs
37 38 39 40
	 * that are not memory mapped in the MPU view or for the MPU itself.
	 */
	soc {
		compatible = "ti,omap-infra";
41 42 43 44 45 46 47 48 49 50 51 52 53
		mpu {
			compatible = "ti,omap3-mpu";
			ti,hwmods = "mpu";
		};

		iva {
			compatible = "ti,iva2.2";
			ti,hwmods = "iva";

			dsp {
				compatible = "ti,omap3-c64";
			};
		};
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
	};

	/*
	 * XXX: Use a flat representation of the OMAP3 interconnect.
	 * The real OMAP interconnect network is quite complex.
	 * Since that will not bring real advantage to represent that in DT for
	 * the moment, just use a fake OCP bus entry to represent the whole bus
	 * hierarchy.
	 */
	ocp {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;
		ti,hwmods = "l3_main";

J
Jon Hunter 已提交
70 71 72 73 74 75
		counter32k: counter@48320000 {
			compatible = "ti,omap-counter32k";
			reg = <0x48320000 0x20>;
			ti,hwmods = "counter_32k";
		};

76 77
		intc: interrupt-controller@48200000 {
			compatible = "ti,omap2-intc";
78 79
			interrupt-controller;
			#interrupt-cells = <1>;
80 81
			ti,intc-size = <96>;
			reg = <0x48200000 0x1000>;
82
		};
83

84 85 86 87 88 89 90 91 92 93 94 95
		sdma: dma-controller@48056000 {
			compatible = "ti,omap3630-sdma", "ti,omap3430-sdma";
			reg = <0x48056000 0x1000>;
			interrupts = <12>,
				     <13>,
				     <14>,
				     <15>;
			#dma-cells = <1>;
			#dma-channels = <32>;
			#dma-requests = <96>;
		};

96 97 98 99 100 101
		omap3_pmx_core: pinmux@48002030 {
			compatible = "ti,omap3-padconf", "pinctrl-single";
			reg = <0x48002030 0x05cc>;
			#address-cells = <1>;
			#size-cells = <0>;
			pinctrl-single,register-width = <16>;
102
			pinctrl-single,function-mask = <0x7f1f>;
103 104
		};

105
		omap3_pmx_wkup: pinmux@0x48002a00 {
106
			compatible = "ti,omap3-padconf", "pinctrl-single";
107
			reg = <0x48002a00 0x5c>;
108 109 110
			#address-cells = <1>;
			#size-cells = <0>;
			pinctrl-single,register-width = <16>;
111
			pinctrl-single,function-mask = <0x7f1f>;
112 113
		};

B
Benoit Cousson 已提交
114 115
		gpio1: gpio@48310000 {
			compatible = "ti,omap3-gpio";
116 117
			reg = <0x48310000 0x200>;
			interrupts = <29>;
B
Benoit Cousson 已提交
118
			ti,hwmods = "gpio1";
119
			ti,gpio-always-on;
B
Benoit Cousson 已提交
120 121 122
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
123
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
124 125 126 127
		};

		gpio2: gpio@49050000 {
			compatible = "ti,omap3-gpio";
128 129
			reg = <0x49050000 0x200>;
			interrupts = <30>;
B
Benoit Cousson 已提交
130 131 132 133
			ti,hwmods = "gpio2";
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
134
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
135 136 137 138
		};

		gpio3: gpio@49052000 {
			compatible = "ti,omap3-gpio";
139 140
			reg = <0x49052000 0x200>;
			interrupts = <31>;
B
Benoit Cousson 已提交
141 142 143 144
			ti,hwmods = "gpio3";
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
145
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
146 147 148 149
		};

		gpio4: gpio@49054000 {
			compatible = "ti,omap3-gpio";
150 151
			reg = <0x49054000 0x200>;
			interrupts = <32>;
B
Benoit Cousson 已提交
152 153 154 155
			ti,hwmods = "gpio4";
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
156
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
157 158 159 160
		};

		gpio5: gpio@49056000 {
			compatible = "ti,omap3-gpio";
161 162
			reg = <0x49056000 0x200>;
			interrupts = <33>;
B
Benoit Cousson 已提交
163 164 165 166
			ti,hwmods = "gpio5";
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
167
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
168 169 170 171
		};

		gpio6: gpio@49058000 {
			compatible = "ti,omap3-gpio";
172 173
			reg = <0x49058000 0x200>;
			interrupts = <34>;
B
Benoit Cousson 已提交
174 175 176 177
			ti,hwmods = "gpio6";
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
178
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
179 180
		};

181
		uart1: serial@4806a000 {
182 183 184 185 186
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart1";
			clock-frequency = <48000000>;
		};

187
		uart2: serial@4806c000 {
188 189 190 191 192
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart2";
			clock-frequency = <48000000>;
		};

193
		uart3: serial@49020000 {
194 195 196 197 198
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart3";
			clock-frequency = <48000000>;
		};

199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218
		i2c1: i2c@48070000 {
			compatible = "ti,omap3-i2c";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "i2c1";
		};

		i2c2: i2c@48072000 {
			compatible = "ti,omap3-i2c";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "i2c2";
		};

		i2c3: i2c@48060000 {
			compatible = "ti,omap3-i2c";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "i2c3";
		};
219 220 221 222 223 224 225

		mcspi1: spi@48098000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi1";
			ti,spi-num-cs = <4>;
226 227 228 229 230 231 232 233 234 235
			dmas = <&sdma 35>,
			       <&sdma 36>,
			       <&sdma 37>,
			       <&sdma 38>,
			       <&sdma 39>,
			       <&sdma 40>,
			       <&sdma 41>,
			       <&sdma 42>;
			dma-names = "tx0", "rx0", "tx1", "rx1",
				    "tx2", "rx2", "tx3", "rx3";
236 237 238 239 240 241 242 243
		};

		mcspi2: spi@4809a000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi2";
			ti,spi-num-cs = <2>;
244 245 246 247 248
			dmas = <&sdma 43>,
			       <&sdma 44>,
			       <&sdma 45>,
			       <&sdma 46>;
			dma-names = "tx0", "rx0", "tx1", "rx1";
249 250 251 252 253 254 255 256
		};

		mcspi3: spi@480b8000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi3";
			ti,spi-num-cs = <2>;
257 258 259 260 261
			dmas = <&sdma 15>,
			       <&sdma 16>,
			       <&sdma 23>,
			       <&sdma 24>;
			dma-names = "tx0", "rx0", "tx1", "rx1";
262 263 264 265 266 267 268 269
		};

		mcspi4: spi@480ba000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi4";
			ti,spi-num-cs = <1>;
270 271
			dmas = <&sdma 70>, <&sdma 71>;
			dma-names = "tx0", "rx0";
272
		};
273 274 275 276 277

		mmc1: mmc@4809c000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc1";
			ti,dual-volt;
278 279
			dmas = <&sdma 61>, <&sdma 62>;
			dma-names = "tx", "rx";
280 281 282 283 284
		};

		mmc2: mmc@480b4000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc2";
285 286
			dmas = <&sdma 47>, <&sdma 48>;
			dma-names = "tx", "rx";
287 288 289 290 291
		};

		mmc3: mmc@480ad000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc3";
292 293
			dmas = <&sdma 77>, <&sdma 78>;
			dma-names = "tx", "rx";
294
		};
295 296 297 298 299

		wdt2: wdt@48314000 {
			compatible = "ti,omap3-wdt";
			ti,hwmods = "wd_timer2";
		};
300 301 302 303 304 305 306 307 308 309 310

		mcbsp1: mcbsp@48074000 {
			compatible = "ti,omap3-mcbsp";
			reg = <0x48074000 0xff>;
			reg-names = "mpu";
			interrupts = <16>, /* OCP compliant interrupt */
				     <59>, /* TX interrupt */
				     <60>; /* RX interrupt */
			interrupt-names = "common", "tx", "rx";
			ti,buffer-size = <128>;
			ti,hwmods = "mcbsp1";
311 312 313
			dmas = <&sdma 31>,
			       <&sdma 32>;
			dma-names = "tx", "rx";
314 315 316 317 318 319 320 321 322 323 324 325 326
		};

		mcbsp2: mcbsp@49022000 {
			compatible = "ti,omap3-mcbsp";
			reg = <0x49022000 0xff>,
			      <0x49028000 0xff>;
			reg-names = "mpu", "sidetone";
			interrupts = <17>, /* OCP compliant interrupt */
				     <62>, /* TX interrupt */
				     <63>, /* RX interrupt */
				     <4>;  /* Sidetone */
			interrupt-names = "common", "tx", "rx", "sidetone";
			ti,buffer-size = <1280>;
327
			ti,hwmods = "mcbsp2", "mcbsp2_sidetone";
328 329 330
			dmas = <&sdma 33>,
			       <&sdma 34>;
			dma-names = "tx", "rx";
331 332 333 334 335 336 337 338 339 340 341 342 343
		};

		mcbsp3: mcbsp@49024000 {
			compatible = "ti,omap3-mcbsp";
			reg = <0x49024000 0xff>,
			      <0x4902a000 0xff>;
			reg-names = "mpu", "sidetone";
			interrupts = <22>, /* OCP compliant interrupt */
				     <89>, /* TX interrupt */
				     <90>, /* RX interrupt */
				     <5>;  /* Sidetone */
			interrupt-names = "common", "tx", "rx", "sidetone";
			ti,buffer-size = <128>;
344
			ti,hwmods = "mcbsp3", "mcbsp3_sidetone";
345 346 347
			dmas = <&sdma 17>,
			       <&sdma 18>;
			dma-names = "tx", "rx";
348 349 350 351 352 353 354 355 356 357 358 359
		};

		mcbsp4: mcbsp@49026000 {
			compatible = "ti,omap3-mcbsp";
			reg = <0x49026000 0xff>;
			reg-names = "mpu";
			interrupts = <23>, /* OCP compliant interrupt */
				     <54>, /* TX interrupt */
				     <55>; /* RX interrupt */
			interrupt-names = "common", "tx", "rx";
			ti,buffer-size = <128>;
			ti,hwmods = "mcbsp4";
360 361 362
			dmas = <&sdma 19>,
			       <&sdma 20>;
			dma-names = "tx", "rx";
363 364 365 366 367 368 369 370 371 372 373 374
		};

		mcbsp5: mcbsp@48096000 {
			compatible = "ti,omap3-mcbsp";
			reg = <0x48096000 0xff>;
			reg-names = "mpu";
			interrupts = <27>, /* OCP compliant interrupt */
				     <81>, /* TX interrupt */
				     <82>; /* RX interrupt */
			interrupt-names = "common", "tx", "rx";
			ti,buffer-size = <128>;
			ti,hwmods = "mcbsp5";
375 376 377
			dmas = <&sdma 21>,
			       <&sdma 22>;
			dma-names = "tx", "rx";
378
		};
J
Jon Hunter 已提交
379 380

		timer1: timer@48318000 {
381
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
382 383 384 385 386 387 388
			reg = <0x48318000 0x400>;
			interrupts = <37>;
			ti,hwmods = "timer1";
			ti,timer-alwon;
		};

		timer2: timer@49032000 {
389
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
390 391 392 393 394 395
			reg = <0x49032000 0x400>;
			interrupts = <38>;
			ti,hwmods = "timer2";
		};

		timer3: timer@49034000 {
396
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
397 398 399 400 401 402
			reg = <0x49034000 0x400>;
			interrupts = <39>;
			ti,hwmods = "timer3";
		};

		timer4: timer@49036000 {
403
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
404 405 406 407 408 409
			reg = <0x49036000 0x400>;
			interrupts = <40>;
			ti,hwmods = "timer4";
		};

		timer5: timer@49038000 {
410
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
411 412 413 414 415 416 417
			reg = <0x49038000 0x400>;
			interrupts = <41>;
			ti,hwmods = "timer5";
			ti,timer-dsp;
		};

		timer6: timer@4903a000 {
418
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
419 420 421 422 423 424 425
			reg = <0x4903a000 0x400>;
			interrupts = <42>;
			ti,hwmods = "timer6";
			ti,timer-dsp;
		};

		timer7: timer@4903c000 {
426
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
427 428 429 430 431 432 433
			reg = <0x4903c000 0x400>;
			interrupts = <43>;
			ti,hwmods = "timer7";
			ti,timer-dsp;
		};

		timer8: timer@4903e000 {
434
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
435 436 437 438 439 440 441 442
			reg = <0x4903e000 0x400>;
			interrupts = <44>;
			ti,hwmods = "timer8";
			ti,timer-pwm;
			ti,timer-dsp;
		};

		timer9: timer@49040000 {
443
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
444 445 446 447 448 449 450
			reg = <0x49040000 0x400>;
			interrupts = <45>;
			ti,hwmods = "timer9";
			ti,timer-pwm;
		};

		timer10: timer@48086000 {
451
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
452 453 454 455 456 457 458
			reg = <0x48086000 0x400>;
			interrupts = <46>;
			ti,hwmods = "timer10";
			ti,timer-pwm;
		};

		timer11: timer@48088000 {
459
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
460 461 462 463 464 465 466
			reg = <0x48088000 0x400>;
			interrupts = <47>;
			ti,hwmods = "timer11";
			ti,timer-pwm;
		};

		timer12: timer@48304000 {
467
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
468 469 470 471 472 473
			reg = <0x48304000 0x400>;
			interrupts = <95>;
			ti,hwmods = "timer12";
			ti,timer-alwon;
			ti,timer-secure;
		};
474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504

		usbhstll: usbhstll@48062000 {
			compatible = "ti,usbhs-tll";
			reg = <0x48062000 0x1000>;
			interrupts = <78>;
			ti,hwmods = "usb_tll_hs";
		};

		usbhshost: usbhshost@48064000 {
			compatible = "ti,usbhs-host";
			reg = <0x48064000 0x400>;
			ti,hwmods = "usb_host_hs";
			#address-cells = <1>;
			#size-cells = <1>;
			ranges;

			usbhsohci: ohci@48064400 {
				compatible = "ti,ohci-omap3", "usb-ohci";
				reg = <0x48064400 0x400>;
				interrupt-parent = <&intc>;
				interrupts = <76>;
			};

			usbhsehci: ehci@48064800 {
				compatible = "ti,ehci-omap", "usb-ehci";
				reg = <0x48064800 0x400>;
				interrupt-parent = <&intc>;
				interrupts = <77>;
			};
		};

505 506 507
		gpmc: gpmc@6e000000 {
			compatible = "ti,omap3430-gpmc";
			ti,hwmods = "gpmc";
508
			reg = <0x6e000000 0x02d0>;
509 510 511 512 513 514
			interrupts = <20>;
			gpmc,num-cs = <8>;
			gpmc,num-waitpins = <4>;
			#address-cells = <2>;
			#size-cells = <1>;
		};
515 516 517 518 519 520 521 522 523 524 525

		usb_otg_hs: usb_otg_hs@480ab000 {
			compatible = "ti,omap3-musb";
			reg = <0x480ab000 0x1000>;
			interrupts = <0 92 0x4>, <0 93 0x4>;
			interrupt-names = "mc", "dma";
			ti,hwmods = "usb_otg_hs";
			multipoint = <1>;
			num-eps = <16>;
			ram-bits = <12>;
		};
526 527
	};
};