omap3.dtsi 11.8 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
#include <dt-bindings/gpio/gpio.h>
12
#include <dt-bindings/interrupt-controller/irq.h>
13
#include <dt-bindings/pinctrl/omap.h>
14

15
#include "skeleton.dtsi"
16 17 18

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

21
	aliases {
N
Nishanth Menon 已提交
22 23 24
		i2c0 = &i2c1;
		i2c1 = &i2c2;
		i2c2 = &i2c3;
25 26 27 28 29
		serial0 = &uart1;
		serial1 = &uart2;
		serial2 = &uart3;
	};

30
	cpus {
31 32 33
		#address-cells = <1>;
		#size-cells = <0>;

34 35
		cpu@0 {
			compatible = "arm,cortex-a8";
36 37
			device_type = "cpu";
			reg = <0x0>;
38 39 40
		};
	};

J
Jon Hunter 已提交
41 42 43 44 45 46
	pmu {
		compatible = "arm,cortex-a8-pmu";
		interrupts = <3>;
		ti,hwmods = "debugss";
	};

47
	/*
48
	 * The soc node represents the soc top level view. It is used for IPs
49 50 51 52
	 * that are not memory mapped in the MPU view or for the MPU itself.
	 */
	soc {
		compatible = "ti,omap-infra";
53 54 55 56 57 58 59 60 61 62 63 64 65
		mpu {
			compatible = "ti,omap3-mpu";
			ti,hwmods = "mpu";
		};

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

			dsp {
				compatible = "ti,omap3-c64";
			};
		};
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
	};

	/*
	 * 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 已提交
82 83 84 85 86 87
		counter32k: counter@48320000 {
			compatible = "ti,omap-counter32k";
			reg = <0x48320000 0x20>;
			ti,hwmods = "counter_32k";
		};

88 89
		intc: interrupt-controller@48200000 {
			compatible = "ti,omap2-intc";
90 91
			interrupt-controller;
			#interrupt-cells = <1>;
92 93
			ti,intc-size = <96>;
			reg = <0x48200000 0x1000>;
94
		};
95

96 97 98 99 100 101 102 103 104 105 106 107
		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>;
		};

108 109 110 111 112 113
		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>;
114
			pinctrl-single,function-mask = <0x7f1f>;
115 116
		};

117
		omap3_pmx_wkup: pinmux@48002a00 {
118
			compatible = "ti,omap3-padconf", "pinctrl-single";
119
			reg = <0x48002a00 0x5c>;
120 121 122
			#address-cells = <1>;
			#size-cells = <0>;
			pinctrl-single,register-width = <16>;
123
			pinctrl-single,function-mask = <0x7f1f>;
124 125
		};

B
Benoit Cousson 已提交
126 127
		gpio1: gpio@48310000 {
			compatible = "ti,omap3-gpio";
128 129
			reg = <0x48310000 0x200>;
			interrupts = <29>;
B
Benoit Cousson 已提交
130
			ti,hwmods = "gpio1";
131
			ti,gpio-always-on;
B
Benoit Cousson 已提交
132 133 134
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
135
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
136 137 138 139
		};

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

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

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

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

		gpio6: gpio@49058000 {
			compatible = "ti,omap3-gpio";
184 185
			reg = <0x49058000 0x200>;
			interrupts = <34>;
B
Benoit Cousson 已提交
186 187 188 189
			ti,hwmods = "gpio6";
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
190
			#interrupt-cells = <2>;
B
Benoit Cousson 已提交
191 192
		};

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

199
		uart2: serial@4806c000 {
200 201 202 203 204
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart2";
			clock-frequency = <48000000>;
		};

205
		uart3: serial@49020000 {
206 207 208 209 210
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart3";
			clock-frequency = <48000000>;
		};

211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230
		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";
		};
231 232 233 234 235 236 237

		mcspi1: spi@48098000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi1";
			ti,spi-num-cs = <4>;
238 239 240 241 242 243 244 245 246 247
			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";
248 249 250 251 252 253 254 255
		};

		mcspi2: spi@4809a000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi2";
			ti,spi-num-cs = <2>;
256 257 258 259 260
			dmas = <&sdma 43>,
			       <&sdma 44>,
			       <&sdma 45>,
			       <&sdma 46>;
			dma-names = "tx0", "rx0", "tx1", "rx1";
261 262 263 264 265 266 267 268
		};

		mcspi3: spi@480b8000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi3";
			ti,spi-num-cs = <2>;
269 270 271 272 273
			dmas = <&sdma 15>,
			       <&sdma 16>,
			       <&sdma 23>,
			       <&sdma 24>;
			dma-names = "tx0", "rx0", "tx1", "rx1";
274 275 276 277 278 279 280 281
		};

		mcspi4: spi@480ba000 {
			compatible = "ti,omap2-mcspi";
			#address-cells = <1>;
			#size-cells = <0>;
			ti,hwmods = "mcspi4";
			ti,spi-num-cs = <1>;
282 283
			dmas = <&sdma 70>, <&sdma 71>;
			dma-names = "tx0", "rx0";
284
		};
285 286 287 288 289

		mmc1: mmc@4809c000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc1";
			ti,dual-volt;
290 291
			dmas = <&sdma 61>, <&sdma 62>;
			dma-names = "tx", "rx";
292 293 294 295 296
		};

		mmc2: mmc@480b4000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc2";
297 298
			dmas = <&sdma 47>, <&sdma 48>;
			dma-names = "tx", "rx";
299 300 301 302 303
		};

		mmc3: mmc@480ad000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc3";
304 305
			dmas = <&sdma 77>, <&sdma 78>;
			dma-names = "tx", "rx";
306
		};
307 308 309 310 311

		wdt2: wdt@48314000 {
			compatible = "ti,omap3-wdt";
			ti,hwmods = "wd_timer2";
		};
312 313 314 315 316 317 318 319 320 321 322

		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";
323 324 325
			dmas = <&sdma 31>,
			       <&sdma 32>;
			dma-names = "tx", "rx";
326 327 328 329 330 331 332 333 334 335 336 337 338
		};

		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>;
339
			ti,hwmods = "mcbsp2", "mcbsp2_sidetone";
340 341 342
			dmas = <&sdma 33>,
			       <&sdma 34>;
			dma-names = "tx", "rx";
343 344 345 346 347 348 349 350 351 352 353 354 355
		};

		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>;
356
			ti,hwmods = "mcbsp3", "mcbsp3_sidetone";
357 358 359
			dmas = <&sdma 17>,
			       <&sdma 18>;
			dma-names = "tx", "rx";
360 361 362 363 364 365 366 367 368 369 370 371
		};

		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";
372 373 374
			dmas = <&sdma 19>,
			       <&sdma 20>;
			dma-names = "tx", "rx";
375 376 377 378 379 380 381 382 383 384 385 386
		};

		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";
387 388 389
			dmas = <&sdma 21>,
			       <&sdma 22>;
			dma-names = "tx", "rx";
390
		};
J
Jon Hunter 已提交
391 392

		timer1: timer@48318000 {
393
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
394 395 396 397 398 399 400
			reg = <0x48318000 0x400>;
			interrupts = <37>;
			ti,hwmods = "timer1";
			ti,timer-alwon;
		};

		timer2: timer@49032000 {
401
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
402 403 404 405 406 407
			reg = <0x49032000 0x400>;
			interrupts = <38>;
			ti,hwmods = "timer2";
		};

		timer3: timer@49034000 {
408
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
409 410 411 412 413 414
			reg = <0x49034000 0x400>;
			interrupts = <39>;
			ti,hwmods = "timer3";
		};

		timer4: timer@49036000 {
415
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
416 417 418 419 420 421
			reg = <0x49036000 0x400>;
			interrupts = <40>;
			ti,hwmods = "timer4";
		};

		timer5: timer@49038000 {
422
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
423 424 425 426 427 428 429
			reg = <0x49038000 0x400>;
			interrupts = <41>;
			ti,hwmods = "timer5";
			ti,timer-dsp;
		};

		timer6: timer@4903a000 {
430
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
431 432 433 434 435 436 437
			reg = <0x4903a000 0x400>;
			interrupts = <42>;
			ti,hwmods = "timer6";
			ti,timer-dsp;
		};

		timer7: timer@4903c000 {
438
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
439 440 441 442 443 444 445
			reg = <0x4903c000 0x400>;
			interrupts = <43>;
			ti,hwmods = "timer7";
			ti,timer-dsp;
		};

		timer8: timer@4903e000 {
446
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
447 448 449 450 451 452 453 454
			reg = <0x4903e000 0x400>;
			interrupts = <44>;
			ti,hwmods = "timer8";
			ti,timer-pwm;
			ti,timer-dsp;
		};

		timer9: timer@49040000 {
455
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
456 457 458 459 460 461 462
			reg = <0x49040000 0x400>;
			interrupts = <45>;
			ti,hwmods = "timer9";
			ti,timer-pwm;
		};

		timer10: timer@48086000 {
463
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
464 465 466 467 468 469 470
			reg = <0x48086000 0x400>;
			interrupts = <46>;
			ti,hwmods = "timer10";
			ti,timer-pwm;
		};

		timer11: timer@48088000 {
471
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
472 473 474 475 476 477 478
			reg = <0x48088000 0x400>;
			interrupts = <47>;
			ti,hwmods = "timer11";
			ti,timer-pwm;
		};

		timer12: timer@48304000 {
479
			compatible = "ti,omap3430-timer";
J
Jon Hunter 已提交
480 481 482 483 484 485
			reg = <0x48304000 0x400>;
			interrupts = <95>;
			ti,hwmods = "timer12";
			ti,timer-alwon;
			ti,timer-secure;
		};
486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516

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

517 518 519
		gpmc: gpmc@6e000000 {
			compatible = "ti,omap3430-gpmc";
			ti,hwmods = "gpmc";
520
			reg = <0x6e000000 0x02d0>;
521 522 523 524 525 526
			interrupts = <20>;
			gpmc,num-cs = <8>;
			gpmc,num-waitpins = <4>;
			#address-cells = <2>;
			#size-cells = <1>;
		};
527 528 529 530

		usb_otg_hs: usb_otg_hs@480ab000 {
			compatible = "ti,omap3-musb";
			reg = <0x480ab000 0x1000>;
531
			interrupts = <92>, <93>;
532 533 534 535 536 537
			interrupt-names = "mc", "dma";
			ti,hwmods = "usb_otg_hs";
			multipoint = <1>;
			num-eps = <16>;
			ram-bits = <12>;
		};
538 539
	};
};