omap5-uevm.dts 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505
  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 = <&ldo9_reg>;
  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. /* VDD_OPP_MPU */
  245. regulator-name = "smps123";
  246. regulator-min-microvolt = < 600000>;
  247. regulator-max-microvolt = <1500000>;
  248. regulator-always-on;
  249. regulator-boot-on;
  250. };
  251. smps45_reg: smps45 {
  252. /* VDD_OPP_MM */
  253. regulator-name = "smps45";
  254. regulator-min-microvolt = < 600000>;
  255. regulator-max-microvolt = <1310000>;
  256. regulator-always-on;
  257. regulator-boot-on;
  258. };
  259. smps6_reg: smps6 {
  260. /* VDD_DDR3 - over VDD_SMPS6 */
  261. regulator-name = "smps6";
  262. regulator-min-microvolt = <1200000>;
  263. regulator-max-microvolt = <1200000>;
  264. regulator-always-on;
  265. regulator-boot-on;
  266. };
  267. smps7_reg: smps7 {
  268. /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */
  269. regulator-name = "smps7";
  270. regulator-min-microvolt = <1800000>;
  271. regulator-max-microvolt = <1800000>;
  272. regulator-always-on;
  273. regulator-boot-on;
  274. };
  275. smps8_reg: smps8 {
  276. /* VDD_OPP_CORE */
  277. regulator-name = "smps8";
  278. regulator-min-microvolt = < 600000>;
  279. regulator-max-microvolt = <1310000>;
  280. regulator-always-on;
  281. regulator-boot-on;
  282. };
  283. smps9_reg: smps9 {
  284. /* VDDA_2v1_AUD over VDD_2v1 */
  285. regulator-name = "smps9";
  286. regulator-min-microvolt = <2100000>;
  287. regulator-max-microvolt = <2100000>;
  288. ti,smps-range = <0x80>;
  289. };
  290. smps10_reg: smps10 {
  291. /* VBUS_5V_OTG */
  292. regulator-name = "smps10";
  293. regulator-min-microvolt = <5000000>;
  294. regulator-max-microvolt = <5000000>;
  295. regulator-always-on;
  296. regulator-boot-on;
  297. };
  298. ldo1_reg: ldo1 {
  299. /* VDDAPHY_CAM: vdda_csiport */
  300. regulator-name = "ldo1";
  301. regulator-min-microvolt = <1500000>;
  302. regulator-max-microvolt = <1800000>;
  303. };
  304. ldo2_reg: ldo2 {
  305. /* VCC_2V8_DISP: Does not go anywhere */
  306. regulator-name = "ldo2";
  307. regulator-min-microvolt = <2800000>;
  308. regulator-max-microvolt = <2800000>;
  309. /* Unused */
  310. status = "disabled";
  311. };
  312. ldo3_reg: ldo3 {
  313. /* VDDAPHY_MDM: vdda_lli */
  314. regulator-name = "ldo3";
  315. regulator-min-microvolt = <1500000>;
  316. regulator-max-microvolt = <1500000>;
  317. regulator-boot-on;
  318. /* Only if Modem is used */
  319. status = "disabled";
  320. };
  321. ldo4_reg: ldo4 {
  322. /* VDDAPHY_DISP: vdda_dsiport/hdmi */
  323. regulator-name = "ldo4";
  324. regulator-min-microvolt = <1500000>;
  325. regulator-max-microvolt = <1800000>;
  326. };
  327. ldo5_reg: ldo5 {
  328. /* VDDA_1V8_PHY: usb/sata/hdmi.. */
  329. regulator-name = "ldo5";
  330. regulator-min-microvolt = <1800000>;
  331. regulator-max-microvolt = <1800000>;
  332. regulator-always-on;
  333. regulator-boot-on;
  334. };
  335. ldo6_reg: ldo6 {
  336. /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */
  337. regulator-name = "ldo6";
  338. regulator-min-microvolt = <1200000>;
  339. regulator-max-microvolt = <1200000>;
  340. regulator-always-on;
  341. regulator-boot-on;
  342. };
  343. ldo7_reg: ldo7 {
  344. /* VDD_VPP: vpp1 */
  345. regulator-name = "ldo7";
  346. regulator-min-microvolt = <2000000>;
  347. regulator-max-microvolt = <2000000>;
  348. /* Only for efuse reprograming! */
  349. status = "disabled";
  350. };
  351. ldo8_reg: ldo8 {
  352. /* VDD_3v0: Does not go anywhere */
  353. regulator-name = "ldo8";
  354. regulator-min-microvolt = <3000000>;
  355. regulator-max-microvolt = <3000000>;
  356. regulator-boot-on;
  357. /* Unused */
  358. status = "disabled";
  359. };
  360. ldo9_reg: ldo9 {
  361. /* VCC_DV_SDIO: vdds_sdcard */
  362. regulator-name = "ldo9";
  363. regulator-min-microvolt = <1800000>;
  364. regulator-max-microvolt = <3000000>;
  365. regulator-boot-on;
  366. };
  367. ldoln_reg: ldoln {
  368. /* VDDA_1v8_REF: vdds_osc/mm_l4per.. */
  369. regulator-name = "ldoln";
  370. regulator-min-microvolt = <1800000>;
  371. regulator-max-microvolt = <1800000>;
  372. regulator-always-on;
  373. regulator-boot-on;
  374. };
  375. ldousb_reg: ldousb {
  376. /* VDDA_3V_USB: VDDA_USBHS33 */
  377. regulator-name = "ldousb";
  378. regulator-min-microvolt = <3250000>;
  379. regulator-max-microvolt = <3250000>;
  380. regulator-always-on;
  381. regulator-boot-on;
  382. };
  383. regen3_reg: regen3 {
  384. /* REGEN3 controls LDO9 supply to card */
  385. regulator-name = "regen3";
  386. regulator-always-on;
  387. regulator-boot-on;
  388. };
  389. };
  390. };
  391. };
  392. };
  393. &i2c5 {
  394. pinctrl-names = "default";
  395. pinctrl-0 = <&i2c5_pins>;
  396. clock-frequency = <400000>;
  397. };
  398. &mcbsp3 {
  399. status = "disabled";
  400. };
  401. &usbhshost {
  402. port2-mode = "ehci-hsic";
  403. port3-mode = "ehci-hsic";
  404. };
  405. &usbhsehci {
  406. phys = <0 &hsusb2_phy &hsusb3_phy>;
  407. };
  408. &mcspi1 {
  409. };
  410. &mcspi2 {
  411. pinctrl-names = "default";
  412. pinctrl-0 = <&mcspi2_pins>;
  413. };
  414. &mcspi3 {
  415. pinctrl-names = "default";
  416. pinctrl-0 = <&mcspi3_pins>;
  417. };
  418. &mcspi4 {
  419. pinctrl-names = "default";
  420. pinctrl-0 = <&mcspi4_pins>;
  421. };
  422. &uart1 {
  423. pinctrl-names = "default";
  424. pinctrl-0 = <&uart1_pins>;
  425. };
  426. &uart3 {
  427. pinctrl-names = "default";
  428. pinctrl-0 = <&uart3_pins>;
  429. };
  430. &uart5 {
  431. pinctrl-names = "default";
  432. pinctrl-0 = <&uart5_pins>;
  433. };