omap5.dtsi 27 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126
  1. /*
  2. * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License version 2 as
  6. * published by the Free Software Foundation.
  7. * Based on "omap4.dtsi"
  8. */
  9. #include <dt-bindings/gpio/gpio.h>
  10. #include <dt-bindings/interrupt-controller/arm-gic.h>
  11. #include <dt-bindings/pinctrl/omap.h>
  12. #include "skeleton.dtsi"
  13. / {
  14. #address-cells = <1>;
  15. #size-cells = <1>;
  16. compatible = "ti,omap5";
  17. interrupt-parent = <&wakeupgen>;
  18. aliases {
  19. i2c0 = &i2c1;
  20. i2c1 = &i2c2;
  21. i2c2 = &i2c3;
  22. i2c3 = &i2c4;
  23. i2c4 = &i2c5;
  24. serial0 = &uart1;
  25. serial1 = &uart2;
  26. serial2 = &uart3;
  27. serial3 = &uart4;
  28. serial4 = &uart5;
  29. serial5 = &uart6;
  30. };
  31. cpus {
  32. #address-cells = <1>;
  33. #size-cells = <0>;
  34. cpu0: cpu@0 {
  35. device_type = "cpu";
  36. compatible = "arm,cortex-a15";
  37. reg = <0x0>;
  38. operating-points = <
  39. /* kHz uV */
  40. 1000000 1060000
  41. 1500000 1250000
  42. >;
  43. clocks = <&dpll_mpu_ck>;
  44. clock-names = "cpu";
  45. clock-latency = <300000>; /* From omap-cpufreq driver */
  46. /* cooling options */
  47. cooling-min-level = <0>;
  48. cooling-max-level = <2>;
  49. #cooling-cells = <2>; /* min followed by max */
  50. };
  51. cpu@1 {
  52. device_type = "cpu";
  53. compatible = "arm,cortex-a15";
  54. reg = <0x1>;
  55. };
  56. };
  57. thermal-zones {
  58. #include "omap4-cpu-thermal.dtsi"
  59. #include "omap5-gpu-thermal.dtsi"
  60. #include "omap5-core-thermal.dtsi"
  61. };
  62. timer {
  63. compatible = "arm,armv7-timer";
  64. /* PPI secure/nonsecure IRQ */
  65. interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
  66. <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
  67. <GIC_PPI 11 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
  68. <GIC_PPI 10 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>;
  69. interrupt-parent = <&gic>;
  70. };
  71. pmu {
  72. compatible = "arm,cortex-a15-pmu";
  73. interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
  74. <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
  75. };
  76. gic: interrupt-controller@48211000 {
  77. compatible = "arm,cortex-a15-gic";
  78. interrupt-controller;
  79. #interrupt-cells = <3>;
  80. reg = <0x48211000 0x1000>,
  81. <0x48212000 0x1000>,
  82. <0x48214000 0x2000>,
  83. <0x48216000 0x2000>;
  84. interrupt-parent = <&gic>;
  85. };
  86. wakeupgen: interrupt-controller@48281000 {
  87. compatible = "ti,omap5-wugen-mpu", "ti,omap4-wugen-mpu";
  88. interrupt-controller;
  89. #interrupt-cells = <3>;
  90. reg = <0x48281000 0x1000>;
  91. interrupt-parent = <&gic>;
  92. };
  93. /*
  94. * The soc node represents the soc top level view. It is used for IPs
  95. * that are not memory mapped in the MPU view or for the MPU itself.
  96. */
  97. soc {
  98. compatible = "ti,omap-infra";
  99. mpu {
  100. compatible = "ti,omap4-mpu";
  101. ti,hwmods = "mpu";
  102. sram = <&ocmcram>;
  103. };
  104. };
  105. /*
  106. * XXX: Use a flat representation of the OMAP3 interconnect.
  107. * The real OMAP interconnect network is quite complex.
  108. * Since it will not bring real advantage to represent that in DT for
  109. * the moment, just use a fake OCP bus entry to represent the whole bus
  110. * hierarchy.
  111. */
  112. ocp {
  113. compatible = "ti,omap5-l3-noc", "simple-bus";
  114. #address-cells = <1>;
  115. #size-cells = <1>;
  116. ranges;
  117. ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
  118. reg = <0x44000000 0x2000>,
  119. <0x44800000 0x3000>,
  120. <0x45000000 0x4000>;
  121. interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
  122. <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
  123. l4_cfg: l4@4a000000 {
  124. compatible = "ti,omap5-l4-cfg", "simple-bus";
  125. #address-cells = <1>;
  126. #size-cells = <1>;
  127. ranges = <0 0x4a000000 0x22a000>;
  128. scm_core: scm@2000 {
  129. compatible = "ti,omap5-scm-core", "simple-bus";
  130. reg = <0x2000 0x1000>;
  131. #address-cells = <1>;
  132. #size-cells = <1>;
  133. ranges = <0 0x2000 0x800>;
  134. scm_conf: scm_conf@0 {
  135. compatible = "syscon";
  136. reg = <0x0 0x800>;
  137. #address-cells = <1>;
  138. #size-cells = <1>;
  139. };
  140. };
  141. scm_padconf_core: scm@2800 {
  142. compatible = "ti,omap5-scm-padconf-core",
  143. "simple-bus";
  144. #address-cells = <1>;
  145. #size-cells = <1>;
  146. ranges = <0 0x2800 0x800>;
  147. omap5_pmx_core: pinmux@40 {
  148. compatible = "ti,omap5-padconf",
  149. "pinctrl-single";
  150. reg = <0x40 0x01b6>;
  151. #address-cells = <1>;
  152. #size-cells = <0>;
  153. #interrupt-cells = <1>;
  154. interrupt-controller;
  155. pinctrl-single,register-width = <16>;
  156. pinctrl-single,function-mask = <0x7fff>;
  157. };
  158. omap5_padconf_global: omap5_padconf_global@5a0 {
  159. compatible = "syscon",
  160. "simple-bus";
  161. reg = <0x5a0 0xec>;
  162. #address-cells = <1>;
  163. #size-cells = <1>;
  164. ranges = <0 0x5a0 0xec>;
  165. pbias_regulator: pbias_regulator {
  166. compatible = "ti,pbias-omap5", "ti,pbias-omap";
  167. reg = <0x60 0x4>;
  168. syscon = <&omap5_padconf_global>;
  169. pbias_mmc_reg: pbias_mmc_omap5 {
  170. regulator-name = "pbias_mmc_omap5";
  171. regulator-min-microvolt = <1800000>;
  172. regulator-max-microvolt = <3000000>;
  173. };
  174. };
  175. };
  176. };
  177. cm_core_aon: cm_core_aon@4000 {
  178. compatible = "ti,omap5-cm-core-aon";
  179. reg = <0x4000 0x2000>;
  180. cm_core_aon_clocks: clocks {
  181. #address-cells = <1>;
  182. #size-cells = <0>;
  183. };
  184. cm_core_aon_clockdomains: clockdomains {
  185. };
  186. };
  187. cm_core: cm_core@8000 {
  188. compatible = "ti,omap5-cm-core";
  189. reg = <0x8000 0x3000>;
  190. cm_core_clocks: clocks {
  191. #address-cells = <1>;
  192. #size-cells = <0>;
  193. };
  194. cm_core_clockdomains: clockdomains {
  195. };
  196. };
  197. };
  198. l4_wkup: l4@4ae00000 {
  199. compatible = "ti,omap5-l4-wkup", "simple-bus";
  200. #address-cells = <1>;
  201. #size-cells = <1>;
  202. ranges = <0 0x4ae00000 0x2b000>;
  203. counter32k: counter@4000 {
  204. compatible = "ti,omap-counter32k";
  205. reg = <0x4000 0x40>;
  206. ti,hwmods = "counter_32k";
  207. };
  208. prm: prm@6000 {
  209. compatible = "ti,omap5-prm";
  210. reg = <0x6000 0x3000>;
  211. interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
  212. prm_clocks: clocks {
  213. #address-cells = <1>;
  214. #size-cells = <0>;
  215. };
  216. prm_clockdomains: clockdomains {
  217. };
  218. };
  219. scrm: scrm@a000 {
  220. compatible = "ti,omap5-scrm";
  221. reg = <0xa000 0x2000>;
  222. scrm_clocks: clocks {
  223. #address-cells = <1>;
  224. #size-cells = <0>;
  225. };
  226. scrm_clockdomains: clockdomains {
  227. };
  228. };
  229. omap5_pmx_wkup: pinmux@c840 {
  230. compatible = "ti,omap5-padconf",
  231. "pinctrl-single";
  232. reg = <0xc840 0x003c>;
  233. #address-cells = <1>;
  234. #size-cells = <0>;
  235. #interrupt-cells = <1>;
  236. interrupt-controller;
  237. pinctrl-single,register-width = <16>;
  238. pinctrl-single,function-mask = <0x7fff>;
  239. };
  240. };
  241. ocmcram: ocmcram@40300000 {
  242. compatible = "mmio-sram";
  243. reg = <0x40300000 0x20000>; /* 128k */
  244. };
  245. sdma: dma-controller@4a056000 {
  246. compatible = "ti,omap4430-sdma";
  247. reg = <0x4a056000 0x1000>;
  248. interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
  249. <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
  250. <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
  251. <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
  252. #dma-cells = <1>;
  253. dma-channels = <32>;
  254. dma-requests = <127>;
  255. };
  256. gpio1: gpio@4ae10000 {
  257. compatible = "ti,omap4-gpio";
  258. reg = <0x4ae10000 0x200>;
  259. interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
  260. ti,hwmods = "gpio1";
  261. ti,gpio-always-on;
  262. gpio-controller;
  263. #gpio-cells = <2>;
  264. interrupt-controller;
  265. #interrupt-cells = <2>;
  266. };
  267. gpio2: gpio@48055000 {
  268. compatible = "ti,omap4-gpio";
  269. reg = <0x48055000 0x200>;
  270. interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
  271. ti,hwmods = "gpio2";
  272. gpio-controller;
  273. #gpio-cells = <2>;
  274. interrupt-controller;
  275. #interrupt-cells = <2>;
  276. };
  277. gpio3: gpio@48057000 {
  278. compatible = "ti,omap4-gpio";
  279. reg = <0x48057000 0x200>;
  280. interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
  281. ti,hwmods = "gpio3";
  282. gpio-controller;
  283. #gpio-cells = <2>;
  284. interrupt-controller;
  285. #interrupt-cells = <2>;
  286. };
  287. gpio4: gpio@48059000 {
  288. compatible = "ti,omap4-gpio";
  289. reg = <0x48059000 0x200>;
  290. interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
  291. ti,hwmods = "gpio4";
  292. gpio-controller;
  293. #gpio-cells = <2>;
  294. interrupt-controller;
  295. #interrupt-cells = <2>;
  296. };
  297. gpio5: gpio@4805b000 {
  298. compatible = "ti,omap4-gpio";
  299. reg = <0x4805b000 0x200>;
  300. interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
  301. ti,hwmods = "gpio5";
  302. gpio-controller;
  303. #gpio-cells = <2>;
  304. interrupt-controller;
  305. #interrupt-cells = <2>;
  306. };
  307. gpio6: gpio@4805d000 {
  308. compatible = "ti,omap4-gpio";
  309. reg = <0x4805d000 0x200>;
  310. interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
  311. ti,hwmods = "gpio6";
  312. gpio-controller;
  313. #gpio-cells = <2>;
  314. interrupt-controller;
  315. #interrupt-cells = <2>;
  316. };
  317. gpio7: gpio@48051000 {
  318. compatible = "ti,omap4-gpio";
  319. reg = <0x48051000 0x200>;
  320. interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
  321. ti,hwmods = "gpio7";
  322. gpio-controller;
  323. #gpio-cells = <2>;
  324. interrupt-controller;
  325. #interrupt-cells = <2>;
  326. };
  327. gpio8: gpio@48053000 {
  328. compatible = "ti,omap4-gpio";
  329. reg = <0x48053000 0x200>;
  330. interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
  331. ti,hwmods = "gpio8";
  332. gpio-controller;
  333. #gpio-cells = <2>;
  334. interrupt-controller;
  335. #interrupt-cells = <2>;
  336. };
  337. gpmc: gpmc@50000000 {
  338. compatible = "ti,omap4430-gpmc";
  339. reg = <0x50000000 0x1000>;
  340. #address-cells = <2>;
  341. #size-cells = <1>;
  342. interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
  343. dmas = <&sdma 4>;
  344. dma-names = "rxtx";
  345. gpmc,num-cs = <8>;
  346. gpmc,num-waitpins = <4>;
  347. ti,hwmods = "gpmc";
  348. clocks = <&l3_iclk_div>;
  349. clock-names = "fck";
  350. };
  351. i2c1: i2c@48070000 {
  352. compatible = "ti,omap4-i2c";
  353. reg = <0x48070000 0x100>;
  354. interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
  355. #address-cells = <1>;
  356. #size-cells = <0>;
  357. ti,hwmods = "i2c1";
  358. };
  359. i2c2: i2c@48072000 {
  360. compatible = "ti,omap4-i2c";
  361. reg = <0x48072000 0x100>;
  362. interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
  363. #address-cells = <1>;
  364. #size-cells = <0>;
  365. ti,hwmods = "i2c2";
  366. };
  367. i2c3: i2c@48060000 {
  368. compatible = "ti,omap4-i2c";
  369. reg = <0x48060000 0x100>;
  370. interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
  371. #address-cells = <1>;
  372. #size-cells = <0>;
  373. ti,hwmods = "i2c3";
  374. };
  375. i2c4: i2c@4807a000 {
  376. compatible = "ti,omap4-i2c";
  377. reg = <0x4807a000 0x100>;
  378. interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
  379. #address-cells = <1>;
  380. #size-cells = <0>;
  381. ti,hwmods = "i2c4";
  382. };
  383. i2c5: i2c@4807c000 {
  384. compatible = "ti,omap4-i2c";
  385. reg = <0x4807c000 0x100>;
  386. interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
  387. #address-cells = <1>;
  388. #size-cells = <0>;
  389. ti,hwmods = "i2c5";
  390. };
  391. hwspinlock: spinlock@4a0f6000 {
  392. compatible = "ti,omap4-hwspinlock";
  393. reg = <0x4a0f6000 0x1000>;
  394. ti,hwmods = "spinlock";
  395. #hwlock-cells = <1>;
  396. };
  397. mcspi1: spi@48098000 {
  398. compatible = "ti,omap4-mcspi";
  399. reg = <0x48098000 0x200>;
  400. interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
  401. #address-cells = <1>;
  402. #size-cells = <0>;
  403. ti,hwmods = "mcspi1";
  404. ti,spi-num-cs = <4>;
  405. dmas = <&sdma 35>,
  406. <&sdma 36>,
  407. <&sdma 37>,
  408. <&sdma 38>,
  409. <&sdma 39>,
  410. <&sdma 40>,
  411. <&sdma 41>,
  412. <&sdma 42>;
  413. dma-names = "tx0", "rx0", "tx1", "rx1",
  414. "tx2", "rx2", "tx3", "rx3";
  415. };
  416. mcspi2: spi@4809a000 {
  417. compatible = "ti,omap4-mcspi";
  418. reg = <0x4809a000 0x200>;
  419. interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
  420. #address-cells = <1>;
  421. #size-cells = <0>;
  422. ti,hwmods = "mcspi2";
  423. ti,spi-num-cs = <2>;
  424. dmas = <&sdma 43>,
  425. <&sdma 44>,
  426. <&sdma 45>,
  427. <&sdma 46>;
  428. dma-names = "tx0", "rx0", "tx1", "rx1";
  429. };
  430. mcspi3: spi@480b8000 {
  431. compatible = "ti,omap4-mcspi";
  432. reg = <0x480b8000 0x200>;
  433. interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
  434. #address-cells = <1>;
  435. #size-cells = <0>;
  436. ti,hwmods = "mcspi3";
  437. ti,spi-num-cs = <2>;
  438. dmas = <&sdma 15>, <&sdma 16>;
  439. dma-names = "tx0", "rx0";
  440. };
  441. mcspi4: spi@480ba000 {
  442. compatible = "ti,omap4-mcspi";
  443. reg = <0x480ba000 0x200>;
  444. interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
  445. #address-cells = <1>;
  446. #size-cells = <0>;
  447. ti,hwmods = "mcspi4";
  448. ti,spi-num-cs = <1>;
  449. dmas = <&sdma 70>, <&sdma 71>;
  450. dma-names = "tx0", "rx0";
  451. };
  452. uart1: serial@4806a000 {
  453. compatible = "ti,omap4-uart";
  454. reg = <0x4806a000 0x100>;
  455. interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
  456. ti,hwmods = "uart1";
  457. clock-frequency = <48000000>;
  458. };
  459. uart2: serial@4806c000 {
  460. compatible = "ti,omap4-uart";
  461. reg = <0x4806c000 0x100>;
  462. interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
  463. ti,hwmods = "uart2";
  464. clock-frequency = <48000000>;
  465. };
  466. uart3: serial@48020000 {
  467. compatible = "ti,omap4-uart";
  468. reg = <0x48020000 0x100>;
  469. interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
  470. ti,hwmods = "uart3";
  471. clock-frequency = <48000000>;
  472. };
  473. uart4: serial@4806e000 {
  474. compatible = "ti,omap4-uart";
  475. reg = <0x4806e000 0x100>;
  476. interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
  477. ti,hwmods = "uart4";
  478. clock-frequency = <48000000>;
  479. };
  480. uart5: serial@48066000 {
  481. compatible = "ti,omap4-uart";
  482. reg = <0x48066000 0x100>;
  483. interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
  484. ti,hwmods = "uart5";
  485. clock-frequency = <48000000>;
  486. };
  487. uart6: serial@48068000 {
  488. compatible = "ti,omap4-uart";
  489. reg = <0x48068000 0x100>;
  490. interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
  491. ti,hwmods = "uart6";
  492. clock-frequency = <48000000>;
  493. };
  494. mmc1: mmc@4809c000 {
  495. compatible = "ti,omap4-hsmmc";
  496. reg = <0x4809c000 0x400>;
  497. interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
  498. ti,hwmods = "mmc1";
  499. ti,dual-volt;
  500. ti,needs-special-reset;
  501. dmas = <&sdma 61>, <&sdma 62>;
  502. dma-names = "tx", "rx";
  503. pbias-supply = <&pbias_mmc_reg>;
  504. };
  505. mmc2: mmc@480b4000 {
  506. compatible = "ti,omap4-hsmmc";
  507. reg = <0x480b4000 0x400>;
  508. interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
  509. ti,hwmods = "mmc2";
  510. ti,needs-special-reset;
  511. dmas = <&sdma 47>, <&sdma 48>;
  512. dma-names = "tx", "rx";
  513. };
  514. mmc3: mmc@480ad000 {
  515. compatible = "ti,omap4-hsmmc";
  516. reg = <0x480ad000 0x400>;
  517. interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
  518. ti,hwmods = "mmc3";
  519. ti,needs-special-reset;
  520. dmas = <&sdma 77>, <&sdma 78>;
  521. dma-names = "tx", "rx";
  522. };
  523. mmc4: mmc@480d1000 {
  524. compatible = "ti,omap4-hsmmc";
  525. reg = <0x480d1000 0x400>;
  526. interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
  527. ti,hwmods = "mmc4";
  528. ti,needs-special-reset;
  529. dmas = <&sdma 57>, <&sdma 58>;
  530. dma-names = "tx", "rx";
  531. };
  532. mmc5: mmc@480d5000 {
  533. compatible = "ti,omap4-hsmmc";
  534. reg = <0x480d5000 0x400>;
  535. interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
  536. ti,hwmods = "mmc5";
  537. ti,needs-special-reset;
  538. dmas = <&sdma 59>, <&sdma 60>;
  539. dma-names = "tx", "rx";
  540. };
  541. mmu_dsp: mmu@4a066000 {
  542. compatible = "ti,omap4-iommu";
  543. reg = <0x4a066000 0x100>;
  544. interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
  545. ti,hwmods = "mmu_dsp";
  546. #iommu-cells = <0>;
  547. };
  548. mmu_ipu: mmu@55082000 {
  549. compatible = "ti,omap4-iommu";
  550. reg = <0x55082000 0x100>;
  551. interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
  552. ti,hwmods = "mmu_ipu";
  553. #iommu-cells = <0>;
  554. ti,iommu-bus-err-back;
  555. };
  556. keypad: keypad@4ae1c000 {
  557. compatible = "ti,omap4-keypad";
  558. reg = <0x4ae1c000 0x400>;
  559. ti,hwmods = "kbd";
  560. };
  561. mcpdm: mcpdm@40132000 {
  562. compatible = "ti,omap4-mcpdm";
  563. reg = <0x40132000 0x7f>, /* MPU private access */
  564. <0x49032000 0x7f>; /* L3 Interconnect */
  565. reg-names = "mpu", "dma";
  566. interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
  567. ti,hwmods = "mcpdm";
  568. dmas = <&sdma 65>,
  569. <&sdma 66>;
  570. dma-names = "up_link", "dn_link";
  571. status = "disabled";
  572. };
  573. dmic: dmic@4012e000 {
  574. compatible = "ti,omap4-dmic";
  575. reg = <0x4012e000 0x7f>, /* MPU private access */
  576. <0x4902e000 0x7f>; /* L3 Interconnect */
  577. reg-names = "mpu", "dma";
  578. interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
  579. ti,hwmods = "dmic";
  580. dmas = <&sdma 67>;
  581. dma-names = "up_link";
  582. status = "disabled";
  583. };
  584. mcbsp1: mcbsp@40122000 {
  585. compatible = "ti,omap4-mcbsp";
  586. reg = <0x40122000 0xff>, /* MPU private access */
  587. <0x49022000 0xff>; /* L3 Interconnect */
  588. reg-names = "mpu", "dma";
  589. interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
  590. interrupt-names = "common";
  591. ti,buffer-size = <128>;
  592. ti,hwmods = "mcbsp1";
  593. dmas = <&sdma 33>,
  594. <&sdma 34>;
  595. dma-names = "tx", "rx";
  596. status = "disabled";
  597. };
  598. mcbsp2: mcbsp@40124000 {
  599. compatible = "ti,omap4-mcbsp";
  600. reg = <0x40124000 0xff>, /* MPU private access */
  601. <0x49024000 0xff>; /* L3 Interconnect */
  602. reg-names = "mpu", "dma";
  603. interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
  604. interrupt-names = "common";
  605. ti,buffer-size = <128>;
  606. ti,hwmods = "mcbsp2";
  607. dmas = <&sdma 17>,
  608. <&sdma 18>;
  609. dma-names = "tx", "rx";
  610. status = "disabled";
  611. };
  612. mcbsp3: mcbsp@40126000 {
  613. compatible = "ti,omap4-mcbsp";
  614. reg = <0x40126000 0xff>, /* MPU private access */
  615. <0x49026000 0xff>; /* L3 Interconnect */
  616. reg-names = "mpu", "dma";
  617. interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
  618. interrupt-names = "common";
  619. ti,buffer-size = <128>;
  620. ti,hwmods = "mcbsp3";
  621. dmas = <&sdma 19>,
  622. <&sdma 20>;
  623. dma-names = "tx", "rx";
  624. status = "disabled";
  625. };
  626. mailbox: mailbox@4a0f4000 {
  627. compatible = "ti,omap4-mailbox";
  628. reg = <0x4a0f4000 0x200>;
  629. interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
  630. ti,hwmods = "mailbox";
  631. #mbox-cells = <1>;
  632. ti,mbox-num-users = <3>;
  633. ti,mbox-num-fifos = <8>;
  634. mbox_ipu: mbox_ipu {
  635. ti,mbox-tx = <0 0 0>;
  636. ti,mbox-rx = <1 0 0>;
  637. };
  638. mbox_dsp: mbox_dsp {
  639. ti,mbox-tx = <3 0 0>;
  640. ti,mbox-rx = <2 0 0>;
  641. };
  642. };
  643. timer1: timer@4ae18000 {
  644. compatible = "ti,omap5430-timer";
  645. reg = <0x4ae18000 0x80>;
  646. interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
  647. ti,hwmods = "timer1";
  648. ti,timer-alwon;
  649. };
  650. timer2: timer@48032000 {
  651. compatible = "ti,omap5430-timer";
  652. reg = <0x48032000 0x80>;
  653. interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
  654. ti,hwmods = "timer2";
  655. };
  656. timer3: timer@48034000 {
  657. compatible = "ti,omap5430-timer";
  658. reg = <0x48034000 0x80>;
  659. interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
  660. ti,hwmods = "timer3";
  661. };
  662. timer4: timer@48036000 {
  663. compatible = "ti,omap5430-timer";
  664. reg = <0x48036000 0x80>;
  665. interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
  666. ti,hwmods = "timer4";
  667. };
  668. timer5: timer@40138000 {
  669. compatible = "ti,omap5430-timer";
  670. reg = <0x40138000 0x80>,
  671. <0x49038000 0x80>;
  672. interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
  673. ti,hwmods = "timer5";
  674. ti,timer-dsp;
  675. ti,timer-pwm;
  676. };
  677. timer6: timer@4013a000 {
  678. compatible = "ti,omap5430-timer";
  679. reg = <0x4013a000 0x80>,
  680. <0x4903a000 0x80>;
  681. interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
  682. ti,hwmods = "timer6";
  683. ti,timer-dsp;
  684. ti,timer-pwm;
  685. };
  686. timer7: timer@4013c000 {
  687. compatible = "ti,omap5430-timer";
  688. reg = <0x4013c000 0x80>,
  689. <0x4903c000 0x80>;
  690. interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
  691. ti,hwmods = "timer7";
  692. ti,timer-dsp;
  693. };
  694. timer8: timer@4013e000 {
  695. compatible = "ti,omap5430-timer";
  696. reg = <0x4013e000 0x80>,
  697. <0x4903e000 0x80>;
  698. interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
  699. ti,hwmods = "timer8";
  700. ti,timer-dsp;
  701. ti,timer-pwm;
  702. };
  703. timer9: timer@4803e000 {
  704. compatible = "ti,omap5430-timer";
  705. reg = <0x4803e000 0x80>;
  706. interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
  707. ti,hwmods = "timer9";
  708. ti,timer-pwm;
  709. };
  710. timer10: timer@48086000 {
  711. compatible = "ti,omap5430-timer";
  712. reg = <0x48086000 0x80>;
  713. interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
  714. ti,hwmods = "timer10";
  715. ti,timer-pwm;
  716. };
  717. timer11: timer@48088000 {
  718. compatible = "ti,omap5430-timer";
  719. reg = <0x48088000 0x80>;
  720. interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
  721. ti,hwmods = "timer11";
  722. ti,timer-pwm;
  723. };
  724. wdt2: wdt@4ae14000 {
  725. compatible = "ti,omap5-wdt", "ti,omap3-wdt";
  726. reg = <0x4ae14000 0x80>;
  727. interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
  728. ti,hwmods = "wd_timer2";
  729. };
  730. dmm@4e000000 {
  731. compatible = "ti,omap5-dmm";
  732. reg = <0x4e000000 0x800>;
  733. interrupts = <0 113 0x4>;
  734. ti,hwmods = "dmm";
  735. };
  736. emif1: emif@4c000000 {
  737. compatible = "ti,emif-4d5";
  738. ti,hwmods = "emif1";
  739. ti,no-idle-on-init;
  740. phy-type = <2>; /* DDR PHY type: Intelli PHY */
  741. reg = <0x4c000000 0x400>;
  742. interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
  743. hw-caps-read-idle-ctrl;
  744. hw-caps-ll-interface;
  745. hw-caps-temp-alert;
  746. };
  747. emif2: emif@4d000000 {
  748. compatible = "ti,emif-4d5";
  749. ti,hwmods = "emif2";
  750. ti,no-idle-on-init;
  751. phy-type = <2>; /* DDR PHY type: Intelli PHY */
  752. reg = <0x4d000000 0x400>;
  753. interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
  754. hw-caps-read-idle-ctrl;
  755. hw-caps-ll-interface;
  756. hw-caps-temp-alert;
  757. };
  758. usb3: omap_dwc3@4a020000 {
  759. compatible = "ti,dwc3";
  760. ti,hwmods = "usb_otg_ss";
  761. reg = <0x4a020000 0x10000>;
  762. interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
  763. #address-cells = <1>;
  764. #size-cells = <1>;
  765. utmi-mode = <2>;
  766. ranges;
  767. dwc3@4a030000 {
  768. compatible = "snps,dwc3";
  769. reg = <0x4a030000 0x10000>;
  770. interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
  771. <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
  772. <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
  773. interrupt-names = "peripheral",
  774. "host",
  775. "otg";
  776. phys = <&usb2_phy>, <&usb3_phy>;
  777. phy-names = "usb2-phy", "usb3-phy";
  778. dr_mode = "peripheral";
  779. };
  780. };
  781. ocp2scp@4a080000 {
  782. compatible = "ti,omap-ocp2scp";
  783. #address-cells = <1>;
  784. #size-cells = <1>;
  785. reg = <0x4a080000 0x20>;
  786. ranges;
  787. ti,hwmods = "ocp2scp1";
  788. usb2_phy: usb2phy@4a084000 {
  789. compatible = "ti,omap-usb2";
  790. reg = <0x4a084000 0x7c>;
  791. syscon-phy-power = <&scm_conf 0x300>;
  792. clocks = <&usb_phy_cm_clk32k>, <&usb_otg_ss_refclk960m>;
  793. clock-names = "wkupclk", "refclk";
  794. #phy-cells = <0>;
  795. };
  796. usb3_phy: usb3phy@4a084400 {
  797. compatible = "ti,omap-usb3";
  798. reg = <0x4a084400 0x80>,
  799. <0x4a084800 0x64>,
  800. <0x4a084c00 0x40>;
  801. reg-names = "phy_rx", "phy_tx", "pll_ctrl";
  802. syscon-phy-power = <&scm_conf 0x370>;
  803. clocks = <&usb_phy_cm_clk32k>,
  804. <&sys_clkin>,
  805. <&usb_otg_ss_refclk960m>;
  806. clock-names = "wkupclk",
  807. "sysclk",
  808. "refclk";
  809. #phy-cells = <0>;
  810. };
  811. };
  812. usbhstll: usbhstll@4a062000 {
  813. compatible = "ti,usbhs-tll";
  814. reg = <0x4a062000 0x1000>;
  815. interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
  816. ti,hwmods = "usb_tll_hs";
  817. };
  818. usbhshost: usbhshost@4a064000 {
  819. compatible = "ti,usbhs-host";
  820. reg = <0x4a064000 0x800>;
  821. ti,hwmods = "usb_host_hs";
  822. #address-cells = <1>;
  823. #size-cells = <1>;
  824. ranges;
  825. clocks = <&l3init_60m_fclk>,
  826. <&xclk60mhsp1_ck>,
  827. <&xclk60mhsp2_ck>;
  828. clock-names = "refclk_60m_int",
  829. "refclk_60m_ext_p1",
  830. "refclk_60m_ext_p2";
  831. usbhsohci: ohci@4a064800 {
  832. compatible = "ti,ohci-omap3";
  833. reg = <0x4a064800 0x400>;
  834. interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
  835. };
  836. usbhsehci: ehci@4a064c00 {
  837. compatible = "ti,ehci-omap";
  838. reg = <0x4a064c00 0x400>;
  839. interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
  840. };
  841. };
  842. bandgap: bandgap@4a0021e0 {
  843. reg = <0x4a0021e0 0xc
  844. 0x4a00232c 0xc
  845. 0x4a002380 0x2c
  846. 0x4a0023C0 0x3c>;
  847. interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
  848. compatible = "ti,omap5430-bandgap";
  849. #thermal-sensor-cells = <1>;
  850. };
  851. /* OCP2SCP3 */
  852. ocp2scp@4a090000 {
  853. compatible = "ti,omap-ocp2scp";
  854. #address-cells = <1>;
  855. #size-cells = <1>;
  856. reg = <0x4a090000 0x20>;
  857. ranges;
  858. ti,hwmods = "ocp2scp3";
  859. sata_phy: phy@4a096000 {
  860. compatible = "ti,phy-pipe3-sata";
  861. reg = <0x4A096000 0x80>, /* phy_rx */
  862. <0x4A096400 0x64>, /* phy_tx */
  863. <0x4A096800 0x40>; /* pll_ctrl */
  864. reg-names = "phy_rx", "phy_tx", "pll_ctrl";
  865. syscon-phy-power = <&scm_conf 0x374>;
  866. clocks = <&sys_clkin>, <&sata_ref_clk>;
  867. clock-names = "sysclk", "refclk";
  868. #phy-cells = <0>;
  869. };
  870. };
  871. sata: sata@4a141100 {
  872. compatible = "snps,dwc-ahci";
  873. reg = <0x4a140000 0x1100>, <0x4a141100 0x7>;
  874. interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
  875. phys = <&sata_phy>;
  876. phy-names = "sata-phy";
  877. clocks = <&sata_ref_clk>;
  878. ti,hwmods = "sata";
  879. };
  880. dss: dss@58000000 {
  881. compatible = "ti,omap5-dss";
  882. reg = <0x58000000 0x80>;
  883. status = "disabled";
  884. ti,hwmods = "dss_core";
  885. clocks = <&dss_dss_clk>;
  886. clock-names = "fck";
  887. #address-cells = <1>;
  888. #size-cells = <1>;
  889. ranges;
  890. dispc@58001000 {
  891. compatible = "ti,omap5-dispc";
  892. reg = <0x58001000 0x1000>;
  893. interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
  894. ti,hwmods = "dss_dispc";
  895. clocks = <&dss_dss_clk>;
  896. clock-names = "fck";
  897. };
  898. rfbi: encoder@58002000 {
  899. compatible = "ti,omap5-rfbi";
  900. reg = <0x58002000 0x100>;
  901. status = "disabled";
  902. ti,hwmods = "dss_rfbi";
  903. clocks = <&dss_dss_clk>, <&l3_iclk_div>;
  904. clock-names = "fck", "ick";
  905. };
  906. dsi1: encoder@58004000 {
  907. compatible = "ti,omap5-dsi";
  908. reg = <0x58004000 0x200>,
  909. <0x58004200 0x40>,
  910. <0x58004300 0x40>;
  911. reg-names = "proto", "phy", "pll";
  912. interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
  913. status = "disabled";
  914. ti,hwmods = "dss_dsi1";
  915. clocks = <&dss_dss_clk>, <&dss_sys_clk>;
  916. clock-names = "fck", "sys_clk";
  917. };
  918. dsi2: encoder@58005000 {
  919. compatible = "ti,omap5-dsi";
  920. reg = <0x58009000 0x200>,
  921. <0x58009200 0x40>,
  922. <0x58009300 0x40>;
  923. reg-names = "proto", "phy", "pll";
  924. interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
  925. status = "disabled";
  926. ti,hwmods = "dss_dsi2";
  927. clocks = <&dss_dss_clk>, <&dss_sys_clk>;
  928. clock-names = "fck", "sys_clk";
  929. };
  930. hdmi: encoder@58060000 {
  931. compatible = "ti,omap5-hdmi";
  932. reg = <0x58040000 0x200>,
  933. <0x58040200 0x80>,
  934. <0x58040300 0x80>,
  935. <0x58060000 0x19000>;
  936. reg-names = "wp", "pll", "phy", "core";
  937. interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
  938. status = "disabled";
  939. ti,hwmods = "dss_hdmi";
  940. clocks = <&dss_48mhz_clk>, <&dss_sys_clk>;
  941. clock-names = "fck", "sys_clk";
  942. dmas = <&sdma 76>;
  943. dma-names = "audio_tx";
  944. };
  945. };
  946. abb_mpu: regulator-abb-mpu {
  947. compatible = "ti,abb-v2";
  948. regulator-name = "abb_mpu";
  949. #address-cells = <0>;
  950. #size-cells = <0>;
  951. clocks = <&sys_clkin>;
  952. ti,settling-time = <50>;
  953. ti,clock-cycles = <16>;
  954. reg = <0x4ae07cdc 0x8>, <0x4ae06014 0x4>,
  955. <0x4a0021c4 0x8>, <0x4ae0c318 0x4>;
  956. reg-names = "base-address", "int-address",
  957. "efuse-address", "ldo-address";
  958. ti,tranxdone-status-mask = <0x80>;
  959. /* LDOVBBMPU_MUX_CTRL */
  960. ti,ldovbb-override-mask = <0x400>;
  961. /* LDOVBBMPU_VSET_OUT */
  962. ti,ldovbb-vset-mask = <0x1F>;
  963. /*
  964. * NOTE: only FBB mode used but actual vset will
  965. * determine final biasing
  966. */
  967. ti,abb_info = <
  968. /*uV ABB efuse rbb_m fbb_m vset_m*/
  969. 1060000 0 0x0 0 0x02000000 0x01F00000
  970. 1250000 0 0x4 0 0x02000000 0x01F00000
  971. >;
  972. };
  973. abb_mm: regulator-abb-mm {
  974. compatible = "ti,abb-v2";
  975. regulator-name = "abb_mm";
  976. #address-cells = <0>;
  977. #size-cells = <0>;
  978. clocks = <&sys_clkin>;
  979. ti,settling-time = <50>;
  980. ti,clock-cycles = <16>;
  981. reg = <0x4ae07ce4 0x8>, <0x4ae06010 0x4>,
  982. <0x4a0021a4 0x8>, <0x4ae0c314 0x4>;
  983. reg-names = "base-address", "int-address",
  984. "efuse-address", "ldo-address";
  985. ti,tranxdone-status-mask = <0x80000000>;
  986. /* LDOVBBMM_MUX_CTRL */
  987. ti,ldovbb-override-mask = <0x400>;
  988. /* LDOVBBMM_VSET_OUT */
  989. ti,ldovbb-vset-mask = <0x1F>;
  990. /*
  991. * NOTE: only FBB mode used but actual vset will
  992. * determine final biasing
  993. */
  994. ti,abb_info = <
  995. /*uV ABB efuse rbb_m fbb_m vset_m*/
  996. 1025000 0 0x0 0 0x02000000 0x01F00000
  997. 1120000 0 0x4 0 0x02000000 0x01F00000
  998. >;
  999. };
  1000. };
  1001. };
  1002. &cpu_thermal {
  1003. polling-delay = <500>; /* milliseconds */
  1004. };
  1005. /include/ "omap54xx-clocks.dtsi"