omap5-uevm.dts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485
  1. /*
  2. * Copyright (C) 2013 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. */
  8. /dts-v1/;
  9. #include "omap5.dtsi"
  10. #include <dt-bindings/interrupt-controller/irq.h>
  11. #include <dt-bindings/interrupt-controller/arm-gic.h>
  12. / {
  13. model = "TI OMAP5 uEVM board";
  14. compatible = "ti,omap5-uevm", "ti,omap5";
  15. memory {
  16. device_type = "memory";
  17. reg = <0x80000000 0x7F000000>; /* 2032 MB */
  18. };
  19. vmmcsd_fixed: fixedregulator-mmcsd {
  20. compatible = "regulator-fixed";
  21. regulator-name = "vmmcsd_fixed";
  22. regulator-min-microvolt = <3000000>;
  23. regulator-max-microvolt = <3000000>;
  24. };
  25. /* HS USB Port 2 RESET */
  26. hsusb2_reset: hsusb2_reset_reg {
  27. compatible = "regulator-fixed";
  28. regulator-name = "hsusb2_reset";
  29. regulator-min-microvolt = <3300000>;
  30. regulator-max-microvolt = <3300000>;
  31. gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>; /* gpio3_80 HUB_NRESET */
  32. startup-delay-us = <70000>;
  33. enable-active-high;
  34. };
  35. /* HS USB Host PHY on PORT 2 */
  36. hsusb2_phy: hsusb2_phy {
  37. compatible = "usb-nop-xceiv";
  38. reset-supply = <&hsusb2_reset>;
  39. /**
  40. * FIXME
  41. * Put the right clock phandle here when available
  42. * clocks = <&auxclk1>;
  43. * clock-names = "main_clk";
  44. */
  45. clock-frequency = <19200000>;
  46. };
  47. /* HS USB Port 3 RESET */
  48. hsusb3_reset: hsusb3_reset_reg {
  49. compatible = "regulator-fixed";
  50. regulator-name = "hsusb3_reset";
  51. regulator-min-microvolt = <3300000>;
  52. regulator-max-microvolt = <3300000>;
  53. gpio = <&gpio3 15 GPIO_ACTIVE_HIGH>; /* gpio3_79 ETH_NRESET */
  54. startup-delay-us = <70000>;
  55. enable-active-high;
  56. };
  57. /* HS USB Host PHY on PORT 3 */
  58. hsusb3_phy: hsusb3_phy {
  59. compatible = "usb-nop-xceiv";
  60. reset-supply = <&hsusb3_reset>;
  61. };
  62. leds {
  63. compatible = "gpio-leds";
  64. led@1 {
  65. label = "omap5:blue:usr1";
  66. gpios = <&gpio5 25 GPIO_ACTIVE_HIGH>; /* gpio5_153 D1 LED */
  67. linux,default-trigger = "heartbeat";
  68. default-state = "off";
  69. };
  70. };
  71. };
  72. &omap5_pmx_core {
  73. pinctrl-names = "default";
  74. pinctrl-0 = <
  75. &twl6040_pins
  76. &mcpdm_pins
  77. &dmic_pins
  78. &mcbsp1_pins
  79. &mcbsp2_pins
  80. &usbhost_pins
  81. &led_gpio_pins
  82. >;
  83. twl6040_pins: pinmux_twl6040_pins {
  84. pinctrl-single,pins = <
  85. 0x18a (PIN_OUTPUT | MUX_MODE6) /* perslimbus2_clock.gpio5_145 */
  86. >;
  87. };
  88. mcpdm_pins: pinmux_mcpdm_pins {
  89. pinctrl-single,pins = <
  90. 0x142 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
  91. 0x15c (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcpdm_ul_data.abemcpdm_ul_data */
  92. 0x15e (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcpdm_dl_data.abemcpdm_dl_data */
  93. 0x160 (PIN_INPUT_PULLUP | MUX_MODE0) /* abemcpdm_frame.abemcpdm_frame */
  94. 0x162 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcpdm_lb_clk.abemcpdm_lb_clk */
  95. >;
  96. };
  97. dmic_pins: pinmux_dmic_pins {
  98. pinctrl-single,pins = <
  99. 0x144 (PIN_INPUT | MUX_MODE0) /* abedmic_din1.abedmic_din1 */
  100. 0x146 (PIN_INPUT | MUX_MODE0) /* abedmic_din2.abedmic_din2 */
  101. 0x148 (PIN_INPUT | MUX_MODE0) /* abedmic_din3.abedmic_din3 */
  102. 0x14a (PIN_OUTPUT | MUX_MODE0) /* abedmic_clk1.abedmic_clk1 */
  103. >;
  104. };
  105. mcbsp1_pins: pinmux_mcbsp1_pins {
  106. pinctrl-single,pins = <
  107. 0x14c (PIN_INPUT | MUX_MODE1) /* abedmic_clk2.abemcbsp1_fsx */
  108. 0x14e (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* abedmic_clk3.abemcbsp1_dx */
  109. 0x150 (PIN_INPUT | MUX_MODE1) /* abeslimbus1_clock.abemcbsp1_clkx */
  110. 0x152 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* abeslimbus1_data.abemcbsp1_dr */
  111. >;
  112. };
  113. mcbsp2_pins: pinmux_mcbsp2_pins {
  114. pinctrl-single,pins = <
  115. 0x154 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcbsp2_dr.abemcbsp2_dr */
  116. 0x156 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abemcbsp2_dx.abemcbsp2_dx */
  117. 0x158 (PIN_INPUT | MUX_MODE0) /* abemcbsp2_fsx.abemcbsp2_fsx */
  118. 0x15a (PIN_INPUT | MUX_MODE0) /* abemcbsp2_clkx.abemcbsp2_clkx */
  119. >;
  120. };
  121. i2c1_pins: pinmux_i2c1_pins {
  122. pinctrl-single,pins = <
  123. 0x1b2 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
  124. 0x1b4 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
  125. >;
  126. };
  127. i2c5_pins: pinmux_i2c5_pins {
  128. pinctrl-single,pins = <
  129. 0x184 (PIN_INPUT | MUX_MODE0) /* i2c5_scl */
  130. 0x186 (PIN_INPUT | MUX_MODE0) /* i2c5_sda */
  131. >;
  132. };
  133. mcspi2_pins: pinmux_mcspi2_pins {
  134. pinctrl-single,pins = <
  135. 0xbc (PIN_INPUT | MUX_MODE0) /* mcspi2_clk */
  136. 0xbe (PIN_INPUT | MUX_MODE0) /* mcspi2_simo */
  137. 0xc0 (PIN_INPUT_PULLUP | MUX_MODE0) /* mcspi2_somi */
  138. 0xc2 (PIN_OUTPUT | MUX_MODE0) /* mcspi2_cs */
  139. >;
  140. };
  141. mcspi3_pins: pinmux_mcspi3_pins {
  142. pinctrl-single,pins = <
  143. 0x78 (PIN_INPUT | MUX_MODE1) /* mcspi2_somi */
  144. 0x7a (PIN_INPUT | MUX_MODE1) /* mcspi2_cs */
  145. 0x7c (PIN_INPUT | MUX_MODE1) /* mcspi2_simo */
  146. 0x7e (PIN_INPUT | MUX_MODE1) /* mcspi2_clk */
  147. >;
  148. };
  149. mcspi4_pins: pinmux_mcspi4_pins {
  150. pinctrl-single,pins = <
  151. 0x164 (PIN_INPUT | MUX_MODE1) /* mcspi2_clk */
  152. 0x168 (PIN_INPUT | MUX_MODE1) /* mcspi2_simo */
  153. 0x16a (PIN_INPUT | MUX_MODE1) /* mcspi2_somi */
  154. 0x16c (PIN_INPUT | MUX_MODE1) /* mcspi2_cs */
  155. >;
  156. };
  157. usbhost_pins: pinmux_usbhost_pins {
  158. pinctrl-single,pins = <
  159. 0x84 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_strobe */
  160. 0x86 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_data */
  161. 0x19e (PIN_INPUT | MUX_MODE0) /* usbb3_hsic_strobe */
  162. 0x1a0 (PIN_INPUT | MUX_MODE0) /* usbb3_hsic_data */
  163. 0x70 (PIN_OUTPUT | MUX_MODE6) /* gpio3_80 HUB_NRESET */
  164. 0x6e (PIN_OUTPUT | MUX_MODE6) /* gpio3_79 ETH_NRESET */
  165. >;
  166. };
  167. led_gpio_pins: pinmux_led_gpio_pins {
  168. pinctrl-single,pins = <
  169. 0x196 (PIN_OUTPUT | MUX_MODE6) /* uart3_cts_rctx.gpio5_153 */
  170. >;
  171. };
  172. uart1_pins: pinmux_uart1_pins {
  173. pinctrl-single,pins = <
  174. 0x60 (PIN_OUTPUT | MUX_MODE0) /* uart1_tx.uart1_cts */
  175. 0x62 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_tx.uart1_cts */
  176. 0x64 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rx.uart1_rts */
  177. 0x66 (PIN_OUTPUT | MUX_MODE0) /* uart1_rx.uart1_rts */
  178. >;
  179. };
  180. uart3_pins: pinmux_uart3_pins {
  181. pinctrl-single,pins = <
  182. 0x19a (PIN_OUTPUT | MUX_MODE0) /* uart3_rts_irsd.uart3_tx_irtx */
  183. 0x19c (PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_rx_irrx.uart3_usbb3_hsic */
  184. >;
  185. };
  186. uart5_pins: pinmux_uart5_pins {
  187. pinctrl-single,pins = <
  188. 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_rx.uart5_rx */
  189. 0x172 (PIN_OUTPUT | MUX_MODE0) /* uart5_tx.uart5_tx */
  190. 0x174 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_cts.uart5_rts */
  191. 0x176 (PIN_OUTPUT | MUX_MODE0) /* uart5_cts.uart5_rts */
  192. >;
  193. };
  194. };
  195. &omap5_pmx_wkup {
  196. pinctrl-names = "default";
  197. pinctrl-0 = <
  198. &usbhost_wkup_pins
  199. >;
  200. usbhost_wkup_pins: pinmux_usbhost_wkup_pins {
  201. pinctrl-single,pins = <
  202. 0x1A (PIN_OUTPUT | MUX_MODE0) /* fref_clk1_out, USB hub clk */
  203. >;
  204. };
  205. };
  206. &mmc1 {
  207. vmmc-supply = <&vmmcsd_fixed>;
  208. bus-width = <4>;
  209. };
  210. &mmc2 {
  211. vmmc-supply = <&vmmcsd_fixed>;
  212. bus-width = <8>;
  213. ti,non-removable;
  214. };
  215. &mmc3 {
  216. bus-width = <4>;
  217. ti,non-removable;
  218. };
  219. &mmc4 {
  220. status = "disabled";
  221. };
  222. &mmc5 {
  223. status = "disabled";
  224. };
  225. &i2c1 {
  226. pinctrl-names = "default";
  227. pinctrl-0 = <&i2c1_pins>;
  228. clock-frequency = <400000>;
  229. palmas: palmas@48 {
  230. compatible = "ti,palmas";
  231. interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */
  232. interrupt-parent = <&gic>;
  233. reg = <0x48>;
  234. interrupt-controller;
  235. #interrupt-cells = <2>;
  236. palmas_pmic {
  237. compatible = "ti,palmas-pmic";
  238. interrupt-parent = <&palmas>;
  239. interrupts = <14 IRQ_TYPE_NONE>;
  240. interrupt-name = "short-irq";
  241. ti,ldo6-vibrator;
  242. regulators {
  243. smps123_reg: smps123 {
  244. regulator-name = "smps123";
  245. regulator-min-microvolt = < 600000>;
  246. regulator-max-microvolt = <1500000>;
  247. regulator-always-on;
  248. regulator-boot-on;
  249. };
  250. smps45_reg: smps45 {
  251. regulator-name = "smps45";
  252. regulator-min-microvolt = < 600000>;
  253. regulator-max-microvolt = <1310000>;
  254. regulator-always-on;
  255. regulator-boot-on;
  256. };
  257. smps6_reg: smps6 {
  258. regulator-name = "smps6";
  259. regulator-min-microvolt = <1200000>;
  260. regulator-max-microvolt = <1200000>;
  261. regulator-always-on;
  262. regulator-boot-on;
  263. };
  264. smps7_reg: smps7 {
  265. regulator-name = "smps7";
  266. regulator-min-microvolt = <1800000>;
  267. regulator-max-microvolt = <1800000>;
  268. regulator-always-on;
  269. regulator-boot-on;
  270. };
  271. smps8_reg: smps8 {
  272. regulator-name = "smps8";
  273. regulator-min-microvolt = < 600000>;
  274. regulator-max-microvolt = <1310000>;
  275. regulator-always-on;
  276. regulator-boot-on;
  277. };
  278. smps9_reg: smps9 {
  279. regulator-name = "smps9";
  280. regulator-min-microvolt = <2100000>;
  281. regulator-max-microvolt = <2100000>;
  282. regulator-always-on;
  283. regulator-boot-on;
  284. ti,smps-range = <0x80>;
  285. };
  286. smps10_reg: smps10 {
  287. regulator-name = "smps10";
  288. regulator-min-microvolt = <5000000>;
  289. regulator-max-microvolt = <5000000>;
  290. regulator-always-on;
  291. regulator-boot-on;
  292. };
  293. ldo1_reg: ldo1 {
  294. regulator-name = "ldo1";
  295. regulator-min-microvolt = <2800000>;
  296. regulator-max-microvolt = <2800000>;
  297. regulator-always-on;
  298. regulator-boot-on;
  299. };
  300. ldo2_reg: ldo2 {
  301. regulator-name = "ldo2";
  302. regulator-min-microvolt = <2900000>;
  303. regulator-max-microvolt = <2900000>;
  304. regulator-always-on;
  305. regulator-boot-on;
  306. };
  307. ldo3_reg: ldo3 {
  308. regulator-name = "ldo3";
  309. regulator-min-microvolt = <3000000>;
  310. regulator-max-microvolt = <3000000>;
  311. regulator-always-on;
  312. regulator-boot-on;
  313. };
  314. ldo4_reg: ldo4 {
  315. regulator-name = "ldo4";
  316. regulator-min-microvolt = <2200000>;
  317. regulator-max-microvolt = <2200000>;
  318. regulator-always-on;
  319. regulator-boot-on;
  320. };
  321. ldo5_reg: ldo5 {
  322. regulator-name = "ldo5";
  323. regulator-min-microvolt = <1800000>;
  324. regulator-max-microvolt = <1800000>;
  325. regulator-always-on;
  326. regulator-boot-on;
  327. };
  328. ldo6_reg: ldo6 {
  329. regulator-name = "ldo6";
  330. regulator-min-microvolt = <1500000>;
  331. regulator-max-microvolt = <1500000>;
  332. regulator-always-on;
  333. regulator-boot-on;
  334. };
  335. ldo7_reg: ldo7 {
  336. regulator-name = "ldo7";
  337. regulator-min-microvolt = <1500000>;
  338. regulator-max-microvolt = <1500000>;
  339. regulator-always-on;
  340. regulator-boot-on;
  341. };
  342. ldo8_reg: ldo8 {
  343. regulator-name = "ldo8";
  344. regulator-min-microvolt = <1500000>;
  345. regulator-max-microvolt = <1500000>;
  346. regulator-always-on;
  347. regulator-boot-on;
  348. };
  349. ldo9_reg: ldo9 {
  350. regulator-name = "ldo9";
  351. regulator-min-microvolt = <1800000>;
  352. regulator-max-microvolt = <3300000>;
  353. regulator-always-on;
  354. regulator-boot-on;
  355. };
  356. ldoln_reg: ldoln {
  357. regulator-name = "ldoln";
  358. regulator-min-microvolt = <1800000>;
  359. regulator-max-microvolt = <1800000>;
  360. regulator-always-on;
  361. regulator-boot-on;
  362. };
  363. ldousb_reg: ldousb {
  364. regulator-name = "ldousb";
  365. regulator-min-microvolt = <3250000>;
  366. regulator-max-microvolt = <3250000>;
  367. regulator-always-on;
  368. regulator-boot-on;
  369. };
  370. };
  371. };
  372. };
  373. };
  374. &i2c5 {
  375. pinctrl-names = "default";
  376. pinctrl-0 = <&i2c5_pins>;
  377. clock-frequency = <400000>;
  378. };
  379. &mcbsp3 {
  380. status = "disabled";
  381. };
  382. &usbhshost {
  383. port2-mode = "ehci-hsic";
  384. port3-mode = "ehci-hsic";
  385. };
  386. &usbhsehci {
  387. phys = <0 &hsusb2_phy &hsusb3_phy>;
  388. };
  389. &mcspi1 {
  390. };
  391. &mcspi2 {
  392. pinctrl-names = "default";
  393. pinctrl-0 = <&mcspi2_pins>;
  394. };
  395. &mcspi3 {
  396. pinctrl-names = "default";
  397. pinctrl-0 = <&mcspi3_pins>;
  398. };
  399. &mcspi4 {
  400. pinctrl-names = "default";
  401. pinctrl-0 = <&mcspi4_pins>;
  402. };
  403. &uart1 {
  404. pinctrl-names = "default";
  405. pinctrl-0 = <&uart1_pins>;
  406. };
  407. &uart3 {
  408. pinctrl-names = "default";
  409. pinctrl-0 = <&uart3_pins>;
  410. };
  411. &uart5 {
  412. pinctrl-names = "default";
  413. pinctrl-0 = <&uart5_pins>;
  414. };