clock.h 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909
  1. /*
  2. * (C) Copyright 2010 Samsung Electronics
  3. * Minkyu Kang <mk7.kang@samsung.com>
  4. *
  5. * This program is free software; you can redistribute it and/or
  6. * modify it under the terms of the GNU General Public License as
  7. * published by the Free Software Foundation; either version 2 of
  8. * the License, or (at your option) any later version.
  9. *
  10. * This program is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU General Public License
  16. * along with this program; if not, write to the Free Software
  17. * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  18. * MA 02111-1307 USA
  19. *
  20. */
  21. #ifndef __ASM_ARM_ARCH_CLOCK_H_
  22. #define __ASM_ARM_ARCH_CLOCK_H_
  23. #ifndef __ASSEMBLY__
  24. struct exynos4_clock {
  25. unsigned char res1[0x4200];
  26. unsigned int src_leftbus;
  27. unsigned char res2[0x1fc];
  28. unsigned int mux_stat_leftbus;
  29. unsigned char res4[0xfc];
  30. unsigned int div_leftbus;
  31. unsigned char res5[0xfc];
  32. unsigned int div_stat_leftbus;
  33. unsigned char res6[0x1fc];
  34. unsigned int gate_ip_leftbus;
  35. unsigned char res7[0x1fc];
  36. unsigned int clkout_leftbus;
  37. unsigned int clkout_leftbus_div_stat;
  38. unsigned char res8[0x37f8];
  39. unsigned int src_rightbus;
  40. unsigned char res9[0x1fc];
  41. unsigned int mux_stat_rightbus;
  42. unsigned char res10[0xfc];
  43. unsigned int div_rightbus;
  44. unsigned char res11[0xfc];
  45. unsigned int div_stat_rightbus;
  46. unsigned char res12[0x1fc];
  47. unsigned int gate_ip_rightbus;
  48. unsigned char res13[0x1fc];
  49. unsigned int clkout_rightbus;
  50. unsigned int clkout_rightbus_div_stat;
  51. unsigned char res14[0x3608];
  52. unsigned int epll_lock;
  53. unsigned char res15[0xc];
  54. unsigned int vpll_lock;
  55. unsigned char res16[0xec];
  56. unsigned int epll_con0;
  57. unsigned int epll_con1;
  58. unsigned char res17[0x8];
  59. unsigned int vpll_con0;
  60. unsigned int vpll_con1;
  61. unsigned char res18[0xe8];
  62. unsigned int src_top0;
  63. unsigned int src_top1;
  64. unsigned char res19[0x8];
  65. unsigned int src_cam;
  66. unsigned int src_tv;
  67. unsigned int src_mfc;
  68. unsigned int src_g3d;
  69. unsigned int src_image;
  70. unsigned int src_lcd0;
  71. unsigned int src_lcd1;
  72. unsigned int src_maudio;
  73. unsigned int src_fsys;
  74. unsigned char res20[0xc];
  75. unsigned int src_peril0;
  76. unsigned int src_peril1;
  77. unsigned char res21[0xb8];
  78. unsigned int src_mask_top;
  79. unsigned char res22[0xc];
  80. unsigned int src_mask_cam;
  81. unsigned int src_mask_tv;
  82. unsigned char res23[0xc];
  83. unsigned int src_mask_lcd0;
  84. unsigned int src_mask_lcd1;
  85. unsigned int src_mask_maudio;
  86. unsigned int src_mask_fsys;
  87. unsigned char res24[0xc];
  88. unsigned int src_mask_peril0;
  89. unsigned int src_mask_peril1;
  90. unsigned char res25[0xb8];
  91. unsigned int mux_stat_top;
  92. unsigned char res26[0x14];
  93. unsigned int mux_stat_mfc;
  94. unsigned int mux_stat_g3d;
  95. unsigned int mux_stat_image;
  96. unsigned char res27[0xdc];
  97. unsigned int div_top;
  98. unsigned char res28[0xc];
  99. unsigned int div_cam;
  100. unsigned int div_tv;
  101. unsigned int div_mfc;
  102. unsigned int div_g3d;
  103. unsigned int div_image;
  104. unsigned int div_lcd0;
  105. unsigned int div_lcd1;
  106. unsigned int div_maudio;
  107. unsigned int div_fsys0;
  108. unsigned int div_fsys1;
  109. unsigned int div_fsys2;
  110. unsigned int div_fsys3;
  111. unsigned int div_peril0;
  112. unsigned int div_peril1;
  113. unsigned int div_peril2;
  114. unsigned int div_peril3;
  115. unsigned int div_peril4;
  116. unsigned int div_peril5;
  117. unsigned char res29[0x18];
  118. unsigned int div2_ratio;
  119. unsigned char res30[0x8c];
  120. unsigned int div_stat_top;
  121. unsigned char res31[0xc];
  122. unsigned int div_stat_cam;
  123. unsigned int div_stat_tv;
  124. unsigned int div_stat_mfc;
  125. unsigned int div_stat_g3d;
  126. unsigned int div_stat_image;
  127. unsigned int div_stat_lcd0;
  128. unsigned int div_stat_lcd1;
  129. unsigned int div_stat_maudio;
  130. unsigned int div_stat_fsys0;
  131. unsigned int div_stat_fsys1;
  132. unsigned int div_stat_fsys2;
  133. unsigned int div_stat_fsys3;
  134. unsigned int div_stat_peril0;
  135. unsigned int div_stat_peril1;
  136. unsigned int div_stat_peril2;
  137. unsigned int div_stat_peril3;
  138. unsigned int div_stat_peril4;
  139. unsigned int div_stat_peril5;
  140. unsigned char res32[0x18];
  141. unsigned int div2_stat;
  142. unsigned char res33[0x29c];
  143. unsigned int gate_ip_cam;
  144. unsigned int gate_ip_tv;
  145. unsigned int gate_ip_mfc;
  146. unsigned int gate_ip_g3d;
  147. unsigned int gate_ip_image;
  148. unsigned int gate_ip_lcd0;
  149. unsigned int gate_ip_lcd1;
  150. unsigned char res34[0x4];
  151. unsigned int gate_ip_fsys;
  152. unsigned char res35[0x8];
  153. unsigned int gate_ip_gps;
  154. unsigned int gate_ip_peril;
  155. unsigned char res36[0xc];
  156. unsigned int gate_ip_perir;
  157. unsigned char res37[0xc];
  158. unsigned int gate_block;
  159. unsigned char res38[0x8c];
  160. unsigned int clkout_cmu_top;
  161. unsigned int clkout_cmu_top_div_stat;
  162. unsigned char res39[0x37f8];
  163. unsigned int src_dmc;
  164. unsigned char res40[0xfc];
  165. unsigned int src_mask_dmc;
  166. unsigned char res41[0xfc];
  167. unsigned int mux_stat_dmc;
  168. unsigned char res42[0xfc];
  169. unsigned int div_dmc0;
  170. unsigned int div_dmc1;
  171. unsigned char res43[0xf8];
  172. unsigned int div_stat_dmc0;
  173. unsigned int div_stat_dmc1;
  174. unsigned char res44[0x2f8];
  175. unsigned int gate_ip_dmc;
  176. unsigned char res45[0xfc];
  177. unsigned int clkout_cmu_dmc;
  178. unsigned int clkout_cmu_dmc_div_stat;
  179. unsigned char res46[0x5f8];
  180. unsigned int dcgidx_map0;
  181. unsigned int dcgidx_map1;
  182. unsigned int dcgidx_map2;
  183. unsigned char res47[0x14];
  184. unsigned int dcgperf_map0;
  185. unsigned int dcgperf_map1;
  186. unsigned char res48[0x18];
  187. unsigned int dvcidx_map;
  188. unsigned char res49[0x1c];
  189. unsigned int freq_cpu;
  190. unsigned int freq_dpm;
  191. unsigned char res50[0x18];
  192. unsigned int dvsemclk_en;
  193. unsigned int maxperf;
  194. unsigned char res51[0x2f78];
  195. unsigned int apll_lock;
  196. unsigned char res52[0x4];
  197. unsigned int mpll_lock;
  198. unsigned char res53[0xf4];
  199. unsigned int apll_con0;
  200. unsigned int apll_con1;
  201. unsigned int mpll_con0;
  202. unsigned int mpll_con1;
  203. unsigned char res54[0xf0];
  204. unsigned int src_cpu;
  205. unsigned char res55[0x1fc];
  206. unsigned int mux_stat_cpu;
  207. unsigned char res56[0xfc];
  208. unsigned int div_cpu0;
  209. unsigned int div_cpu1;
  210. unsigned char res57[0xf8];
  211. unsigned int div_stat_cpu0;
  212. unsigned int div_stat_cpu1;
  213. unsigned char res58[0x3f8];
  214. unsigned int clkout_cmu_cpu;
  215. unsigned int clkout_cmu_cpu_div_stat;
  216. unsigned char res59[0x5f8];
  217. unsigned int armclk_stopctrl;
  218. unsigned int atclk_stopctrl;
  219. unsigned char res60[0x8];
  220. unsigned int parityfail_status;
  221. unsigned int parityfail_clear;
  222. unsigned char res61[0xe8];
  223. unsigned int apll_con0_l8;
  224. unsigned int apll_con0_l7;
  225. unsigned int apll_con0_l6;
  226. unsigned int apll_con0_l5;
  227. unsigned int apll_con0_l4;
  228. unsigned int apll_con0_l3;
  229. unsigned int apll_con0_l2;
  230. unsigned int apll_con0_l1;
  231. unsigned int iem_control;
  232. unsigned char res62[0xdc];
  233. unsigned int apll_con1_l8;
  234. unsigned int apll_con1_l7;
  235. unsigned int apll_con1_l6;
  236. unsigned int apll_con1_l5;
  237. unsigned int apll_con1_l4;
  238. unsigned int apll_con1_l3;
  239. unsigned int apll_con1_l2;
  240. unsigned int apll_con1_l1;
  241. unsigned char res63[0xe0];
  242. unsigned int div_iem_l8;
  243. unsigned int div_iem_l7;
  244. unsigned int div_iem_l6;
  245. unsigned int div_iem_l5;
  246. unsigned int div_iem_l4;
  247. unsigned int div_iem_l3;
  248. unsigned int div_iem_l2;
  249. unsigned int div_iem_l1;
  250. };
  251. struct exynos4x12_clock {
  252. unsigned char res1[0x4200];
  253. unsigned int src_leftbus;
  254. unsigned char res2[0x1fc];
  255. unsigned int mux_stat_leftbus;
  256. unsigned char res3[0xfc];
  257. unsigned int div_leftbus;
  258. unsigned char res4[0xfc];
  259. unsigned int div_stat_leftbus;
  260. unsigned char res5[0x1fc];
  261. unsigned int gate_ip_leftbus;
  262. unsigned char res6[0x12c];
  263. unsigned int gate_ip_image;
  264. unsigned char res7[0xcc];
  265. unsigned int clkout_leftbus;
  266. unsigned int clkout_leftbus_div_stat;
  267. unsigned char res8[0x37f8];
  268. unsigned int src_rightbus;
  269. unsigned char res9[0x1fc];
  270. unsigned int mux_stat_rightbus;
  271. unsigned char res10[0xfc];
  272. unsigned int div_rightbus;
  273. unsigned char res11[0xfc];
  274. unsigned int div_stat_rightbus;
  275. unsigned char res12[0x1fc];
  276. unsigned int gate_ip_rightbus;
  277. unsigned char res13[0x15c];
  278. unsigned int gate_ip_perir;
  279. unsigned char res14[0x9c];
  280. unsigned int clkout_rightbus;
  281. unsigned int clkout_rightbus_div_stat;
  282. unsigned char res15[0x3608];
  283. unsigned int epll_lock;
  284. unsigned char res16[0xc];
  285. unsigned int vpll_lock;
  286. unsigned char res17[0xec];
  287. unsigned int epll_con0;
  288. unsigned int epll_con1;
  289. unsigned int epll_con2;
  290. unsigned char res18[0x4];
  291. unsigned int vpll_con0;
  292. unsigned int vpll_con1;
  293. unsigned int vpll_con2;
  294. unsigned char res19[0xe4];
  295. unsigned int src_top0;
  296. unsigned int src_top1;
  297. unsigned char res20[0x8];
  298. unsigned int src_cam;
  299. unsigned int src_tv;
  300. unsigned int src_mfc;
  301. unsigned int src_g3d;
  302. unsigned char res21[0x4];
  303. unsigned int src_lcd;
  304. unsigned int src_isp;
  305. unsigned int src_maudio;
  306. unsigned int src_fsys;
  307. unsigned char res22[0xc];
  308. unsigned int src_peril0;
  309. unsigned int src_peril1;
  310. unsigned int src_cam1;
  311. unsigned char res23[0xb4];
  312. unsigned int src_mask_top;
  313. unsigned char res24[0xc];
  314. unsigned int src_mask_cam;
  315. unsigned int src_mask_tv;
  316. unsigned char res25[0xc];
  317. unsigned int src_mask_lcd;
  318. unsigned int src_mask_isp;
  319. unsigned int src_mask_maudio;
  320. unsigned int src_mask_fsys;
  321. unsigned char res26[0xc];
  322. unsigned int src_mask_peril0;
  323. unsigned int src_mask_peril1;
  324. unsigned char res27[0xb8];
  325. unsigned int mux_stat_top0;
  326. unsigned int mux_stat_top1;
  327. unsigned char res28[0x10];
  328. unsigned int mux_stat_mfc;
  329. unsigned int mux_stat_g3d;
  330. unsigned char res29[0x28];
  331. unsigned int mux_stat_cam1;
  332. unsigned char res30[0xb4];
  333. unsigned int div_top;
  334. unsigned char res31[0xc];
  335. unsigned int div_cam;
  336. unsigned int div_tv;
  337. unsigned int div_mfc;
  338. unsigned int div_g3d;
  339. unsigned char res32[0x4];
  340. unsigned int div_lcd;
  341. unsigned int div_isp;
  342. unsigned int div_maudio;
  343. unsigned int div_fsys0;
  344. unsigned int div_fsys1;
  345. unsigned int div_fsys2;
  346. unsigned int div_fsys3;
  347. unsigned int div_peril0;
  348. unsigned int div_peril1;
  349. unsigned int div_peril2;
  350. unsigned int div_peril3;
  351. unsigned int div_peril4;
  352. unsigned int div_peril5;
  353. unsigned int div_cam1;
  354. unsigned char res33[0x14];
  355. unsigned int div2_ratio;
  356. unsigned char res34[0x8c];
  357. unsigned int div_stat_top;
  358. unsigned char res35[0xc];
  359. unsigned int div_stat_cam;
  360. unsigned int div_stat_tv;
  361. unsigned int div_stat_mfc;
  362. unsigned int div_stat_g3d;
  363. unsigned char res36[0x4];
  364. unsigned int div_stat_lcd;
  365. unsigned int div_stat_isp;
  366. unsigned int div_stat_maudio;
  367. unsigned int div_stat_fsys0;
  368. unsigned int div_stat_fsys1;
  369. unsigned int div_stat_fsys2;
  370. unsigned int div_stat_fsys3;
  371. unsigned int div_stat_peril0;
  372. unsigned int div_stat_peril1;
  373. unsigned int div_stat_peril2;
  374. unsigned int div_stat_peril3;
  375. unsigned int div_stat_peril4;
  376. unsigned int div_stat_peril5;
  377. unsigned int div_stat_cam1;
  378. unsigned char res37[0x14];
  379. unsigned int div2_stat;
  380. unsigned char res38[0x29c];
  381. unsigned int gate_ip_cam;
  382. unsigned int gate_ip_tv;
  383. unsigned int gate_ip_mfc;
  384. unsigned int gate_ip_g3d;
  385. unsigned char res39[0x4];
  386. unsigned int gate_ip_lcd;
  387. unsigned int gate_ip_isp;
  388. unsigned char res40[0x4];
  389. unsigned int gate_ip_fsys;
  390. unsigned char res41[0x8];
  391. unsigned int gate_ip_gps;
  392. unsigned int gate_ip_peril;
  393. unsigned char res42[0xc];
  394. unsigned char res43[0x4];
  395. unsigned char res44[0xc];
  396. unsigned int gate_block;
  397. unsigned char res45[0x8c];
  398. unsigned int clkout_cmu_top;
  399. unsigned int clkout_cmu_top_div_stat;
  400. unsigned char res46[0x3600];
  401. unsigned int mpll_lock;
  402. unsigned char res47[0xfc];
  403. unsigned int mpll_con0;
  404. unsigned int mpll_con1;
  405. unsigned char res48[0xf0];
  406. unsigned int src_dmc;
  407. unsigned char res49[0xfc];
  408. unsigned int src_mask_dmc;
  409. unsigned char res50[0xfc];
  410. unsigned int mux_stat_dmc;
  411. unsigned char res51[0xfc];
  412. unsigned int div_dmc0;
  413. unsigned int div_dmc1;
  414. unsigned char res52[0xf8];
  415. unsigned int div_stat_dmc0;
  416. unsigned int div_stat_dmc1;
  417. unsigned char res53[0xf8];
  418. unsigned int gate_bus_dmc0;
  419. unsigned int gate_bus_dmc1;
  420. unsigned char res54[0x1f8];
  421. unsigned int gate_ip_dmc0;
  422. unsigned int gate_ip_dmc1;
  423. unsigned char res55[0xf8];
  424. unsigned int clkout_cmu_dmc;
  425. unsigned int clkout_cmu_dmc_div_stat;
  426. unsigned char res56[0x5f8];
  427. unsigned int dcgidx_map0;
  428. unsigned int dcgidx_map1;
  429. unsigned int dcgidx_map2;
  430. unsigned char res57[0x14];
  431. unsigned int dcgperf_map0;
  432. unsigned int dcgperf_map1;
  433. unsigned char res58[0x18];
  434. unsigned int dvcidx_map;
  435. unsigned char res59[0x1c];
  436. unsigned int freq_cpu;
  437. unsigned int freq_dpm;
  438. unsigned char res60[0x18];
  439. unsigned int dvsemclk_en;
  440. unsigned int maxperf;
  441. unsigned char res61[0x8];
  442. unsigned int dmc_freq_ctrl;
  443. unsigned int dmc_pause_ctrl;
  444. unsigned int dddrphy_lock_ctrl;
  445. unsigned int c2c_state;
  446. unsigned char res62[0x2f60];
  447. unsigned int apll_lock;
  448. unsigned char res63[0x8];
  449. unsigned char res64[0xf4];
  450. unsigned int apll_con0;
  451. unsigned int apll_con1;
  452. unsigned char res65[0xf8];
  453. unsigned int src_cpu;
  454. unsigned char res66[0x1fc];
  455. unsigned int mux_stat_cpu;
  456. unsigned char res67[0xfc];
  457. unsigned int div_cpu0;
  458. unsigned int div_cpu1;
  459. unsigned char res68[0xf8];
  460. unsigned int div_stat_cpu0;
  461. unsigned int div_stat_cpu1;
  462. unsigned char res69[0x2f8];
  463. unsigned int clk_gate_ip_cpu;
  464. unsigned char res70[0xfc];
  465. unsigned int clkout_cmu_cpu;
  466. unsigned int clkout_cmu_cpu_div_stat;
  467. unsigned char res71[0x5f8];
  468. unsigned int armclk_stopctrl;
  469. unsigned int atclk_stopctrl;
  470. unsigned char res72[0x10];
  471. unsigned char res73[0x8];
  472. unsigned int pwr_ctrl;
  473. unsigned int pwr_ctrl2;
  474. unsigned char res74[0xd8];
  475. unsigned int apll_con0_l8;
  476. unsigned int apll_con0_l7;
  477. unsigned int apll_con0_l6;
  478. unsigned int apll_con0_l5;
  479. unsigned int apll_con0_l4;
  480. unsigned int apll_con0_l3;
  481. unsigned int apll_con0_l2;
  482. unsigned int apll_con0_l1;
  483. unsigned int iem_control;
  484. unsigned char res75[0xdc];
  485. unsigned int apll_con1_l8;
  486. unsigned int apll_con1_l7;
  487. unsigned int apll_con1_l6;
  488. unsigned int apll_con1_l5;
  489. unsigned int apll_con1_l4;
  490. unsigned int apll_con1_l3;
  491. unsigned int apll_con1_l2;
  492. unsigned int apll_con1_l1;
  493. unsigned char res76[0xe0];
  494. unsigned int div_iem_l8;
  495. unsigned int div_iem_l7;
  496. unsigned int div_iem_l6;
  497. unsigned int div_iem_l5;
  498. unsigned int div_iem_l4;
  499. unsigned int div_iem_l3;
  500. unsigned int div_iem_l2;
  501. unsigned int div_iem_l1;
  502. unsigned char res77[0xe0];
  503. unsigned int l2_status;
  504. unsigned char res78[0xc];
  505. unsigned int cpu_status;
  506. unsigned char res79[0xc];
  507. unsigned int ptm_status;
  508. unsigned char res80[0x2edc];
  509. unsigned int div_isp0;
  510. unsigned int div_isp1;
  511. unsigned char res81[0xf8];
  512. unsigned int div_stat_isp0;
  513. unsigned int div_stat_isp1;
  514. unsigned char res82[0x3f8];
  515. unsigned int gate_ip_isp0;
  516. unsigned int gate_ip_isp1;
  517. unsigned char res83[0x1f8];
  518. unsigned int clkout_cmu_isp;
  519. unsigned int clkout_cmu_ispd_div_stat;
  520. unsigned char res84[0xf8];
  521. unsigned int cmu_isp_spar0;
  522. unsigned int cmu_isp_spar1;
  523. unsigned int cmu_isp_spar2;
  524. unsigned int cmu_isp_spar3;
  525. };
  526. struct exynos5_clock {
  527. unsigned int apll_lock;
  528. unsigned char res1[0xfc];
  529. unsigned int apll_con0;
  530. unsigned int apll_con1;
  531. unsigned char res2[0xf8];
  532. unsigned int src_cpu;
  533. unsigned char res3[0x1fc];
  534. unsigned int mux_stat_cpu;
  535. unsigned char res4[0xfc];
  536. unsigned int div_cpu0;
  537. unsigned int div_cpu1;
  538. unsigned char res5[0xf8];
  539. unsigned int div_stat_cpu0;
  540. unsigned int div_stat_cpu1;
  541. unsigned char res6[0x1f8];
  542. unsigned int gate_sclk_cpu;
  543. unsigned char res7[0x1fc];
  544. unsigned int clkout_cmu_cpu;
  545. unsigned int clkout_cmu_cpu_div_stat;
  546. unsigned char res8[0x5f8];
  547. unsigned int armclk_stopctrl;
  548. unsigned char res9[0x0c];
  549. unsigned int parityfail_status;
  550. unsigned int parityfail_clear;
  551. unsigned char res10[0x8];
  552. unsigned int pwr_ctrl;
  553. unsigned int pwr_ctr2;
  554. unsigned char res11[0xd8];
  555. unsigned int apll_con0_l8;
  556. unsigned int apll_con0_l7;
  557. unsigned int apll_con0_l6;
  558. unsigned int apll_con0_l5;
  559. unsigned int apll_con0_l4;
  560. unsigned int apll_con0_l3;
  561. unsigned int apll_con0_l2;
  562. unsigned int apll_con0_l1;
  563. unsigned int iem_control;
  564. unsigned char res12[0xdc];
  565. unsigned int apll_con1_l8;
  566. unsigned int apll_con1_l7;
  567. unsigned int apll_con1_l6;
  568. unsigned int apll_con1_l5;
  569. unsigned int apll_con1_l4;
  570. unsigned int apll_con1_l3;
  571. unsigned int apll_con1_l2;
  572. unsigned int apll_con1_l1;
  573. unsigned char res13[0xe0];
  574. unsigned int div_iem_l8;
  575. unsigned int div_iem_l7;
  576. unsigned int div_iem_l6;
  577. unsigned int div_iem_l5;
  578. unsigned int div_iem_l4;
  579. unsigned int div_iem_l3;
  580. unsigned int div_iem_l2;
  581. unsigned int div_iem_l1;
  582. unsigned char res14[0x2ce0];
  583. unsigned int mpll_lock;
  584. unsigned char res15[0xfc];
  585. unsigned int mpll_con0;
  586. unsigned int mpll_con1;
  587. unsigned char res16[0xf8];
  588. unsigned int src_core0;
  589. unsigned int src_core1;
  590. unsigned char res17[0xf8];
  591. unsigned int src_mask_core;
  592. unsigned char res18[0x100];
  593. unsigned int mux_stat_core1;
  594. unsigned char res19[0xf8];
  595. unsigned int div_core0;
  596. unsigned int div_core1;
  597. unsigned int div_sysrgt;
  598. unsigned char res20[0xf4];
  599. unsigned int div_stat_core0;
  600. unsigned int div_stat_core1;
  601. unsigned int div_stat_sysrgt;
  602. unsigned char res21[0x2f4];
  603. unsigned int gate_ip_core;
  604. unsigned int gate_ip_sysrgt;
  605. unsigned char res22[0x8];
  606. unsigned int c2c_monitor;
  607. unsigned char res23[0xec];
  608. unsigned int clkout_cmu_core;
  609. unsigned int clkout_cmu_core_div_stat;
  610. unsigned char res24[0x5f8];
  611. unsigned int dcgidx_map0;
  612. unsigned int dcgidx_map1;
  613. unsigned int dcgidx_map2;
  614. unsigned char res25[0x14];
  615. unsigned int dcgperf_map0;
  616. unsigned int dcgperf_map1;
  617. unsigned char res26[0x18];
  618. unsigned int dvcidx_map;
  619. unsigned char res27[0x1c];
  620. unsigned int freq_cpu;
  621. unsigned int freq_dpm;
  622. unsigned char res28[0x18];
  623. unsigned int dvsemclk_en;
  624. unsigned int maxperf;
  625. unsigned char res29[0xf78];
  626. unsigned int c2c_config;
  627. unsigned char res30[0x24fc];
  628. unsigned int div_acp;
  629. unsigned char res31[0xfc];
  630. unsigned int div_stat_acp;
  631. unsigned char res32[0x1fc];
  632. unsigned int gate_ip_acp;
  633. unsigned char res33[0xfc];
  634. unsigned int div_syslft;
  635. unsigned char res34[0xc];
  636. unsigned int div_stat_syslft;
  637. unsigned char res35[0x1c];
  638. unsigned int gate_ip_syslft;
  639. unsigned char res36[0xcc];
  640. unsigned int clkout_cmu_acp;
  641. unsigned int clkout_cmu_acp_div_stat;
  642. unsigned char res37[0x8];
  643. unsigned int ufmc_config;
  644. unsigned char res38[0x38ec];
  645. unsigned int div_isp0;
  646. unsigned int div_isp1;
  647. unsigned int div_isp2;
  648. unsigned char res39[0xf4];
  649. unsigned int div_stat_isp0;
  650. unsigned int div_stat_isp1;
  651. unsigned int div_stat_isp2;
  652. unsigned char res40[0x3f4];
  653. unsigned int gate_ip_isp0;
  654. unsigned int gate_ip_isp1;
  655. unsigned char res41[0xf8];
  656. unsigned int gate_sclk_isp;
  657. unsigned char res42[0xc];
  658. unsigned int mcuisp_pwr_ctrl;
  659. unsigned char res43[0xec];
  660. unsigned int clkout_cmu_isp;
  661. unsigned int clkout_cmu_isp_div_stat;
  662. unsigned char res44[0x3618];
  663. unsigned int cpll_lock;
  664. unsigned char res45[0xc];
  665. unsigned int epll_lock;
  666. unsigned char res46[0xc];
  667. unsigned int vpll_lock;
  668. unsigned char res47[0xc];
  669. unsigned int gpll_lock;
  670. unsigned char res48[0xcc];
  671. unsigned int cpll_con0;
  672. unsigned int cpll_con1;
  673. unsigned char res49[0x8];
  674. unsigned int epll_con0;
  675. unsigned int epll_con1;
  676. unsigned int epll_con2;
  677. unsigned char res50[0x4];
  678. unsigned int vpll_con0;
  679. unsigned int vpll_con1;
  680. unsigned int vpll_con2;
  681. unsigned char res51[0x4];
  682. unsigned int gpll_con0;
  683. unsigned int gpll_con1;
  684. unsigned char res52[0xb8];
  685. unsigned int src_top0;
  686. unsigned int src_top1;
  687. unsigned int src_top2;
  688. unsigned int src_top3;
  689. unsigned int src_gscl;
  690. unsigned char res53[0x8];
  691. unsigned int src_disp1_0;
  692. unsigned char res54[0x10];
  693. unsigned int src_mau;
  694. unsigned int src_fsys;
  695. unsigned int src_gen;
  696. unsigned char res55[0x4];
  697. unsigned int src_peric0;
  698. unsigned int src_peric1;
  699. unsigned char res56[0x18];
  700. unsigned int sclk_src_isp;
  701. unsigned char res57[0x9c];
  702. unsigned int src_mask_top;
  703. unsigned char res58[0xc];
  704. unsigned int src_mask_gscl;
  705. unsigned char res59[0x8];
  706. unsigned int src_mask_disp1_0;
  707. unsigned char res60[0x4];
  708. unsigned int src_mask_mau;
  709. unsigned char res61[0x8];
  710. unsigned int src_mask_fsys;
  711. unsigned int src_mask_gen;
  712. unsigned char res62[0x8];
  713. unsigned int src_mask_peric0;
  714. unsigned int src_mask_peric1;
  715. unsigned char res63[0x18];
  716. unsigned int src_mask_isp;
  717. unsigned char res67[0x9c];
  718. unsigned int mux_stat_top0;
  719. unsigned int mux_stat_top1;
  720. unsigned int mux_stat_top2;
  721. unsigned int mux_stat_top3;
  722. unsigned char res68[0xf0];
  723. unsigned int div_top0;
  724. unsigned int div_top1;
  725. unsigned char res69[0x8];
  726. unsigned int div_gscl;
  727. unsigned char res70[0x8];
  728. unsigned int div_disp1_0;
  729. unsigned char res71[0xc];
  730. unsigned int div_gen;
  731. unsigned char res72[0x4];
  732. unsigned int div_mau;
  733. unsigned int div_fsys0;
  734. unsigned int div_fsys1;
  735. unsigned int div_fsys2;
  736. unsigned char res73[0x4];
  737. unsigned int div_peric0;
  738. unsigned int div_peric1;
  739. unsigned int div_peric2;
  740. unsigned int div_peric3;
  741. unsigned int div_peric4;
  742. unsigned int div_peric5;
  743. unsigned char res74[0x10];
  744. unsigned int sclk_div_isp;
  745. unsigned char res75[0xc];
  746. unsigned int div2_ratio0;
  747. unsigned int div2_ratio1;
  748. unsigned char res76[0x8];
  749. unsigned int div4_ratio;
  750. unsigned char res77[0x6c];
  751. unsigned int div_stat_top0;
  752. unsigned int div_stat_top1;
  753. unsigned char res78[0x8];
  754. unsigned int div_stat_gscl;
  755. unsigned char res79[0x8];
  756. unsigned int div_stat_disp1_0;
  757. unsigned char res80[0xc];
  758. unsigned int div_stat_gen;
  759. unsigned char res81[0x4];
  760. unsigned int div_stat_mau;
  761. unsigned int div_stat_fsys0;
  762. unsigned int div_stat_fsys1;
  763. unsigned int div_stat_fsys2;
  764. unsigned char res82[0x4];
  765. unsigned int div_stat_peric0;
  766. unsigned int div_stat_peric1;
  767. unsigned int div_stat_peric2;
  768. unsigned int div_stat_peric3;
  769. unsigned int div_stat_peric4;
  770. unsigned int div_stat_peric5;
  771. unsigned char res83[0x10];
  772. unsigned int sclk_div_stat_isp;
  773. unsigned char res84[0xc];
  774. unsigned int div2_stat0;
  775. unsigned int div2_stat1;
  776. unsigned char res85[0x8];
  777. unsigned int div4_stat;
  778. unsigned char res86[0x184];
  779. unsigned int gate_top_sclk_disp1;
  780. unsigned int gate_top_sclk_gen;
  781. unsigned char res87[0xc];
  782. unsigned int gate_top_sclk_mau;
  783. unsigned int gate_top_sclk_fsys;
  784. unsigned char res88[0xc];
  785. unsigned int gate_top_sclk_peric;
  786. unsigned char res89[0x1c];
  787. unsigned int gate_top_sclk_isp;
  788. unsigned char res90[0xac];
  789. unsigned int gate_ip_gscl;
  790. unsigned char res91[0x4];
  791. unsigned int gate_ip_disp1;
  792. unsigned int gate_ip_mfc;
  793. unsigned int gate_ip_g3d;
  794. unsigned int gate_ip_gen;
  795. unsigned char res92[0xc];
  796. unsigned int gate_ip_fsys;
  797. unsigned char res93[0x8];
  798. unsigned int gate_ip_peric;
  799. unsigned char res94[0xc];
  800. unsigned int gate_ip_peris;
  801. unsigned char res95[0x1c];
  802. unsigned int gate_block;
  803. unsigned char res96[0x1c];
  804. unsigned int mcuiop_pwr_ctrl;
  805. unsigned char res97[0x5c];
  806. unsigned int clkout_cmu_top;
  807. unsigned int clkout_cmu_top_div_stat;
  808. unsigned char res98[0x37f8];
  809. unsigned int src_lex;
  810. unsigned char res99[0x1fc];
  811. unsigned int mux_stat_lex;
  812. unsigned char res100[0xfc];
  813. unsigned int div_lex;
  814. unsigned char res101[0xfc];
  815. unsigned int div_stat_lex;
  816. unsigned char res102[0x1fc];
  817. unsigned int gate_ip_lex;
  818. unsigned char res103[0x1fc];
  819. unsigned int clkout_cmu_lex;
  820. unsigned int clkout_cmu_lex_div_stat;
  821. unsigned char res104[0x3af8];
  822. unsigned int div_r0x;
  823. unsigned char res105[0xfc];
  824. unsigned int div_stat_r0x;
  825. unsigned char res106[0x1fc];
  826. unsigned int gate_ip_r0x;
  827. unsigned char res107[0x1fc];
  828. unsigned int clkout_cmu_r0x;
  829. unsigned int clkout_cmu_r0x_div_stat;
  830. unsigned char res108[0x3af8];
  831. unsigned int div_r1x;
  832. unsigned char res109[0xfc];
  833. unsigned int div_stat_r1x;
  834. unsigned char res110[0x1fc];
  835. unsigned int gate_ip_r1x;
  836. unsigned char res111[0x1fc];
  837. unsigned int clkout_cmu_r1x;
  838. unsigned int clkout_cmu_r1x_div_stat;
  839. unsigned char res112[0x3608];
  840. unsigned int bpll_lock;
  841. unsigned char res113[0xfc];
  842. unsigned int bpll_con0;
  843. unsigned int bpll_con1;
  844. unsigned char res114[0xe8];
  845. unsigned int src_cdrex;
  846. unsigned char res115[0x1fc];
  847. unsigned int mux_stat_cdrex;
  848. unsigned char res116[0xfc];
  849. unsigned int div_cdrex;
  850. unsigned char res117[0xfc];
  851. unsigned int div_stat_cdrex;
  852. unsigned char res118[0x2fc];
  853. unsigned int gate_ip_cdrex;
  854. unsigned char res119[0x10];
  855. unsigned int dmc_freq_ctrl;
  856. unsigned char res120[0x4];
  857. unsigned int drex2_pause;
  858. unsigned char res121[0xe0];
  859. unsigned int clkout_cmu_cdrex;
  860. unsigned int clkout_cmu_cdrex_div_stat;
  861. unsigned char res122[0x8];
  862. unsigned int lpddr3phy_ctrl;
  863. unsigned int lpddr3phy_con0;
  864. unsigned int lpddr3phy_con1;
  865. unsigned int lpddr3phy_con2;
  866. unsigned int lpddr3phy_con3;
  867. unsigned int pll_div2_sel;
  868. unsigned char res123[0xf5d8];
  869. };
  870. /* structure for epll configuration used in audio clock configuration */
  871. struct set_epll_con_val {
  872. unsigned int freq_out; /* frequency out */
  873. unsigned int en_lock_det; /* enable lock detect */
  874. unsigned int m_div; /* m divider value */
  875. unsigned int p_div; /* p divider value */
  876. unsigned int s_div; /* s divider value */
  877. unsigned int k_dsm; /* k value of delta signal modulator */
  878. };
  879. #endif
  880. #define MPLL_FOUT_SEL_SHIFT 4
  881. #define EXYNOS5_EPLLCON0_LOCKED_SHIFT 29 /* EPLL Locked bit position*/
  882. #define TIMEOUT_EPLL_LOCK 1000
  883. #define AUDIO_0_RATIO_MASK 0x0f
  884. #define AUDIO_1_RATIO_MASK 0x0f
  885. #define AUDIO1_SEL_MASK 0xf
  886. #define CLK_SRC_SCLK_EPLL 0x7
  887. /* CON0 bit-fields */
  888. #define EPLL_CON0_MDIV_MASK 0x1ff
  889. #define EPLL_CON0_PDIV_MASK 0x3f
  890. #define EPLL_CON0_SDIV_MASK 0x7
  891. #define EPLL_CON0_MDIV_SHIFT 16
  892. #define EPLL_CON0_PDIV_SHIFT 8
  893. #define EPLL_CON0_SDIV_SHIFT 0
  894. #define EPLL_CON0_LOCK_DET_EN_SHIFT 28
  895. #define EPLL_CON0_LOCK_DET_EN_MASK 1
  896. #define MPLL_FOUT_SEL_MASK 0x1
  897. #define BPLL_FOUT_SEL_SHIFT 0
  898. #define BPLL_FOUT_SEL_MASK 0x1
  899. #endif