am43xx-clocks.dtsi 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837
  1. /*
  2. * Device Tree Source for AM43xx clock data
  3. *
  4. * Copyright (C) 2013 Texas Instruments, Inc.
  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. &scm_clocks {
  11. sys_clkin_ck: sys_clkin_ck@40 {
  12. #clock-cells = <0>;
  13. compatible = "ti,mux-clock";
  14. clocks = <&sysboot_freq_sel_ck>, <&crystal_freq_sel_ck>;
  15. ti,bit-shift = <31>;
  16. reg = <0x0040>;
  17. };
  18. crystal_freq_sel_ck: crystal_freq_sel_ck@40 {
  19. #clock-cells = <0>;
  20. compatible = "ti,mux-clock";
  21. clocks = <&virt_19200000_ck>, <&virt_24000000_ck>, <&virt_25000000_ck>, <&virt_26000000_ck>;
  22. ti,bit-shift = <29>;
  23. reg = <0x0040>;
  24. };
  25. sysboot_freq_sel_ck: sysboot_freq_sel_ck@44e10040 {
  26. #clock-cells = <0>;
  27. compatible = "ti,mux-clock";
  28. clocks = <&virt_19200000_ck>, <&virt_24000000_ck>, <&virt_25000000_ck>, <&virt_26000000_ck>;
  29. ti,bit-shift = <22>;
  30. reg = <0x0040>;
  31. };
  32. adc_tsc_fck: adc_tsc_fck {
  33. #clock-cells = <0>;
  34. compatible = "fixed-factor-clock";
  35. clocks = <&sys_clkin_ck>;
  36. clock-mult = <1>;
  37. clock-div = <1>;
  38. };
  39. dcan0_fck: dcan0_fck {
  40. #clock-cells = <0>;
  41. compatible = "fixed-factor-clock";
  42. clocks = <&sys_clkin_ck>;
  43. clock-mult = <1>;
  44. clock-div = <1>;
  45. };
  46. dcan1_fck: dcan1_fck {
  47. #clock-cells = <0>;
  48. compatible = "fixed-factor-clock";
  49. clocks = <&sys_clkin_ck>;
  50. clock-mult = <1>;
  51. clock-div = <1>;
  52. };
  53. mcasp0_fck: mcasp0_fck {
  54. #clock-cells = <0>;
  55. compatible = "fixed-factor-clock";
  56. clocks = <&sys_clkin_ck>;
  57. clock-mult = <1>;
  58. clock-div = <1>;
  59. };
  60. mcasp1_fck: mcasp1_fck {
  61. #clock-cells = <0>;
  62. compatible = "fixed-factor-clock";
  63. clocks = <&sys_clkin_ck>;
  64. clock-mult = <1>;
  65. clock-div = <1>;
  66. };
  67. smartreflex0_fck: smartreflex0_fck {
  68. #clock-cells = <0>;
  69. compatible = "fixed-factor-clock";
  70. clocks = <&sys_clkin_ck>;
  71. clock-mult = <1>;
  72. clock-div = <1>;
  73. };
  74. smartreflex1_fck: smartreflex1_fck {
  75. #clock-cells = <0>;
  76. compatible = "fixed-factor-clock";
  77. clocks = <&sys_clkin_ck>;
  78. clock-mult = <1>;
  79. clock-div = <1>;
  80. };
  81. sha0_fck: sha0_fck {
  82. #clock-cells = <0>;
  83. compatible = "fixed-factor-clock";
  84. clocks = <&sys_clkin_ck>;
  85. clock-mult = <1>;
  86. clock-div = <1>;
  87. };
  88. aes0_fck: aes0_fck {
  89. #clock-cells = <0>;
  90. compatible = "fixed-factor-clock";
  91. clocks = <&sys_clkin_ck>;
  92. clock-mult = <1>;
  93. clock-div = <1>;
  94. };
  95. rng_fck: rng_fck {
  96. #clock-cells = <0>;
  97. compatible = "fixed-factor-clock";
  98. clocks = <&sys_clkin_ck>;
  99. clock-mult = <1>;
  100. clock-div = <1>;
  101. };
  102. ehrpwm0_tbclk: ehrpwm0_tbclk@664 {
  103. #clock-cells = <0>;
  104. compatible = "ti,gate-clock";
  105. clocks = <&l4ls_gclk>;
  106. ti,bit-shift = <0>;
  107. reg = <0x0664>;
  108. };
  109. ehrpwm1_tbclk: ehrpwm1_tbclk@664 {
  110. #clock-cells = <0>;
  111. compatible = "ti,gate-clock";
  112. clocks = <&l4ls_gclk>;
  113. ti,bit-shift = <1>;
  114. reg = <0x0664>;
  115. };
  116. ehrpwm2_tbclk: ehrpwm2_tbclk@664 {
  117. #clock-cells = <0>;
  118. compatible = "ti,gate-clock";
  119. clocks = <&l4ls_gclk>;
  120. ti,bit-shift = <2>;
  121. reg = <0x0664>;
  122. };
  123. ehrpwm3_tbclk: ehrpwm3_tbclk@664 {
  124. #clock-cells = <0>;
  125. compatible = "ti,gate-clock";
  126. clocks = <&l4ls_gclk>;
  127. ti,bit-shift = <4>;
  128. reg = <0x0664>;
  129. };
  130. ehrpwm4_tbclk: ehrpwm4_tbclk@664 {
  131. #clock-cells = <0>;
  132. compatible = "ti,gate-clock";
  133. clocks = <&l4ls_gclk>;
  134. ti,bit-shift = <5>;
  135. reg = <0x0664>;
  136. };
  137. ehrpwm5_tbclk: ehrpwm5_tbclk@664 {
  138. #clock-cells = <0>;
  139. compatible = "ti,gate-clock";
  140. clocks = <&l4ls_gclk>;
  141. ti,bit-shift = <6>;
  142. reg = <0x0664>;
  143. };
  144. };
  145. &prcm_clocks {
  146. clk_32768_ck: clk_32768_ck {
  147. #clock-cells = <0>;
  148. compatible = "fixed-clock";
  149. clock-frequency = <32768>;
  150. };
  151. clk_rc32k_ck: clk_rc32k_ck {
  152. #clock-cells = <0>;
  153. compatible = "fixed-clock";
  154. clock-frequency = <32768>;
  155. };
  156. virt_19200000_ck: virt_19200000_ck {
  157. #clock-cells = <0>;
  158. compatible = "fixed-clock";
  159. clock-frequency = <19200000>;
  160. };
  161. virt_24000000_ck: virt_24000000_ck {
  162. #clock-cells = <0>;
  163. compatible = "fixed-clock";
  164. clock-frequency = <24000000>;
  165. };
  166. virt_25000000_ck: virt_25000000_ck {
  167. #clock-cells = <0>;
  168. compatible = "fixed-clock";
  169. clock-frequency = <25000000>;
  170. };
  171. virt_26000000_ck: virt_26000000_ck {
  172. #clock-cells = <0>;
  173. compatible = "fixed-clock";
  174. clock-frequency = <26000000>;
  175. };
  176. tclkin_ck: tclkin_ck {
  177. #clock-cells = <0>;
  178. compatible = "fixed-clock";
  179. clock-frequency = <26000000>;
  180. };
  181. dpll_core_ck: dpll_core_ck@2d20 {
  182. #clock-cells = <0>;
  183. compatible = "ti,am3-dpll-core-clock";
  184. clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
  185. reg = <0x2d20>, <0x2d24>, <0x2d2c>;
  186. };
  187. dpll_core_x2_ck: dpll_core_x2_ck {
  188. #clock-cells = <0>;
  189. compatible = "ti,am3-dpll-x2-clock";
  190. clocks = <&dpll_core_ck>;
  191. };
  192. dpll_core_m4_ck: dpll_core_m4_ck@2d38 {
  193. #clock-cells = <0>;
  194. compatible = "ti,divider-clock";
  195. clocks = <&dpll_core_x2_ck>;
  196. ti,max-div = <31>;
  197. ti,autoidle-shift = <8>;
  198. reg = <0x2d38>;
  199. ti,index-starts-at-one;
  200. ti,invert-autoidle-bit;
  201. };
  202. dpll_core_m5_ck: dpll_core_m5_ck@2d3c {
  203. #clock-cells = <0>;
  204. compatible = "ti,divider-clock";
  205. clocks = <&dpll_core_x2_ck>;
  206. ti,max-div = <31>;
  207. ti,autoidle-shift = <8>;
  208. reg = <0x2d3c>;
  209. ti,index-starts-at-one;
  210. ti,invert-autoidle-bit;
  211. };
  212. dpll_core_m6_ck: dpll_core_m6_ck@2d40 {
  213. #clock-cells = <0>;
  214. compatible = "ti,divider-clock";
  215. clocks = <&dpll_core_x2_ck>;
  216. ti,max-div = <31>;
  217. ti,autoidle-shift = <8>;
  218. reg = <0x2d40>;
  219. ti,index-starts-at-one;
  220. ti,invert-autoidle-bit;
  221. };
  222. dpll_mpu_ck: dpll_mpu_ck@2d60 {
  223. #clock-cells = <0>;
  224. compatible = "ti,am3-dpll-clock";
  225. clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
  226. reg = <0x2d60>, <0x2d64>, <0x2d6c>;
  227. };
  228. dpll_mpu_m2_ck: dpll_mpu_m2_ck@2d70 {
  229. #clock-cells = <0>;
  230. compatible = "ti,divider-clock";
  231. clocks = <&dpll_mpu_ck>;
  232. ti,max-div = <31>;
  233. ti,autoidle-shift = <8>;
  234. reg = <0x2d70>;
  235. ti,index-starts-at-one;
  236. ti,invert-autoidle-bit;
  237. };
  238. mpu_periphclk: mpu_periphclk {
  239. #clock-cells = <0>;
  240. compatible = "fixed-factor-clock";
  241. clocks = <&dpll_mpu_m2_ck>;
  242. clock-mult = <1>;
  243. clock-div = <2>;
  244. };
  245. dpll_ddr_ck: dpll_ddr_ck@2da0 {
  246. #clock-cells = <0>;
  247. compatible = "ti,am3-dpll-clock";
  248. clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
  249. reg = <0x2da0>, <0x2da4>, <0x2dac>;
  250. };
  251. dpll_ddr_m2_ck: dpll_ddr_m2_ck@2db0 {
  252. #clock-cells = <0>;
  253. compatible = "ti,divider-clock";
  254. clocks = <&dpll_ddr_ck>;
  255. ti,max-div = <31>;
  256. ti,autoidle-shift = <8>;
  257. reg = <0x2db0>;
  258. ti,index-starts-at-one;
  259. ti,invert-autoidle-bit;
  260. };
  261. dpll_disp_ck: dpll_disp_ck@2e20 {
  262. #clock-cells = <0>;
  263. compatible = "ti,am3-dpll-clock";
  264. clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
  265. reg = <0x2e20>, <0x2e24>, <0x2e2c>;
  266. };
  267. dpll_disp_m2_ck: dpll_disp_m2_ck@2e30 {
  268. #clock-cells = <0>;
  269. compatible = "ti,divider-clock";
  270. clocks = <&dpll_disp_ck>;
  271. ti,max-div = <31>;
  272. ti,autoidle-shift = <8>;
  273. reg = <0x2e30>;
  274. ti,index-starts-at-one;
  275. ti,invert-autoidle-bit;
  276. ti,set-rate-parent;
  277. };
  278. dpll_per_ck: dpll_per_ck@2de0 {
  279. #clock-cells = <0>;
  280. compatible = "ti,am3-dpll-j-type-clock";
  281. clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
  282. reg = <0x2de0>, <0x2de4>, <0x2dec>;
  283. };
  284. dpll_per_m2_ck: dpll_per_m2_ck@2df0 {
  285. #clock-cells = <0>;
  286. compatible = "ti,divider-clock";
  287. clocks = <&dpll_per_ck>;
  288. ti,max-div = <127>;
  289. ti,autoidle-shift = <8>;
  290. reg = <0x2df0>;
  291. ti,index-starts-at-one;
  292. ti,invert-autoidle-bit;
  293. };
  294. dpll_per_m2_div4_wkupdm_ck: dpll_per_m2_div4_wkupdm_ck {
  295. #clock-cells = <0>;
  296. compatible = "fixed-factor-clock";
  297. clocks = <&dpll_per_m2_ck>;
  298. clock-mult = <1>;
  299. clock-div = <4>;
  300. };
  301. dpll_per_m2_div4_ck: dpll_per_m2_div4_ck {
  302. #clock-cells = <0>;
  303. compatible = "fixed-factor-clock";
  304. clocks = <&dpll_per_m2_ck>;
  305. clock-mult = <1>;
  306. clock-div = <4>;
  307. };
  308. clk_24mhz: clk_24mhz {
  309. #clock-cells = <0>;
  310. compatible = "fixed-factor-clock";
  311. clocks = <&dpll_per_m2_ck>;
  312. clock-mult = <1>;
  313. clock-div = <8>;
  314. };
  315. clkdiv32k_ck: clkdiv32k_ck {
  316. #clock-cells = <0>;
  317. compatible = "fixed-factor-clock";
  318. clocks = <&clk_24mhz>;
  319. clock-mult = <1>;
  320. clock-div = <732>;
  321. };
  322. clkdiv32k_ick: clkdiv32k_ick@2a38 {
  323. #clock-cells = <0>;
  324. compatible = "ti,gate-clock";
  325. clocks = <&clkdiv32k_ck>;
  326. ti,bit-shift = <8>;
  327. reg = <0x2a38>;
  328. };
  329. sysclk_div: sysclk_div {
  330. #clock-cells = <0>;
  331. compatible = "fixed-factor-clock";
  332. clocks = <&dpll_core_m4_ck>;
  333. clock-mult = <1>;
  334. clock-div = <1>;
  335. };
  336. pruss_ocp_gclk: pruss_ocp_gclk@4248 {
  337. #clock-cells = <0>;
  338. compatible = "ti,mux-clock";
  339. clocks = <&sysclk_div>, <&dpll_disp_m2_ck>;
  340. reg = <0x4248>;
  341. };
  342. clk_32k_tpm_ck: clk_32k_tpm_ck {
  343. #clock-cells = <0>;
  344. compatible = "fixed-clock";
  345. clock-frequency = <32768>;
  346. };
  347. timer1_fck: timer1_fck@4200 {
  348. #clock-cells = <0>;
  349. compatible = "ti,mux-clock";
  350. clocks = <&sys_clkin_ck>, <&clkdiv32k_ick>, <&tclkin_ck>, <&clk_rc32k_ck>, <&clk_32768_ck>, <&clk_32k_tpm_ck>;
  351. reg = <0x4200>;
  352. };
  353. timer2_fck: timer2_fck@4204 {
  354. #clock-cells = <0>;
  355. compatible = "ti,mux-clock";
  356. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
  357. reg = <0x4204>;
  358. };
  359. timer3_fck: timer3_fck@4208 {
  360. #clock-cells = <0>;
  361. compatible = "ti,mux-clock";
  362. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
  363. reg = <0x4208>;
  364. };
  365. timer4_fck: timer4_fck@420c {
  366. #clock-cells = <0>;
  367. compatible = "ti,mux-clock";
  368. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
  369. reg = <0x420c>;
  370. };
  371. timer5_fck: timer5_fck@4210 {
  372. #clock-cells = <0>;
  373. compatible = "ti,mux-clock";
  374. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
  375. reg = <0x4210>;
  376. };
  377. timer6_fck: timer6_fck@4214 {
  378. #clock-cells = <0>;
  379. compatible = "ti,mux-clock";
  380. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
  381. reg = <0x4214>;
  382. };
  383. timer7_fck: timer7_fck@4218 {
  384. #clock-cells = <0>;
  385. compatible = "ti,mux-clock";
  386. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>;
  387. reg = <0x4218>;
  388. };
  389. wdt1_fck: wdt1_fck@422c {
  390. #clock-cells = <0>;
  391. compatible = "ti,mux-clock";
  392. clocks = <&clk_rc32k_ck>, <&clkdiv32k_ick>;
  393. reg = <0x422c>;
  394. };
  395. l3_gclk: l3_gclk {
  396. #clock-cells = <0>;
  397. compatible = "fixed-factor-clock";
  398. clocks = <&dpll_core_m4_ck>;
  399. clock-mult = <1>;
  400. clock-div = <1>;
  401. };
  402. dpll_core_m4_div2_ck: dpll_core_m4_div2_ck {
  403. #clock-cells = <0>;
  404. compatible = "fixed-factor-clock";
  405. clocks = <&sysclk_div>;
  406. clock-mult = <1>;
  407. clock-div = <2>;
  408. };
  409. l4hs_gclk: l4hs_gclk {
  410. #clock-cells = <0>;
  411. compatible = "fixed-factor-clock";
  412. clocks = <&dpll_core_m4_ck>;
  413. clock-mult = <1>;
  414. clock-div = <1>;
  415. };
  416. l3s_gclk: l3s_gclk {
  417. #clock-cells = <0>;
  418. compatible = "fixed-factor-clock";
  419. clocks = <&dpll_core_m4_div2_ck>;
  420. clock-mult = <1>;
  421. clock-div = <1>;
  422. };
  423. l4ls_gclk: l4ls_gclk {
  424. #clock-cells = <0>;
  425. compatible = "fixed-factor-clock";
  426. clocks = <&dpll_core_m4_div2_ck>;
  427. clock-mult = <1>;
  428. clock-div = <1>;
  429. };
  430. cpsw_125mhz_gclk: cpsw_125mhz_gclk {
  431. #clock-cells = <0>;
  432. compatible = "fixed-factor-clock";
  433. clocks = <&dpll_core_m5_ck>;
  434. clock-mult = <1>;
  435. clock-div = <2>;
  436. };
  437. cpsw_cpts_rft_clk: cpsw_cpts_rft_clk@4238 {
  438. #clock-cells = <0>;
  439. compatible = "ti,mux-clock";
  440. clocks = <&sysclk_div>, <&dpll_core_m5_ck>, <&dpll_disp_m2_ck>;
  441. reg = <0x4238>;
  442. };
  443. dpll_clksel_mac_clk: dpll_clksel_mac_clk@4234 {
  444. #clock-cells = <0>;
  445. compatible = "ti,divider-clock";
  446. clocks = <&dpll_core_m5_ck>;
  447. reg = <0x4234>;
  448. ti,bit-shift = <2>;
  449. ti,dividers = <2>, <5>;
  450. };
  451. clk_32k_mosc_ck: clk_32k_mosc_ck {
  452. #clock-cells = <0>;
  453. compatible = "fixed-clock";
  454. clock-frequency = <32768>;
  455. };
  456. gpio0_dbclk_mux_ck: gpio0_dbclk_mux_ck@4240 {
  457. #clock-cells = <0>;
  458. compatible = "ti,mux-clock";
  459. clocks = <&clk_rc32k_ck>, <&clk_32768_ck>, <&clkdiv32k_ick>, <&clk_32k_mosc_ck>, <&clk_32k_tpm_ck>;
  460. reg = <0x4240>;
  461. };
  462. gpio0_dbclk: gpio0_dbclk@2b68 {
  463. #clock-cells = <0>;
  464. compatible = "ti,gate-clock";
  465. clocks = <&gpio0_dbclk_mux_ck>;
  466. ti,bit-shift = <8>;
  467. reg = <0x2b68>;
  468. };
  469. gpio1_dbclk: gpio1_dbclk@8c78 {
  470. #clock-cells = <0>;
  471. compatible = "ti,gate-clock";
  472. clocks = <&clkdiv32k_ick>;
  473. ti,bit-shift = <8>;
  474. reg = <0x8c78>;
  475. };
  476. gpio2_dbclk: gpio2_dbclk@8c80 {
  477. #clock-cells = <0>;
  478. compatible = "ti,gate-clock";
  479. clocks = <&clkdiv32k_ick>;
  480. ti,bit-shift = <8>;
  481. reg = <0x8c80>;
  482. };
  483. gpio3_dbclk: gpio3_dbclk@8c88 {
  484. #clock-cells = <0>;
  485. compatible = "ti,gate-clock";
  486. clocks = <&clkdiv32k_ick>;
  487. ti,bit-shift = <8>;
  488. reg = <0x8c88>;
  489. };
  490. gpio4_dbclk: gpio4_dbclk@8c90 {
  491. #clock-cells = <0>;
  492. compatible = "ti,gate-clock";
  493. clocks = <&clkdiv32k_ick>;
  494. ti,bit-shift = <8>;
  495. reg = <0x8c90>;
  496. };
  497. gpio5_dbclk: gpio5_dbclk@8c98 {
  498. #clock-cells = <0>;
  499. compatible = "ti,gate-clock";
  500. clocks = <&clkdiv32k_ick>;
  501. ti,bit-shift = <8>;
  502. reg = <0x8c98>;
  503. };
  504. mmc_clk: mmc_clk {
  505. #clock-cells = <0>;
  506. compatible = "fixed-factor-clock";
  507. clocks = <&dpll_per_m2_ck>;
  508. clock-mult = <1>;
  509. clock-div = <2>;
  510. };
  511. gfx_fclk_clksel_ck: gfx_fclk_clksel_ck@423c {
  512. #clock-cells = <0>;
  513. compatible = "ti,mux-clock";
  514. clocks = <&sysclk_div>, <&dpll_per_m2_ck>;
  515. ti,bit-shift = <1>;
  516. reg = <0x423c>;
  517. };
  518. gfx_fck_div_ck: gfx_fck_div_ck@423c {
  519. #clock-cells = <0>;
  520. compatible = "ti,divider-clock";
  521. clocks = <&gfx_fclk_clksel_ck>;
  522. reg = <0x423c>;
  523. ti,max-div = <2>;
  524. };
  525. disp_clk: disp_clk@4244 {
  526. #clock-cells = <0>;
  527. compatible = "ti,mux-clock";
  528. clocks = <&dpll_disp_m2_ck>, <&dpll_core_m5_ck>, <&dpll_per_m2_ck>;
  529. reg = <0x4244>;
  530. ti,set-rate-parent;
  531. };
  532. dpll_extdev_ck: dpll_extdev_ck@2e60 {
  533. #clock-cells = <0>;
  534. compatible = "ti,am3-dpll-clock";
  535. clocks = <&sys_clkin_ck>, <&sys_clkin_ck>;
  536. reg = <0x2e60>, <0x2e64>, <0x2e6c>;
  537. };
  538. dpll_extdev_m2_ck: dpll_extdev_m2_ck@2e70 {
  539. #clock-cells = <0>;
  540. compatible = "ti,divider-clock";
  541. clocks = <&dpll_extdev_ck>;
  542. ti,max-div = <127>;
  543. ti,autoidle-shift = <8>;
  544. reg = <0x2e70>;
  545. ti,index-starts-at-one;
  546. ti,invert-autoidle-bit;
  547. };
  548. mux_synctimer32k_ck: mux_synctimer32k_ck@4230 {
  549. #clock-cells = <0>;
  550. compatible = "ti,mux-clock";
  551. clocks = <&clk_32768_ck>, <&clk_32k_tpm_ck>, <&clkdiv32k_ick>;
  552. reg = <0x4230>;
  553. };
  554. synctimer_32kclk: synctimer_32kclk@2a30 {
  555. #clock-cells = <0>;
  556. compatible = "ti,gate-clock";
  557. clocks = <&mux_synctimer32k_ck>;
  558. ti,bit-shift = <8>;
  559. reg = <0x2a30>;
  560. };
  561. timer8_fck: timer8_fck@421c {
  562. #clock-cells = <0>;
  563. compatible = "ti,mux-clock";
  564. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
  565. reg = <0x421c>;
  566. };
  567. timer9_fck: timer9_fck@4220 {
  568. #clock-cells = <0>;
  569. compatible = "ti,mux-clock";
  570. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
  571. reg = <0x4220>;
  572. };
  573. timer10_fck: timer10_fck@4224 {
  574. #clock-cells = <0>;
  575. compatible = "ti,mux-clock";
  576. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
  577. reg = <0x4224>;
  578. };
  579. timer11_fck: timer11_fck@4228 {
  580. #clock-cells = <0>;
  581. compatible = "ti,mux-clock";
  582. clocks = <&tclkin_ck>, <&sys_clkin_ck>, <&clkdiv32k_ick>, <&clk_32k_tpm_ck>;
  583. reg = <0x4228>;
  584. };
  585. cpsw_50m_clkdiv: cpsw_50m_clkdiv {
  586. #clock-cells = <0>;
  587. compatible = "fixed-factor-clock";
  588. clocks = <&dpll_core_m5_ck>;
  589. clock-mult = <1>;
  590. clock-div = <1>;
  591. };
  592. cpsw_5m_clkdiv: cpsw_5m_clkdiv {
  593. #clock-cells = <0>;
  594. compatible = "fixed-factor-clock";
  595. clocks = <&cpsw_50m_clkdiv>;
  596. clock-mult = <1>;
  597. clock-div = <10>;
  598. };
  599. dpll_ddr_x2_ck: dpll_ddr_x2_ck {
  600. #clock-cells = <0>;
  601. compatible = "ti,am3-dpll-x2-clock";
  602. clocks = <&dpll_ddr_ck>;
  603. };
  604. dpll_ddr_m4_ck: dpll_ddr_m4_ck@2db8 {
  605. #clock-cells = <0>;
  606. compatible = "ti,divider-clock";
  607. clocks = <&dpll_ddr_x2_ck>;
  608. ti,max-div = <31>;
  609. ti,autoidle-shift = <8>;
  610. reg = <0x2db8>;
  611. ti,index-starts-at-one;
  612. ti,invert-autoidle-bit;
  613. };
  614. dpll_per_clkdcoldo: dpll_per_clkdcoldo@2e14 {
  615. #clock-cells = <0>;
  616. compatible = "ti,fixed-factor-clock";
  617. clocks = <&dpll_per_ck>;
  618. ti,clock-mult = <1>;
  619. ti,clock-div = <1>;
  620. ti,autoidle-shift = <8>;
  621. reg = <0x2e14>;
  622. ti,invert-autoidle-bit;
  623. };
  624. dll_aging_clk_div: dll_aging_clk_div@4250 {
  625. #clock-cells = <0>;
  626. compatible = "ti,divider-clock";
  627. clocks = <&sys_clkin_ck>;
  628. reg = <0x4250>;
  629. ti,dividers = <8>, <16>, <32>;
  630. };
  631. div_core_25m_ck: div_core_25m_ck {
  632. #clock-cells = <0>;
  633. compatible = "fixed-factor-clock";
  634. clocks = <&sysclk_div>;
  635. clock-mult = <1>;
  636. clock-div = <8>;
  637. };
  638. func_12m_clk: func_12m_clk {
  639. #clock-cells = <0>;
  640. compatible = "fixed-factor-clock";
  641. clocks = <&dpll_per_m2_ck>;
  642. clock-mult = <1>;
  643. clock-div = <16>;
  644. };
  645. vtp_clk_div: vtp_clk_div {
  646. #clock-cells = <0>;
  647. compatible = "fixed-factor-clock";
  648. clocks = <&sys_clkin_ck>;
  649. clock-mult = <1>;
  650. clock-div = <2>;
  651. };
  652. usbphy_32khz_clkmux: usbphy_32khz_clkmux@4260 {
  653. #clock-cells = <0>;
  654. compatible = "ti,mux-clock";
  655. clocks = <&clk_32768_ck>, <&clk_32k_tpm_ck>;
  656. reg = <0x4260>;
  657. };
  658. usb_phy0_always_on_clk32k: usb_phy0_always_on_clk32k@2a40 {
  659. #clock-cells = <0>;
  660. compatible = "ti,gate-clock";
  661. clocks = <&usbphy_32khz_clkmux>;
  662. ti,bit-shift = <8>;
  663. reg = <0x2a40>;
  664. };
  665. usb_phy1_always_on_clk32k: usb_phy1_always_on_clk32k@2a48 {
  666. #clock-cells = <0>;
  667. compatible = "ti,gate-clock";
  668. clocks = <&usbphy_32khz_clkmux>;
  669. ti,bit-shift = <8>;
  670. reg = <0x2a48>;
  671. };
  672. usb_otg_ss0_refclk960m: usb_otg_ss0_refclk960m@8a60 {
  673. #clock-cells = <0>;
  674. compatible = "ti,gate-clock";
  675. clocks = <&dpll_per_clkdcoldo>;
  676. ti,bit-shift = <8>;
  677. reg = <0x8a60>;
  678. };
  679. usb_otg_ss1_refclk960m: usb_otg_ss1_refclk960m@8a68 {
  680. #clock-cells = <0>;
  681. compatible = "ti,gate-clock";
  682. clocks = <&dpll_per_clkdcoldo>;
  683. ti,bit-shift = <8>;
  684. reg = <0x8a68>;
  685. };
  686. clkout1_osc_div_ck: clkout1_osc_div_ck {
  687. #clock-cells = <0>;
  688. compatible = "ti,divider-clock";
  689. clocks = <&sys_clkin_ck>;
  690. ti,bit-shift = <20>;
  691. ti,max-div = <4>;
  692. reg = <0x4100>;
  693. };
  694. clkout1_src2_mux_ck: clkout1_src2_mux_ck {
  695. #clock-cells = <0>;
  696. compatible = "ti,mux-clock";
  697. clocks = <&clk_rc32k_ck>, <&sysclk_div>, <&dpll_ddr_m2_ck>,
  698. <&dpll_per_m2_ck>, <&dpll_disp_m2_ck>,
  699. <&dpll_mpu_m2_ck>;
  700. reg = <0x4100>;
  701. };
  702. clkout1_src2_pre_div_ck: clkout1_src2_pre_div_ck {
  703. #clock-cells = <0>;
  704. compatible = "ti,divider-clock";
  705. clocks = <&clkout1_src2_mux_ck>;
  706. ti,bit-shift = <4>;
  707. ti,max-div = <8>;
  708. reg = <0x4100>;
  709. };
  710. clkout1_src2_post_div_ck: clkout1_src2_post_div_ck {
  711. #clock-cells = <0>;
  712. compatible = "ti,divider-clock";
  713. clocks = <&clkout1_src2_pre_div_ck>;
  714. ti,bit-shift = <8>;
  715. ti,max-div = <32>;
  716. ti,index-power-of-two;
  717. reg = <0x4100>;
  718. };
  719. clkout1_mux_ck: clkout1_mux_ck {
  720. #clock-cells = <0>;
  721. compatible = "ti,mux-clock";
  722. clocks = <&clkout1_osc_div_ck>, <&clk_rc32k_ck>,
  723. <&clkout1_src2_post_div_ck>, <&dpll_extdev_m2_ck>;
  724. ti,bit-shift = <16>;
  725. reg = <0x4100>;
  726. };
  727. clkout1_ck: clkout1_ck {
  728. #clock-cells = <0>;
  729. compatible = "ti,gate-clock";
  730. clocks = <&clkout1_mux_ck>;
  731. ti,bit-shift = <23>;
  732. reg = <0x4100>;
  733. };
  734. };