omap3-gta04.dtsi 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621
  1. /*
  2. * Copyright (C) 2013 Marek Belisko <marek@goldelico.com>
  3. *
  4. * Based on omap3-beagle-xm.dts
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. */
  10. /dts-v1/;
  11. #include "omap36xx.dtsi"
  12. / {
  13. model = "OMAP3 GTA04";
  14. compatible = "ti,omap3-gta04", "ti,omap36xx", "ti,omap3";
  15. cpus {
  16. cpu@0 {
  17. cpu0-supply = <&vcc>;
  18. };
  19. };
  20. memory@80000000 {
  21. device_type = "memory";
  22. reg = <0x80000000 0x20000000>; /* 512 MB */
  23. };
  24. aliases {
  25. display0 = &lcd;
  26. };
  27. gpio-keys {
  28. compatible = "gpio-keys";
  29. aux-button {
  30. label = "aux";
  31. linux,code = <169>;
  32. gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
  33. wakeup-source;
  34. };
  35. };
  36. sound {
  37. compatible = "ti,omap-twl4030";
  38. ti,model = "gta04";
  39. ti,mcbsp = <&mcbsp2>;
  40. };
  41. /* GSM audio */
  42. sound_telephony {
  43. compatible = "simple-audio-card";
  44. simple-audio-card,name = "GTA04 voice";
  45. simple-audio-card,bitclock-master = <&telephony_link_master>;
  46. simple-audio-card,frame-master = <&telephony_link_master>;
  47. simple-audio-card,format = "i2s";
  48. simple-audio-card,cpu {
  49. sound-dai = <&mcbsp4>;
  50. };
  51. telephony_link_master: simple-audio-card,codec {
  52. sound-dai = <&gtm601_codec>;
  53. };
  54. };
  55. gtm601_codec: gsm_codec {
  56. compatible = "option,gtm601";
  57. #sound-dai-cells = <0>;
  58. };
  59. spi_lcd {
  60. compatible = "spi-gpio";
  61. #address-cells = <0x1>;
  62. #size-cells = <0x0>;
  63. pinctrl-names = "default";
  64. pinctrl-0 = <&spi_gpio_pins>;
  65. gpio-sck = <&gpio1 12 GPIO_ACTIVE_HIGH>;
  66. gpio-miso = <&gpio1 18 GPIO_ACTIVE_HIGH>;
  67. gpio-mosi = <&gpio1 20 GPIO_ACTIVE_HIGH>;
  68. cs-gpios = <&gpio1 19 GPIO_ACTIVE_HIGH>;
  69. num-chipselects = <1>;
  70. /* lcd panel */
  71. lcd: td028ttec1@0 {
  72. compatible = "toppoly,td028ttec1";
  73. reg = <0>;
  74. spi-max-frequency = <100000>;
  75. spi-cpol;
  76. spi-cpha;
  77. label = "lcd";
  78. port {
  79. lcd_in: endpoint {
  80. remote-endpoint = <&dpi_out>;
  81. };
  82. };
  83. };
  84. };
  85. backlight {
  86. compatible = "pwm-backlight";
  87. pwms = <&pwm11 0 12000000 0>;
  88. pwm-names = "backlight";
  89. brightness-levels = <0 11 20 30 40 50 60 70 80 90 100>;
  90. default-brightness-level = <9>; /* => 90 */
  91. pinctrl-names = "default";
  92. pinctrl-0 = <&backlight_pins>;
  93. };
  94. pwm11: dmtimer-pwm {
  95. compatible = "ti,omap-dmtimer-pwm";
  96. ti,timers = <&timer11>;
  97. #pwm-cells = <3>;
  98. };
  99. hsusb2_phy: hsusb2_phy {
  100. compatible = "usb-nop-xceiv";
  101. reset-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
  102. };
  103. tv0: connector {
  104. compatible = "svideo-connector";
  105. label = "tv";
  106. port {
  107. tv_connector_in: endpoint {
  108. remote-endpoint = <&opa_out>;
  109. };
  110. };
  111. };
  112. tv_amp: opa362 {
  113. compatible = "ti,opa362";
  114. enable-gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
  115. ports {
  116. #address-cells = <1>;
  117. #size-cells = <0>;
  118. port@0 {
  119. reg = <0>;
  120. opa_in: endpoint {
  121. remote-endpoint = <&venc_out>;
  122. };
  123. };
  124. port@1 {
  125. reg = <1>;
  126. opa_out: endpoint {
  127. remote-endpoint = <&tv_connector_in>;
  128. };
  129. };
  130. };
  131. };
  132. wifi_pwrseq: wifi_pwrseq {
  133. compatible = "mmc-pwrseq-simple";
  134. reset-gpios = <&tca6507 0 GPIO_ACTIVE_LOW>; /* W2CBW003 reset through tca6507 */
  135. };
  136. };
  137. &omap3_pmx_core {
  138. pinctrl-names = "default";
  139. pinctrl-0 = <
  140. &hsusb2_pins
  141. >;
  142. hsusb2_pins: pinmux_hsusb2_pins {
  143. pinctrl-single,pins = <
  144. OMAP3_CORE1_IOPAD(0x21d4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi1_cs3.hsusb2_data2 */
  145. OMAP3_CORE1_IOPAD(0x21d6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_clk.hsusb2_data7 */
  146. OMAP3_CORE1_IOPAD(0x21d8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_simo.hsusb2_data4 */
  147. OMAP3_CORE1_IOPAD(0x21da, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_somi.hsusb2_data5 */
  148. OMAP3_CORE1_IOPAD(0x21dc, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs0.hsusb2_data6 */
  149. OMAP3_CORE1_IOPAD(0x21de, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs1.hsusb2_data3 */
  150. >;
  151. };
  152. uart1_pins: pinmux_uart1_pins {
  153. pinctrl-single,pins = <
  154. OMAP3_CORE1_IOPAD(0x2182, PIN_INPUT | MUX_MODE0) /* uart1_rx.uart1_rx */
  155. OMAP3_CORE1_IOPAD(0x217c, PIN_OUTPUT | MUX_MODE0) /* uart1_tx.uart1_tx */
  156. >;
  157. };
  158. uart2_pins: pinmux_uart2_pins {
  159. pinctrl-single,pins = <
  160. OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx.uart2_rx */
  161. OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */
  162. >;
  163. };
  164. uart3_pins: pinmux_uart3_pins {
  165. pinctrl-single,pins = <
  166. OMAP3_CORE1_IOPAD(0x219e, PIN_INPUT | MUX_MODE0) /* uart3_rx.uart3_rx */
  167. OMAP3_CORE1_IOPAD(0x21a0, PIN_OUTPUT | MUX_MODE0) /* uart3_tx.uart3_tx */
  168. >;
  169. };
  170. mmc1_pins: pinmux_mmc1_pins {
  171. pinctrl-single,pins = <
  172. OMAP3_CORE1_IOPAD(0x2144, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
  173. OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
  174. OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
  175. OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
  176. OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
  177. OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
  178. >;
  179. };
  180. backlight_pins: backlight_pins_pimnux {
  181. pinctrl-single,pins = <
  182. OMAP3_CORE1_IOPAD(0x20ba, MUX_MODE3) /* gpt11/gpio57 */
  183. >;
  184. };
  185. dss_dpi_pins: pinmux_dss_dpi_pins {
  186. pinctrl-single,pins = <
  187. OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
  188. OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
  189. OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
  190. OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
  191. OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */
  192. OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */
  193. OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */
  194. OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */
  195. OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */
  196. OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */
  197. OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
  198. OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
  199. OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
  200. OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
  201. OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
  202. OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
  203. OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
  204. OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
  205. OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
  206. OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
  207. OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
  208. OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
  209. OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */
  210. OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */
  211. OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */
  212. OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */
  213. OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */
  214. OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */
  215. >;
  216. };
  217. hdq_pins: hdq_pins {
  218. pinctrl-single,pins = <
  219. OMAP3_CORE1_IOPAD(0x21c6, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda.hdq */
  220. >;
  221. };
  222. bma180_pins: pinmux_bma180_pins {
  223. pinctrl-single,pins = <
  224. OMAP3_CORE1_IOPAD(0x213a, PIN_INPUT_PULLUP | MUX_MODE4) /* gpio115 */
  225. >;
  226. };
  227. itg3200_pins: pinmux_itg3200_pins {
  228. pinctrl-single,pins = <
  229. OMAP3_CORE1_IOPAD(0x20b8, PIN_INPUT_PULLUP | MUX_MODE4) /* gpio56 */
  230. >;
  231. };
  232. hmc5843_pins: pinmux_hmc5843_pins {
  233. pinctrl-single,pins = <
  234. OMAP3_CORE1_IOPAD(0x2134, PIN_INPUT_PULLUP | MUX_MODE4) /* gpio112 */
  235. >;
  236. };
  237. };
  238. &omap3_pmx_core2 {
  239. pinctrl-names = "default";
  240. pinctrl-0 = <
  241. &hsusb2_2_pins
  242. >;
  243. hsusb2_2_pins: pinmux_hsusb2_2_pins {
  244. pinctrl-single,pins = <
  245. OMAP3630_CORE2_IOPAD(0x25f0, PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */
  246. OMAP3630_CORE2_IOPAD(0x25f2, PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */
  247. OMAP3630_CORE2_IOPAD(0x25f4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */
  248. OMAP3630_CORE2_IOPAD(0x25f6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */
  249. OMAP3630_CORE2_IOPAD(0x25f8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */
  250. OMAP3630_CORE2_IOPAD(0x25fa, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */
  251. >;
  252. };
  253. spi_gpio_pins: spi_gpio_pinmux {
  254. pinctrl-single,pins = <
  255. OMAP3630_CORE2_IOPAD(0x25d8, PIN_OUTPUT | MUX_MODE4) /* clk */
  256. OMAP3630_CORE2_IOPAD(0x25e6, PIN_OUTPUT | MUX_MODE4) /* cs */
  257. OMAP3630_CORE2_IOPAD(0x25e8, PIN_OUTPUT | MUX_MODE4) /* tx */
  258. OMAP3630_CORE2_IOPAD(0x25e4, PIN_INPUT | MUX_MODE4) /* rx */
  259. >;
  260. };
  261. };
  262. &i2c1 {
  263. clock-frequency = <2600000>;
  264. twl: twl@48 {
  265. reg = <0x48>;
  266. interrupts = <7>; /* SYS_NIRQ cascaded to intc */
  267. interrupt-parent = <&intc>;
  268. twl_audio: audio {
  269. compatible = "ti,twl4030-audio";
  270. ti,enable-vibra = <1>;
  271. codec {
  272. ti,ramp_delay_value = <3>;
  273. };
  274. };
  275. twl_power: power {
  276. compatible = "ti,twl4030-power";
  277. ti,use_poweroff;
  278. };
  279. };
  280. };
  281. #include "twl4030.dtsi"
  282. #include "twl4030_omap3.dtsi"
  283. &i2c2 {
  284. clock-frequency = <400000>;
  285. /* pressure sensor */
  286. bmp085@77 {
  287. compatible = "bosch,bmp085";
  288. reg = <0x77>;
  289. interrupt-parent = <&gpio4>;
  290. interrupts = <17 IRQ_TYPE_EDGE_RISING>; /* GPIO_113 */
  291. };
  292. /* accelerometer */
  293. bma180@41 {
  294. compatible = "bosch,bma180";
  295. reg = <0x41>;
  296. pinctrl-names = "default";
  297. pintcrl-0 = <&bma180_pins>;
  298. interrupt-parent = <&gpio4>;
  299. interrupts = <19 IRQ_TYPE_LEVEL_HIGH>; /* GPIO_115 */
  300. };
  301. /* gyroscope */
  302. itg3200@68 {
  303. compatible = "invensense,itg3200";
  304. reg = <0x68>;
  305. pinctrl-names = "default";
  306. pinctrl-0 = <&itg3200_pins>;
  307. interrupt-parent = <&gpio2>;
  308. interrupts = <24 IRQ_TYPE_EDGE_FALLING>; /* GPIO_56 */
  309. };
  310. /* leds + gpios */
  311. tca6507: tca6507@45 {
  312. compatible = "ti,tca6507";
  313. #address-cells = <1>;
  314. #size-cells = <0>;
  315. reg = <0x45>;
  316. gpio-controller;
  317. #gpio-cells = <2>;
  318. gta04_led0: red_aux@0 {
  319. label = "gta04:red:aux";
  320. reg = <0x0>;
  321. };
  322. gta04_led1: green_aux@1 {
  323. label = "gta04:green:aux";
  324. reg = <0x1>;
  325. };
  326. gta04_led3: red_power@3 {
  327. label = "gta04:red:power";
  328. reg = <0x3>;
  329. linux,default-trigger = "default-on";
  330. };
  331. gta04_led4: green_power@4 {
  332. label = "gta04:green:power";
  333. reg = <0x4>;
  334. };
  335. wifi_reset: wifi_reset@6 {
  336. reg = <0x6>;
  337. compatible = "gpio";
  338. };
  339. };
  340. /* compass aka magnetometer */
  341. hmc5843@1e {
  342. compatible = "honeywell,hmc5883l";
  343. reg = <0x1e>;
  344. pinctrl-names = "default";
  345. pinctrl-0 = <&hmc5843_pins>;
  346. interrupt-parent = <&gpio4>;
  347. interrupts = <16 IRQ_TYPE_EDGE_FALLING>; /* gpio112 */
  348. };
  349. /* touchscreen */
  350. tsc2007@48 {
  351. compatible = "ti,tsc2007";
  352. reg = <0x48>;
  353. interrupt-parent = <&gpio6>;
  354. interrupts = <0 IRQ_TYPE_EDGE_FALLING>; /* GPIO_160 */
  355. gpios = <&gpio6 0 GPIO_ACTIVE_LOW>;
  356. ti,x-plate-ohms = <600>;
  357. };
  358. /* RFID EEPROM */
  359. m24lr64@50 {
  360. compatible = "at,24c64";
  361. reg = <0x50>;
  362. };
  363. };
  364. &i2c3 {
  365. clock-frequency = <100000>;
  366. };
  367. &usb_otg_hs {
  368. interface-type = <0>;
  369. usb-phy = <&usb2_phy>;
  370. phys = <&usb2_phy>;
  371. phy-names = "usb2-phy";
  372. mode = <3>;
  373. power = <50>;
  374. };
  375. &usbhshost {
  376. port2-mode = "ehci-phy";
  377. };
  378. &usbhsehci {
  379. phys = <0 &hsusb2_phy>;
  380. };
  381. &mmc1 {
  382. pinctrl-names = "default";
  383. pinctrl-0 = <&mmc1_pins>;
  384. vmmc-supply = <&vmmc1>;
  385. bus-width = <4>;
  386. ti,non-removable;
  387. };
  388. &mmc2 {
  389. vmmc-supply = <&vaux4>;
  390. bus-width = <4>;
  391. ti,non-removable;
  392. cap-power-off-card;
  393. mmc-pwrseq = <&wifi_pwrseq>;
  394. };
  395. &mmc3 {
  396. status = "disabled";
  397. };
  398. &twl_keypad {
  399. status = "disabled";
  400. };
  401. &uart1 {
  402. pinctrl-names = "default";
  403. pinctrl-0 = <&uart1_pins>;
  404. };
  405. &uart2 {
  406. pinctrl-names = "default";
  407. pinctrl-0 = <&uart2_pins>;
  408. };
  409. &uart3 {
  410. pinctrl-names = "default";
  411. pinctrl-0 = <&uart3_pins>;
  412. };
  413. &charger {
  414. ti,bb-uvolt = <3200000>;
  415. ti,bb-uamp = <150>;
  416. };
  417. /* spare */
  418. &vaux1 {
  419. regulator-min-microvolt = <2500000>;
  420. regulator-max-microvolt = <3000000>;
  421. };
  422. /* sensors */
  423. &vaux2 {
  424. regulator-min-microvolt = <2800000>;
  425. regulator-max-microvolt = <2800000>;
  426. regulator-always-on;
  427. };
  428. /* camera */
  429. &vaux3 {
  430. regulator-min-microvolt = <2500000>;
  431. regulator-max-microvolt = <2500000>;
  432. };
  433. /* WLAN/BT */
  434. &vaux4 {
  435. regulator-min-microvolt = <2800000>;
  436. regulator-max-microvolt = <3150000>;
  437. };
  438. /* GPS LNA */
  439. &vsim {
  440. regulator-min-microvolt = <2800000>;
  441. regulator-max-microvolt = <3150000>;
  442. };
  443. &dss {
  444. pinctrl-names = "default";
  445. pinctrl-0 = < &dss_dpi_pins >;
  446. status = "okay";
  447. vdds_dsi-supply = <&vpll2>;
  448. port {
  449. dpi_out: endpoint {
  450. remote-endpoint = <&lcd_in>;
  451. data-lines = <24>;
  452. };
  453. };
  454. };
  455. &venc {
  456. status = "okay";
  457. vdda-supply = <&vdac>;
  458. port {
  459. venc_out: endpoint {
  460. remote-endpoint = <&opa_in>;
  461. ti,channels = <2>;
  462. ti,invert-polarity;
  463. };
  464. };
  465. };
  466. &gpmc {
  467. ranges = <0 0 0x30000000 0x1000000>; /* CS0: 16MB for NAND */
  468. nand@0,0 {
  469. compatible = "ti,omap2-nand";
  470. reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
  471. interrupt-parent = <&gpmc>;
  472. interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
  473. <1 IRQ_TYPE_NONE>; /* termcount */
  474. nand-bus-width = <16>;
  475. ti,nand-ecc-opt = "bch8";
  476. gpmc,sync-clk-ps = <0>;
  477. gpmc,cs-on-ns = <0>;
  478. gpmc,cs-rd-off-ns = <44>;
  479. gpmc,cs-wr-off-ns = <44>;
  480. gpmc,adv-on-ns = <6>;
  481. gpmc,adv-rd-off-ns = <34>;
  482. gpmc,adv-wr-off-ns = <44>;
  483. gpmc,we-off-ns = <40>;
  484. gpmc,oe-off-ns = <54>;
  485. gpmc,access-ns = <64>;
  486. gpmc,rd-cycle-ns = <82>;
  487. gpmc,wr-cycle-ns = <82>;
  488. gpmc,wr-access-ns = <40>;
  489. gpmc,wr-data-mux-bus-ns = <0>;
  490. gpmc,device-width = <2>;
  491. #address-cells = <1>;
  492. #size-cells = <1>;
  493. x-loader@0 {
  494. label = "X-Loader";
  495. reg = <0 0x80000>;
  496. };
  497. bootloaders@80000 {
  498. label = "U-Boot";
  499. reg = <0x80000 0x1e0000>;
  500. };
  501. bootloaders_env@260000 {
  502. label = "U-Boot Env";
  503. reg = <0x260000 0x20000>;
  504. };
  505. kernel@280000 {
  506. label = "Kernel";
  507. reg = <0x280000 0x400000>;
  508. };
  509. filesystem@680000 {
  510. label = "File System";
  511. reg = <0x680000 0xf980000>;
  512. };
  513. };
  514. };
  515. &mcbsp2 {
  516. status = "okay";
  517. };
  518. &hdqw1w {
  519. pinctrl-names = "default";
  520. pinctrl-0 = <&hdq_pins>;
  521. };
  522. &mcbsp4 {
  523. status = "okay";
  524. };