da850.dtsi 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * Copyright 2012 DENX Software Engineering GmbH
  4. * Heiko Schocher <[email protected]>
  5. */
  6. #include <dt-bindings/interrupt-controller/irq.h>
  7. / {
  8. #address-cells = <1>;
  9. #size-cells = <1>;
  10. chosen { };
  11. aliases { };
  12. memory@c0000000 {
  13. device_type = "memory";
  14. reg = <0xc0000000 0x0>;
  15. };
  16. cpus {
  17. #address-cells = <1>;
  18. #size-cells = <0>;
  19. cpu: cpu@0 {
  20. compatible = "arm,arm926ej-s";
  21. device_type = "cpu";
  22. reg = <0>;
  23. clocks = <&psc0 14>;
  24. operating-points-v2 = <&opp_table>;
  25. };
  26. };
  27. opp_table: opp-table {
  28. compatible = "operating-points-v2";
  29. opp_100: opp100-100000000 {
  30. opp-hz = /bits/ 64 <100000000>;
  31. opp-microvolt = <1000000 950000 1050000>;
  32. };
  33. opp_200: opp110-200000000 {
  34. opp-hz = /bits/ 64 <200000000>;
  35. opp-microvolt = <1100000 1050000 1160000>;
  36. };
  37. opp_300: opp120-300000000 {
  38. opp-hz = /bits/ 64 <300000000>;
  39. opp-microvolt = <1200000 1140000 1320000>;
  40. };
  41. /*
  42. * Original silicon was 300MHz max, so higher frequencies
  43. * need to be enabled on a per-board basis if the chip is
  44. * capable.
  45. */
  46. opp_375: opp120-375000000 {
  47. status = "disabled";
  48. opp-hz = /bits/ 64 <375000000>;
  49. opp-microvolt = <1200000 1140000 1320000>;
  50. };
  51. opp_456: opp130-456000000 {
  52. status = "disabled";
  53. opp-hz = /bits/ 64 <456000000>;
  54. opp-microvolt = <1300000 1250000 1350000>;
  55. };
  56. };
  57. arm {
  58. #address-cells = <1>;
  59. #size-cells = <1>;
  60. ranges;
  61. intc: interrupt-controller@fffee000 {
  62. compatible = "ti,cp-intc";
  63. interrupt-controller;
  64. #interrupt-cells = <1>;
  65. ti,intc-size = <101>;
  66. reg = <0xfffee000 0x2000>;
  67. };
  68. };
  69. clocks: clocks {
  70. ref_clk: ref_clk {
  71. compatible = "fixed-clock";
  72. #clock-cells = <0>;
  73. clock-output-names = "ref_clk";
  74. };
  75. sata_refclk: sata_refclk {
  76. compatible = "fixed-clock";
  77. #clock-cells = <0>;
  78. clock-output-names = "sata_refclk";
  79. status = "disabled";
  80. };
  81. usb_refclkin: usb_refclkin {
  82. compatible = "fixed-clock";
  83. #clock-cells = <0>;
  84. clock-output-names = "usb_refclkin";
  85. status = "disabled";
  86. };
  87. };
  88. dsp: dsp@11800000 {
  89. compatible = "ti,da850-dsp";
  90. reg = <0x11800000 0x40000>,
  91. <0x11e00000 0x8000>,
  92. <0x11f00000 0x8000>,
  93. <0x01c14044 0x4>,
  94. <0x01c14174 0x8>;
  95. reg-names = "l2sram", "l1pram", "l1dram", "host1cfg", "chipsig";
  96. interrupt-parent = <&intc>;
  97. interrupts = <28>;
  98. clocks = <&psc0 15>;
  99. resets = <&psc0 15>;
  100. status = "disabled";
  101. };
  102. soc@1c00000 {
  103. compatible = "simple-bus";
  104. model = "da850";
  105. #address-cells = <1>;
  106. #size-cells = <1>;
  107. ranges = <0x0 0x01c00000 0x400000>;
  108. interrupt-parent = <&intc>;
  109. psc0: clock-controller@10000 {
  110. compatible = "ti,da850-psc0";
  111. reg = <0x10000 0x1000>;
  112. #clock-cells = <1>;
  113. #reset-cells = <1>;
  114. #power-domain-cells = <1>;
  115. clocks = <&pll0_sysclk 1>, <&pll0_sysclk 2>,
  116. <&pll0_sysclk 4>, <&pll0_sysclk 6>,
  117. <&async1_clk>;
  118. clock-names = "pll0_sysclk1", "pll0_sysclk2",
  119. "pll0_sysclk4", "pll0_sysclk6",
  120. "async1";
  121. };
  122. pll0: clock-controller@11000 {
  123. compatible = "ti,da850-pll0";
  124. reg = <0x11000 0x1000>;
  125. clocks = <&ref_clk>, <&pll1_sysclk 3>;
  126. clock-names = "clksrc", "extclksrc";
  127. pll0_pllout: pllout {
  128. #clock-cells = <0>;
  129. };
  130. pll0_sysclk: sysclk {
  131. #clock-cells = <1>;
  132. };
  133. pll0_auxclk: auxclk {
  134. #clock-cells = <0>;
  135. };
  136. pll0_obsclk: obsclk {
  137. #clock-cells = <0>;
  138. };
  139. };
  140. pmx_core: pinmux@14120 {
  141. compatible = "pinctrl-single";
  142. reg = <0x14120 0x50>;
  143. #pinctrl-cells = <2>;
  144. pinctrl-single,bit-per-mux;
  145. pinctrl-single,register-width = <32>;
  146. pinctrl-single,function-mask = <0xf>;
  147. /* pin base, nr pins & gpio function */
  148. pinctrl-single,gpio-range = <&range 0 17 0x8>,
  149. <&range 17 8 0x4>,
  150. <&range 26 8 0x4>,
  151. <&range 34 80 0x8>,
  152. <&range 129 31 0x8>;
  153. status = "disabled";
  154. range: gpio-range {
  155. #pinctrl-single,gpio-range-cells = <3>;
  156. };
  157. serial0_rtscts_pins: pinmux_serial0_rtscts_pins {
  158. pinctrl-single,bits = <
  159. /* UART0_RTS UART0_CTS */
  160. 0x0c 0x22000000 0xff000000
  161. >;
  162. };
  163. serial0_rxtx_pins: pinmux_serial0_rxtx_pins {
  164. pinctrl-single,bits = <
  165. /* UART0_TXD UART0_RXD */
  166. 0x0c 0x00220000 0x00ff0000
  167. >;
  168. };
  169. serial1_rtscts_pins: pinmux_serial1_rtscts_pins {
  170. pinctrl-single,bits = <
  171. /* UART1_CTS UART1_RTS */
  172. 0x00 0x00440000 0x00ff0000
  173. >;
  174. };
  175. serial1_rxtx_pins: pinmux_serial1_rxtx_pins {
  176. pinctrl-single,bits = <
  177. /* UART1_TXD UART1_RXD */
  178. 0x10 0x22000000 0xff000000
  179. >;
  180. };
  181. serial2_rtscts_pins: pinmux_serial2_rtscts_pins {
  182. pinctrl-single,bits = <
  183. /* UART2_CTS UART2_RTS */
  184. 0x00 0x44000000 0xff000000
  185. >;
  186. };
  187. serial2_rxtx_pins: pinmux_serial2_rxtx_pins {
  188. pinctrl-single,bits = <
  189. /* UART2_TXD UART2_RXD */
  190. 0x10 0x00220000 0x00ff0000
  191. >;
  192. };
  193. i2c0_pins: pinmux_i2c0_pins {
  194. pinctrl-single,bits = <
  195. /* I2C0_SDA,I2C0_SCL */
  196. 0x10 0x00002200 0x0000ff00
  197. >;
  198. };
  199. i2c1_pins: pinmux_i2c1_pins {
  200. pinctrl-single,bits = <
  201. /* I2C1_SDA, I2C1_SCL */
  202. 0x10 0x00440000 0x00ff0000
  203. >;
  204. };
  205. mmc0_pins: pinmux_mmc_pins {
  206. pinctrl-single,bits = <
  207. /* MMCSD0_DAT[3] MMCSD0_DAT[2]
  208. * MMCSD0_DAT[1] MMCSD0_DAT[0]
  209. * MMCSD0_CMD MMCSD0_CLK
  210. */
  211. 0x28 0x00222222 0x00ffffff
  212. >;
  213. };
  214. ehrpwm0a_pins: pinmux_ehrpwm0a_pins {
  215. pinctrl-single,bits = <
  216. /* EPWM0A */
  217. 0xc 0x00000002 0x0000000f
  218. >;
  219. };
  220. ehrpwm0b_pins: pinmux_ehrpwm0b_pins {
  221. pinctrl-single,bits = <
  222. /* EPWM0B */
  223. 0xc 0x00000020 0x000000f0
  224. >;
  225. };
  226. ehrpwm1a_pins: pinmux_ehrpwm1a_pins {
  227. pinctrl-single,bits = <
  228. /* EPWM1A */
  229. 0x14 0x00000002 0x0000000f
  230. >;
  231. };
  232. ehrpwm1b_pins: pinmux_ehrpwm1b_pins {
  233. pinctrl-single,bits = <
  234. /* EPWM1B */
  235. 0x14 0x00000020 0x000000f0
  236. >;
  237. };
  238. ecap0_pins: pinmux_ecap0_pins {
  239. pinctrl-single,bits = <
  240. /* ECAP0_APWM0 */
  241. 0x8 0x20000000 0xf0000000
  242. >;
  243. };
  244. ecap1_pins: pinmux_ecap1_pins {
  245. pinctrl-single,bits = <
  246. /* ECAP1_APWM1 */
  247. 0x4 0x40000000 0xf0000000
  248. >;
  249. };
  250. ecap2_pins: pinmux_ecap2_pins {
  251. pinctrl-single,bits = <
  252. /* ECAP2_APWM2 */
  253. 0x4 0x00000004 0x0000000f
  254. >;
  255. };
  256. spi0_pins: pinmux_spi0_pins {
  257. pinctrl-single,bits = <
  258. /* SIMO, SOMI, CLK */
  259. 0xc 0x00001101 0x0000ff0f
  260. >;
  261. };
  262. spi0_cs0_pin: pinmux_spi0_cs0 {
  263. pinctrl-single,bits = <
  264. /* CS0 */
  265. 0x10 0x00000010 0x000000f0
  266. >;
  267. };
  268. spi0_cs3_pin: pinmux_spi0_cs3_pin {
  269. pinctrl-single,bits = <
  270. /* CS3 */
  271. 0xc 0x01000000 0x0f000000
  272. >;
  273. };
  274. spi1_pins: pinmux_spi1_pins {
  275. pinctrl-single,bits = <
  276. /* SIMO, SOMI, CLK */
  277. 0x14 0x00110100 0x00ff0f00
  278. >;
  279. };
  280. spi1_cs0_pin: pinmux_spi1_cs0 {
  281. pinctrl-single,bits = <
  282. /* CS0 */
  283. 0x14 0x00000010 0x000000f0
  284. >;
  285. };
  286. mdio_pins: pinmux_mdio_pins {
  287. pinctrl-single,bits = <
  288. /* MDIO_CLK, MDIO_D */
  289. 0x10 0x00000088 0x000000ff
  290. >;
  291. };
  292. mii_pins: pinmux_mii_pins {
  293. pinctrl-single,bits = <
  294. /*
  295. * MII_TXEN, MII_TXCLK, MII_COL
  296. * MII_TXD_3, MII_TXD_2, MII_TXD_1
  297. * MII_TXD_0
  298. */
  299. 0x8 0x88888880 0xfffffff0
  300. /*
  301. * MII_RXER, MII_CRS, MII_RXCLK
  302. * MII_RXDV, MII_RXD_3, MII_RXD_2
  303. * MII_RXD_1, MII_RXD_0
  304. */
  305. 0xc 0x88888888 0xffffffff
  306. >;
  307. };
  308. lcd_pins: pinmux_lcd_pins {
  309. pinctrl-single,bits = <
  310. /*
  311. * LCD_D[2], LCD_D[3], LCD_D[4], LCD_D[5],
  312. * LCD_D[6], LCD_D[7]
  313. */
  314. 0x40 0x22222200 0xffffff00
  315. /*
  316. * LCD_D[10], LCD_D[11], LCD_D[12], LCD_D[13],
  317. * LCD_D[14], LCD_D[15], LCD_D[0], LCD_D[1]
  318. */
  319. 0x44 0x22222222 0xffffffff
  320. /* LCD_D[8], LCD_D[9] */
  321. 0x48 0x00000022 0x000000ff
  322. /* LCD_PCLK */
  323. 0x48 0x02000000 0x0f000000
  324. /* LCD_AC_ENB_CS, LCD_VSYNC, LCD_HSYNC */
  325. 0x4c 0x02000022 0x0f0000ff
  326. >;
  327. };
  328. vpif_capture_pins: vpif_capture_pins {
  329. pinctrl-single,bits = <
  330. /* VP_DIN[2..7], VP_CLKIN1, VP_CLKIN0 */
  331. 0x38 0x11111111 0xffffffff
  332. /* VP_DIN[10..15,0..1] */
  333. 0x3c 0x11111111 0xffffffff
  334. /* VP_DIN[8..9] */
  335. 0x40 0x00000011 0x000000ff
  336. >;
  337. };
  338. vpif_display_pins: vpif_display_pins {
  339. pinctrl-single,bits = <
  340. /* VP_DOUT[2..7] */
  341. 0x40 0x11111100 0xffffff00
  342. /* VP_DOUT[10..15,0..1] */
  343. 0x44 0x11111111 0xffffffff
  344. /* VP_DOUT[8..9] */
  345. 0x48 0x00000011 0x000000ff
  346. /*
  347. * VP_CLKOUT3, VP_CLKIN3,
  348. * VP_CLKOUT2, VP_CLKIN2
  349. */
  350. 0x4c 0x00111100 0x00ffff00
  351. >;
  352. };
  353. };
  354. prictrl: priority-controller@14110 {
  355. compatible = "ti,da850-mstpri";
  356. reg = <0x14110 0x0c>;
  357. status = "disabled";
  358. };
  359. cfgchip: chip-controller@1417c {
  360. compatible = "ti,da830-cfgchip", "syscon", "simple-mfd";
  361. reg = <0x1417c 0x14>;
  362. usb_phy: usb-phy {
  363. compatible = "ti,da830-usb-phy";
  364. #phy-cells = <1>;
  365. clocks = <&usb_phy_clk 0>, <&usb_phy_clk 1>;
  366. clock-names = "usb0_clk48", "usb1_clk48";
  367. status = "disabled";
  368. };
  369. usb_phy_clk: usb-phy-clocks {
  370. compatible = "ti,da830-usb-phy-clocks";
  371. #clock-cells = <1>;
  372. clocks = <&psc1 1>, <&usb_refclkin>,
  373. <&pll0_auxclk>;
  374. clock-names = "fck", "usb_refclkin", "auxclk";
  375. };
  376. ehrpwm_tbclk: ehrpwm_tbclk {
  377. compatible = "ti,da830-tbclksync";
  378. #clock-cells = <0>;
  379. clocks = <&psc1 17>;
  380. clock-names = "fck";
  381. };
  382. div4p5_clk: div4.5 {
  383. compatible = "ti,da830-div4p5ena";
  384. #clock-cells = <0>;
  385. clocks = <&pll0_pllout>;
  386. clock-names = "pll0_pllout";
  387. };
  388. async1_clk: async1 {
  389. compatible = "ti,da850-async1-clksrc";
  390. #clock-cells = <0>;
  391. clocks = <&pll0_sysclk 3>, <&div4p5_clk>;
  392. clock-names = "pll0_sysclk3", "div4.5";
  393. };
  394. async3_clk: async3 {
  395. compatible = "ti,da850-async3-clksrc";
  396. #clock-cells = <0>;
  397. clocks = <&pll0_sysclk 2>, <&pll1_sysclk 2>;
  398. clock-names = "pll0_sysclk2", "pll1_sysclk2";
  399. };
  400. };
  401. edma0: edma@0 {
  402. compatible = "ti,edma3-tpcc";
  403. /* eDMA3 CC0: 0x01c0 0000 - 0x01c0 7fff */
  404. reg = <0x0 0x8000>;
  405. reg-names = "edma3_cc";
  406. interrupts = <11 12>;
  407. interrupt-names = "edma3_ccint", "edma3_ccerrint";
  408. #dma-cells = <2>;
  409. ti,tptcs = <&edma0_tptc0 7>, <&edma0_tptc1 0>;
  410. power-domains = <&psc0 0>;
  411. };
  412. edma0_tptc0: tptc@8000 {
  413. compatible = "ti,edma3-tptc";
  414. reg = <0x8000 0x400>;
  415. interrupts = <13>;
  416. interrupt-names = "edm3_tcerrint";
  417. power-domains = <&psc0 1>;
  418. };
  419. edma0_tptc1: tptc@8400 {
  420. compatible = "ti,edma3-tptc";
  421. reg = <0x8400 0x400>;
  422. interrupts = <32>;
  423. interrupt-names = "edm3_tcerrint";
  424. power-domains = <&psc0 2>;
  425. };
  426. edma1: edma@230000 {
  427. compatible = "ti,edma3-tpcc";
  428. /* eDMA3 CC1: 0x01e3 0000 - 0x01e3 7fff */
  429. reg = <0x230000 0x8000>;
  430. reg-names = "edma3_cc";
  431. interrupts = <93 94>;
  432. interrupt-names = "edma3_ccint", "edma3_ccerrint";
  433. #dma-cells = <2>;
  434. ti,tptcs = <&edma1_tptc0 7>;
  435. power-domains = <&psc1 0>;
  436. };
  437. edma1_tptc0: tptc@238000 {
  438. compatible = "ti,edma3-tptc";
  439. reg = <0x238000 0x400>;
  440. interrupts = <95>;
  441. interrupt-names = "edm3_tcerrint";
  442. power-domains = <&psc1 21>;
  443. };
  444. serial0: serial@42000 {
  445. compatible = "ti,da830-uart", "ns16550a";
  446. reg = <0x42000 0x100>;
  447. reg-io-width = <4>;
  448. reg-shift = <2>;
  449. interrupts = <25>;
  450. clocks = <&psc0 9>;
  451. power-domains = <&psc0 9>;
  452. status = "disabled";
  453. };
  454. serial1: serial@10c000 {
  455. compatible = "ti,da830-uart", "ns16550a";
  456. reg = <0x10c000 0x100>;
  457. reg-io-width = <4>;
  458. reg-shift = <2>;
  459. interrupts = <53>;
  460. clocks = <&psc1 12>;
  461. power-domains = <&psc1 12>;
  462. status = "disabled";
  463. };
  464. serial2: serial@10d000 {
  465. compatible = "ti,da830-uart", "ns16550a";
  466. reg = <0x10d000 0x100>;
  467. reg-io-width = <4>;
  468. reg-shift = <2>;
  469. interrupts = <61>;
  470. clocks = <&psc1 13>;
  471. power-domains = <&psc1 13>;
  472. status = "disabled";
  473. };
  474. rtc0: rtc@23000 {
  475. compatible = "ti,da830-rtc";
  476. reg = <0x23000 0x1000>;
  477. interrupts = <19
  478. 19>;
  479. clocks = <&pll0_auxclk>;
  480. clock-names = "int-clk";
  481. status = "disabled";
  482. };
  483. i2c0: i2c@22000 {
  484. compatible = "ti,davinci-i2c";
  485. reg = <0x22000 0x1000>;
  486. interrupts = <15>;
  487. #address-cells = <1>;
  488. #size-cells = <0>;
  489. clocks = <&pll0_auxclk>;
  490. status = "disabled";
  491. };
  492. i2c1: i2c@228000 {
  493. compatible = "ti,davinci-i2c";
  494. reg = <0x228000 0x1000>;
  495. interrupts = <51>;
  496. #address-cells = <1>;
  497. #size-cells = <0>;
  498. clocks = <&psc1 11>;
  499. power-domains = <&psc1 11>;
  500. status = "disabled";
  501. };
  502. clocksource: timer@20000 {
  503. compatible = "ti,da830-timer";
  504. reg = <0x20000 0x1000>;
  505. interrupts = <21>, <22>;
  506. interrupt-names = "tint12", "tint34";
  507. clocks = <&pll0_auxclk>;
  508. };
  509. wdt: wdt@21000 {
  510. compatible = "ti,davinci-wdt";
  511. reg = <0x21000 0x1000>;
  512. clocks = <&pll0_auxclk>;
  513. status = "disabled";
  514. };
  515. mmc0: mmc@40000 {
  516. compatible = "ti,da830-mmc";
  517. reg = <0x40000 0x1000>;
  518. cap-sd-highspeed;
  519. cap-mmc-highspeed;
  520. interrupts = <16>;
  521. dmas = <&edma0 16 0>, <&edma0 17 0>;
  522. dma-names = "rx", "tx";
  523. clocks = <&psc0 5>;
  524. status = "disabled";
  525. };
  526. vpif: video@217000 {
  527. compatible = "ti,da850-vpif";
  528. reg = <0x217000 0x1000>;
  529. interrupts = <92>;
  530. power-domains = <&psc1 9>;
  531. status = "disabled";
  532. /* VPIF capture port */
  533. port@0 {
  534. #address-cells = <1>;
  535. #size-cells = <0>;
  536. };
  537. /* VPIF display port */
  538. port@1 {
  539. #address-cells = <1>;
  540. #size-cells = <0>;
  541. };
  542. };
  543. mmc1: mmc@21b000 {
  544. compatible = "ti,da830-mmc";
  545. reg = <0x21b000 0x1000>;
  546. cap-sd-highspeed;
  547. cap-mmc-highspeed;
  548. interrupts = <72>;
  549. dmas = <&edma1 28 0>, <&edma1 29 0>;
  550. dma-names = "rx", "tx";
  551. clocks = <&psc1 18>;
  552. status = "disabled";
  553. };
  554. ehrpwm0: pwm@300000 {
  555. compatible = "ti,da850-ehrpwm", "ti,am3352-ehrpwm";
  556. #pwm-cells = <3>;
  557. reg = <0x300000 0x2000>;
  558. clocks = <&psc1 17>, <&ehrpwm_tbclk>;
  559. clock-names = "fck", "tbclk";
  560. power-domains = <&psc1 17>;
  561. status = "disabled";
  562. };
  563. ehrpwm1: pwm@302000 {
  564. compatible = "ti,da850-ehrpwm", "ti,am3352-ehrpwm";
  565. #pwm-cells = <3>;
  566. reg = <0x302000 0x2000>;
  567. clocks = <&psc1 17>, <&ehrpwm_tbclk>;
  568. clock-names = "fck", "tbclk";
  569. power-domains = <&psc1 17>;
  570. status = "disabled";
  571. };
  572. ecap0: pwm@306000 {
  573. compatible = "ti,da850-ecap", "ti,am3352-ecap";
  574. #pwm-cells = <3>;
  575. reg = <0x306000 0x80>;
  576. clocks = <&psc1 20>;
  577. clock-names = "fck";
  578. power-domains = <&psc1 20>;
  579. status = "disabled";
  580. };
  581. ecap1: pwm@307000 {
  582. compatible = "ti,da850-ecap", "ti,am3352-ecap";
  583. #pwm-cells = <3>;
  584. reg = <0x307000 0x80>;
  585. clocks = <&psc1 20>;
  586. clock-names = "fck";
  587. power-domains = <&psc1 20>;
  588. status = "disabled";
  589. };
  590. ecap2: pwm@308000 {
  591. compatible = "ti,da850-ecap", "ti,am3352-ecap";
  592. #pwm-cells = <3>;
  593. reg = <0x308000 0x80>;
  594. clocks = <&psc1 20>;
  595. clock-names = "fck";
  596. power-domains = <&psc1 20>;
  597. status = "disabled";
  598. };
  599. spi0: spi@41000 {
  600. #address-cells = <1>;
  601. #size-cells = <0>;
  602. compatible = "ti,da830-spi";
  603. reg = <0x41000 0x1000>;
  604. num-cs = <6>;
  605. ti,davinci-spi-intr-line = <1>;
  606. interrupts = <20>;
  607. dmas = <&edma0 14 0>, <&edma0 15 0>;
  608. dma-names = "rx", "tx";
  609. clocks = <&psc0 4>;
  610. power-domains = <&psc0 4>;
  611. status = "disabled";
  612. };
  613. spi1: spi@30e000 {
  614. #address-cells = <1>;
  615. #size-cells = <0>;
  616. compatible = "ti,da830-spi";
  617. reg = <0x30e000 0x1000>;
  618. num-cs = <4>;
  619. ti,davinci-spi-intr-line = <1>;
  620. interrupts = <56>;
  621. dmas = <&edma0 18 0>, <&edma0 19 0>;
  622. dma-names = "rx", "tx";
  623. clocks = <&psc1 10>;
  624. power-domains = <&psc1 10>;
  625. status = "disabled";
  626. };
  627. usb0: usb@200000 {
  628. compatible = "ti,da830-musb";
  629. reg = <0x200000 0x1000>;
  630. ranges;
  631. interrupts = <58>;
  632. interrupt-names = "mc";
  633. dr_mode = "otg";
  634. phys = <&usb_phy 0>;
  635. phy-names = "usb-phy";
  636. clocks = <&psc1 1>;
  637. clock-ranges;
  638. status = "disabled";
  639. #address-cells = <1>;
  640. #size-cells = <1>;
  641. dmas = <&cppi41dma 0 0 &cppi41dma 1 0
  642. &cppi41dma 2 0 &cppi41dma 3 0
  643. &cppi41dma 0 1 &cppi41dma 1 1
  644. &cppi41dma 2 1 &cppi41dma 3 1>;
  645. dma-names =
  646. "rx1", "rx2", "rx3", "rx4",
  647. "tx1", "tx2", "tx3", "tx4";
  648. cppi41dma: dma-controller@201000 {
  649. compatible = "ti,da830-cppi41";
  650. reg = <0x201000 0x1000
  651. 0x202000 0x1000
  652. 0x204000 0x4000>;
  653. reg-names = "controller",
  654. "scheduler", "queuemgr";
  655. interrupts = <58>;
  656. #dma-cells = <2>;
  657. /* For backwards compatibility: */
  658. #dma-channels = <4>;
  659. dma-channels = <4>;
  660. power-domains = <&psc1 1>;
  661. status = "okay";
  662. };
  663. };
  664. sata: sata@218000 {
  665. compatible = "ti,da850-ahci";
  666. reg = <0x218000 0x2000>, <0x22c018 0x4>;
  667. interrupts = <67>;
  668. clocks = <&psc1 8>, <&sata_refclk>;
  669. clock-names = "fck", "refclk";
  670. status = "disabled";
  671. };
  672. pll1: clock-controller@21a000 {
  673. compatible = "ti,da850-pll1";
  674. reg = <0x21a000 0x1000>;
  675. clocks = <&ref_clk>;
  676. clock-names = "clksrc";
  677. pll1_sysclk: sysclk {
  678. #clock-cells = <1>;
  679. };
  680. pll1_obsclk: obsclk {
  681. #clock-cells = <0>;
  682. };
  683. };
  684. mdio: mdio@224000 {
  685. compatible = "ti,davinci_mdio";
  686. #address-cells = <1>;
  687. #size-cells = <0>;
  688. reg = <0x224000 0x1000>;
  689. clocks = <&psc1 5>;
  690. clock-names = "fck";
  691. power-domains = <&psc1 5>;
  692. status = "disabled";
  693. };
  694. eth0: ethernet@220000 {
  695. compatible = "ti,davinci-dm6467-emac";
  696. reg = <0x220000 0x4000>;
  697. ti,davinci-ctrl-reg-offset = <0x3000>;
  698. ti,davinci-ctrl-mod-reg-offset = <0x2000>;
  699. ti,davinci-ctrl-ram-offset = <0>;
  700. ti,davinci-ctrl-ram-size = <0x2000>;
  701. local-mac-address = [ 00 00 00 00 00 00 ];
  702. interrupts = <33
  703. 34
  704. 35
  705. 36
  706. >;
  707. clocks = <&psc1 5>;
  708. power-domains = <&psc1 5>;
  709. status = "disabled";
  710. };
  711. usb1: usb@225000 {
  712. compatible = "ti,da830-ohci";
  713. reg = <0x225000 0x1000>;
  714. interrupts = <59>;
  715. phys = <&usb_phy 1>;
  716. phy-names = "usb-phy";
  717. clocks = <&psc1 2>;
  718. status = "disabled";
  719. };
  720. gpio: gpio@226000 {
  721. compatible = "ti,dm6441-gpio";
  722. gpio-controller;
  723. #gpio-cells = <2>;
  724. reg = <0x226000 0x1000>;
  725. interrupts = <42 43 44 45 46 47 48 49 50>;
  726. ti,ngpio = <144>;
  727. ti,davinci-gpio-unbanked = <0>;
  728. clocks = <&psc1 3>;
  729. clock-names = "gpio";
  730. status = "disabled";
  731. interrupt-controller;
  732. #interrupt-cells = <2>;
  733. gpio-ranges = <&pmx_core 0 15 1>,
  734. <&pmx_core 1 14 1>,
  735. <&pmx_core 2 13 1>,
  736. <&pmx_core 3 12 1>,
  737. <&pmx_core 4 11 1>,
  738. <&pmx_core 5 10 1>,
  739. <&pmx_core 6 9 1>,
  740. <&pmx_core 7 8 1>,
  741. <&pmx_core 8 7 1>,
  742. <&pmx_core 9 6 1>,
  743. <&pmx_core 10 5 1>,
  744. <&pmx_core 11 4 1>,
  745. <&pmx_core 12 3 1>,
  746. <&pmx_core 13 2 1>,
  747. <&pmx_core 14 1 1>,
  748. <&pmx_core 15 0 1>,
  749. <&pmx_core 16 39 1>,
  750. <&pmx_core 17 38 1>,
  751. <&pmx_core 18 37 1>,
  752. <&pmx_core 19 36 1>,
  753. <&pmx_core 20 35 1>,
  754. <&pmx_core 21 34 1>,
  755. <&pmx_core 22 33 1>,
  756. <&pmx_core 23 32 1>,
  757. <&pmx_core 24 24 1>,
  758. <&pmx_core 25 22 1>,
  759. <&pmx_core 26 21 1>,
  760. <&pmx_core 27 20 1>,
  761. <&pmx_core 28 19 1>,
  762. <&pmx_core 29 18 1>,
  763. <&pmx_core 30 17 1>,
  764. <&pmx_core 31 16 1>,
  765. <&pmx_core 32 55 1>,
  766. <&pmx_core 33 54 1>,
  767. <&pmx_core 34 53 1>,
  768. <&pmx_core 35 52 1>,
  769. <&pmx_core 36 51 1>,
  770. <&pmx_core 37 50 1>,
  771. <&pmx_core 38 49 1>,
  772. <&pmx_core 39 48 1>,
  773. <&pmx_core 40 47 1>,
  774. <&pmx_core 41 46 1>,
  775. <&pmx_core 42 45 1>,
  776. <&pmx_core 43 44 1>,
  777. <&pmx_core 44 43 1>,
  778. <&pmx_core 45 42 1>,
  779. <&pmx_core 46 41 1>,
  780. <&pmx_core 47 40 1>,
  781. <&pmx_core 48 71 1>,
  782. <&pmx_core 49 70 1>,
  783. <&pmx_core 50 69 1>,
  784. <&pmx_core 51 68 1>,
  785. <&pmx_core 52 67 1>,
  786. <&pmx_core 53 66 1>,
  787. <&pmx_core 54 65 1>,
  788. <&pmx_core 55 64 1>,
  789. <&pmx_core 56 63 1>,
  790. <&pmx_core 57 62 1>,
  791. <&pmx_core 58 61 1>,
  792. <&pmx_core 59 60 1>,
  793. <&pmx_core 60 59 1>,
  794. <&pmx_core 61 58 1>,
  795. <&pmx_core 62 57 1>,
  796. <&pmx_core 63 56 1>,
  797. <&pmx_core 64 87 1>,
  798. <&pmx_core 65 86 1>,
  799. <&pmx_core 66 85 1>,
  800. <&pmx_core 67 84 1>,
  801. <&pmx_core 68 83 1>,
  802. <&pmx_core 69 82 1>,
  803. <&pmx_core 70 81 1>,
  804. <&pmx_core 71 80 1>,
  805. <&pmx_core 72 70 1>,
  806. <&pmx_core 73 78 1>,
  807. <&pmx_core 74 77 1>,
  808. <&pmx_core 75 76 1>,
  809. <&pmx_core 76 75 1>,
  810. <&pmx_core 77 74 1>,
  811. <&pmx_core 78 73 1>,
  812. <&pmx_core 79 72 1>,
  813. <&pmx_core 80 103 1>,
  814. <&pmx_core 81 102 1>,
  815. <&pmx_core 82 101 1>,
  816. <&pmx_core 83 100 1>,
  817. <&pmx_core 84 99 1>,
  818. <&pmx_core 85 98 1>,
  819. <&pmx_core 86 97 1>,
  820. <&pmx_core 87 96 1>,
  821. <&pmx_core 88 95 1>,
  822. <&pmx_core 89 94 1>,
  823. <&pmx_core 90 93 1>,
  824. <&pmx_core 91 92 1>,
  825. <&pmx_core 92 91 1>,
  826. <&pmx_core 93 90 1>,
  827. <&pmx_core 94 89 1>,
  828. <&pmx_core 95 88 1>,
  829. <&pmx_core 96 158 1>,
  830. <&pmx_core 97 157 1>,
  831. <&pmx_core 98 156 1>,
  832. <&pmx_core 99 155 1>,
  833. <&pmx_core 100 154 1>,
  834. <&pmx_core 101 129 1>,
  835. <&pmx_core 102 113 1>,
  836. <&pmx_core 103 112 1>,
  837. <&pmx_core 104 111 1>,
  838. <&pmx_core 105 110 1>,
  839. <&pmx_core 106 109 1>,
  840. <&pmx_core 107 108 1>,
  841. <&pmx_core 108 107 1>,
  842. <&pmx_core 109 106 1>,
  843. <&pmx_core 110 105 1>,
  844. <&pmx_core 111 104 1>,
  845. <&pmx_core 112 145 1>,
  846. <&pmx_core 113 144 1>,
  847. <&pmx_core 114 143 1>,
  848. <&pmx_core 115 142 1>,
  849. <&pmx_core 116 141 1>,
  850. <&pmx_core 117 140 1>,
  851. <&pmx_core 118 139 1>,
  852. <&pmx_core 119 138 1>,
  853. <&pmx_core 120 137 1>,
  854. <&pmx_core 121 136 1>,
  855. <&pmx_core 122 135 1>,
  856. <&pmx_core 123 134 1>,
  857. <&pmx_core 124 133 1>,
  858. <&pmx_core 125 132 1>,
  859. <&pmx_core 126 131 1>,
  860. <&pmx_core 127 130 1>,
  861. <&pmx_core 128 159 1>,
  862. <&pmx_core 129 31 1>,
  863. <&pmx_core 130 30 1>,
  864. <&pmx_core 131 20 1>,
  865. <&pmx_core 132 28 1>,
  866. <&pmx_core 133 27 1>,
  867. <&pmx_core 134 26 1>,
  868. <&pmx_core 135 23 1>,
  869. <&pmx_core 136 153 1>,
  870. <&pmx_core 137 152 1>,
  871. <&pmx_core 138 151 1>,
  872. <&pmx_core 139 150 1>,
  873. <&pmx_core 140 149 1>,
  874. <&pmx_core 141 148 1>,
  875. <&pmx_core 142 147 1>,
  876. <&pmx_core 143 146 1>;
  877. };
  878. psc1: clock-controller@227000 {
  879. compatible = "ti,da850-psc1";
  880. reg = <0x227000 0x1000>;
  881. #clock-cells = <1>;
  882. #power-domain-cells = <1>;
  883. clocks = <&pll0_sysclk 2>, <&pll0_sysclk 4>,
  884. <&async3_clk>;
  885. clock-names = "pll0_sysclk2", "pll0_sysclk4", "async3";
  886. assigned-clocks = <&async3_clk>;
  887. assigned-clock-parents = <&pll1_sysclk 2>;
  888. };
  889. pinconf: pin-controller@22c00c {
  890. compatible = "ti,da850-pupd";
  891. reg = <0x22c00c 0x8>;
  892. status = "disabled";
  893. };
  894. mcasp0: mcasp@100000 {
  895. compatible = "ti,da830-mcasp-audio";
  896. reg = <0x100000 0x2000>,
  897. <0x102000 0x400000>;
  898. reg-names = "mpu", "dat";
  899. interrupts = <54>;
  900. interrupt-names = "common";
  901. power-domains = <&psc1 7>;
  902. status = "disabled";
  903. dmas = <&edma0 1 1>,
  904. <&edma0 0 1>;
  905. dma-names = "tx", "rx";
  906. };
  907. lcdc: display@213000 {
  908. compatible = "ti,da850-tilcdc";
  909. reg = <0x213000 0x1000>;
  910. interrupts = <52>;
  911. max-pixelclock = <37500>;
  912. clocks = <&psc1 16>;
  913. clock-names = "fck";
  914. power-domains = <&psc1 16>;
  915. status = "disabled";
  916. };
  917. };
  918. aemif: aemif@68000000 {
  919. compatible = "ti,da850-aemif";
  920. #address-cells = <2>;
  921. #size-cells = <1>;
  922. reg = <0x68000000 0x00008000>;
  923. ranges = <0 0 0x60000000 0x08000000
  924. 1 0 0x68000000 0x00008000>;
  925. clocks = <&psc0 3>;
  926. clock-names = "aemif";
  927. clock-ranges;
  928. status = "disabled";
  929. };
  930. memctrl: memory-controller@b0000000 {
  931. compatible = "ti,da850-ddr-controller";
  932. reg = <0xb0000000 0xe8>;
  933. status = "disabled";
  934. };
  935. };