omap3.dtsi 11.6 KB
Newer Older
1 2 3 4 5 6 7 8 9 10
/*
 * 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.
 */

11 12
#include <dt-bindings/gpio/gpio.h>

13
#include "skeleton.dtsi"
14 15 16

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

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

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

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

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

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

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

	/*
	 * 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 已提交
72 73 74 75 76 77
		counter32k: counter@48320000 {
			compatible = "ti,omap-counter32k";
			reg = <0x48320000 0x20>;
			ti,hwmods = "counter_32k";
		};

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

86 87 88 89 90 91 92 93 94 95 96 97
		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>;
		};

98 99 100 101 102 103
		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>;
104
			pinctrl-single,function-mask = <0x7f1f>;
105 106
		};

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

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

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

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

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

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

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

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

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

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

201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
		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";
		};
221 222 223 224 225 226 227

		mcspi1: spi@48098000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi1";
			ti,spi-num-cs = <4>;
228 229 230 231 232 233 234 235 236 237
			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";
238 239 240 241 242 243 244 245
		};

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

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

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

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

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

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

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

		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";
313 314 315
			dmas = <&sdma 31>,
			       <&sdma 32>;
			dma-names = "tx", "rx";
316 317 318 319 320 321 322 323 324 325 326 327 328
		};

		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>;
329
			ti,hwmods = "mcbsp2", "mcbsp2_sidetone";
330 331 332
			dmas = <&sdma 33>,
			       <&sdma 34>;
			dma-names = "tx", "rx";
333 334 335 336 337 338 339 340 341 342 343 344 345
		};

		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>;
346
			ti,hwmods = "mcbsp3", "mcbsp3_sidetone";
347 348 349
			dmas = <&sdma 17>,
			       <&sdma 18>;
			dma-names = "tx", "rx";
350 351 352 353 354 355 356 357 358 359 360 361
		};

		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";
362 363 364
			dmas = <&sdma 19>,
			       <&sdma 20>;
			dma-names = "tx", "rx";
365 366 367 368 369 370 371 372 373 374 375 376
		};

		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";
377 378 379
			dmas = <&sdma 21>,
			       <&sdma 22>;
			dma-names = "tx", "rx";
380
		};
J
Jon Hunter 已提交
381 382

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

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

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

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

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

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

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

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

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

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

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

		timer12: timer@48304000 {
469
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
470 471 472 473 474 475
			reg = <0x48304000 0x400>;
			interrupts = <95>;
			ti,hwmods = "timer12";
			ti,timer-alwon;
			ti,timer-secure;
		};
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 505 506

		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>;
			};
		};

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

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