aon_clk_gen.h 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421
  1. /* Copyright (C) 2018 RDA Technologies Limited and/or its affiliates("RDA").
  2. * All rights reserved.
  3. *
  4. * This software is supplied "AS IS" without any warranties.
  5. * RDA assumes no responsibility or liability for the use of the software,
  6. * conveys no license or title under any patent, copyright, or mask work
  7. * right to the product. RDA reserves the right to make changes in the
  8. * software without notification. RDA also make no representation or
  9. * warranty that such application will be suitable for the specified use
  10. * without further testing or modification.
  11. */
  12. #ifndef _AON_CLK_GEN_H_
  13. #define _AON_CLK_GEN_H_
  14. // Auto generated by dtools(see dtools.txt for its version).
  15. // Don't edit it manually!
  16. #define REG_AON_CLK_GEN_BASE (0x51508000)
  17. typedef volatile struct
  18. {
  19. uint32_t __0[8]; // 0x00000000
  20. uint32_t soft_cnt_done0_cfg; // 0x00000020
  21. uint32_t pll_wait_sel0_cfg; // 0x00000024
  22. uint32_t pll_wait_sw_ctl0_cfg; // 0x00000028
  23. uint32_t div_en_sel0_cfg; // 0x0000002c
  24. uint32_t div_en_sw_ctl0_cfg; // 0x00000030
  25. uint32_t gate_en_sel0_cfg; // 0x00000034
  26. uint32_t gate_en_sel1_cfg; // 0x00000038
  27. uint32_t gate_en_sw_ctl0_cfg; // 0x0000003c
  28. uint32_t gate_en_sw_ctl1_cfg; // 0x00000040
  29. uint32_t monitor_wait_en_status0_cfg; // 0x00000044
  30. uint32_t monitor_div_auto_en_status0_cfg; // 0x00000048
  31. uint32_t monitor_gate_auto_en_status00_cfg; // 0x0000004c
  32. uint32_t monitor_gate_auto_en_status10_cfg; // 0x00000050
  33. } HWP_AON_CLK_GEN_T;
  34. #define hwp_aonClkGen ((HWP_AON_CLK_GEN_T *)REG_ACCESS_ADDRESS(REG_AON_CLK_GEN_BASE))
  35. // soft_cnt_done0_cfg
  36. typedef union {
  37. uint32_t v;
  38. struct
  39. {
  40. uint32_t rc26m_78m_soft_cnt_done : 1; // [0]
  41. uint32_t xtal_lp_26m_soft_cnt_done : 1; // [1]
  42. uint32_t xtal_26m_soft_cnt_done : 1; // [2]
  43. uint32_t audio_pll_122m_soft_cnt_done : 1; // [3]
  44. uint32_t mempll_1000m_soft_cnt_done : 1; // [4]
  45. uint32_t apll_1000m_soft_cnt_done : 1; // [5]
  46. uint32_t __31_6 : 26; // [31:6]
  47. } b;
  48. } REG_AON_CLK_GEN_SOFT_CNT_DONE0_CFG_T;
  49. // pll_wait_sel0_cfg
  50. typedef union {
  51. uint32_t v;
  52. struct
  53. {
  54. uint32_t rc26m_78m_wait_auto_gate_sel : 1; // [0]
  55. uint32_t xtal_lp_26m_wait_auto_gate_sel : 1; // [1]
  56. uint32_t xtal_26m_wait_auto_gate_sel : 1; // [2]
  57. uint32_t audio_pll_122m_wait_auto_gate_sel : 1; // [3]
  58. uint32_t mempll_1000m_wait_auto_gate_sel : 1; // [4]
  59. uint32_t apll_1000m_wait_auto_gate_sel : 1; // [5]
  60. uint32_t __31_6 : 26; // [31:6]
  61. } b;
  62. } REG_AON_CLK_GEN_PLL_WAIT_SEL0_CFG_T;
  63. // pll_wait_sw_ctl0_cfg
  64. typedef union {
  65. uint32_t v;
  66. struct
  67. {
  68. uint32_t rc26m_78m_wait_force_en : 1; // [0]
  69. uint32_t xtal_lp_26m_wait_force_en : 1; // [1]
  70. uint32_t xtal_26m_wait_force_en : 1; // [2]
  71. uint32_t audio_pll_122m_wait_force_en : 1; // [3]
  72. uint32_t mempll_1000m_wait_force_en : 1; // [4]
  73. uint32_t apll_1000m_wait_force_en : 1; // [5]
  74. uint32_t __31_6 : 26; // [31:6]
  75. } b;
  76. } REG_AON_CLK_GEN_PLL_WAIT_SW_CTL0_CFG_T;
  77. // div_en_sel0_cfg
  78. typedef union {
  79. uint32_t v;
  80. struct
  81. {
  82. uint32_t mempll_div_1000m_500m_auto_gate_sel : 1; // [0]
  83. uint32_t audio_div_pll_122m_30m7_auto_gate_sel : 1; // [1]
  84. uint32_t apll_div_1000m_100m_auto_gate_sel : 1; // [2]
  85. uint32_t apll_div_1000m_200m_auto_gate_sel : 1; // [3]
  86. uint32_t apll_div_1000m_166m7_auto_gate_sel : 1; // [4]
  87. uint32_t apll_div_1000m_333m3_auto_gate_sel : 1; // [5]
  88. uint32_t apll_div_1000m_31m2_auto_gate_sel : 1; // [6]
  89. uint32_t apll_div_1000m_62m5_auto_gate_sel : 1; // [7]
  90. uint32_t apll_div_1000m_125m_auto_gate_sel : 1; // [8]
  91. uint32_t apll_div_1000m_250m_auto_gate_sel : 1; // [9]
  92. uint32_t apll_div_1000m_500m_auto_gate_sel : 1; // [10]
  93. uint32_t apll_div_1000m_90m9_auto_gate_sel : 1; // [11]
  94. uint32_t __31_12 : 20; // [31:12]
  95. } b;
  96. } REG_AON_CLK_GEN_DIV_EN_SEL0_CFG_T;
  97. // div_en_sw_ctl0_cfg
  98. typedef union {
  99. uint32_t v;
  100. struct
  101. {
  102. uint32_t mempll_div_1000m_500m_force_en : 1; // [0]
  103. uint32_t audio_div_pll_122m_30m7_force_en : 1; // [1]
  104. uint32_t apll_div_1000m_100m_force_en : 1; // [2]
  105. uint32_t apll_div_1000m_200m_force_en : 1; // [3]
  106. uint32_t apll_div_1000m_166m7_force_en : 1; // [4]
  107. uint32_t apll_div_1000m_333m3_force_en : 1; // [5]
  108. uint32_t apll_div_1000m_31m2_force_en : 1; // [6]
  109. uint32_t apll_div_1000m_62m5_force_en : 1; // [7]
  110. uint32_t apll_div_1000m_125m_force_en : 1; // [8]
  111. uint32_t apll_div_1000m_250m_force_en : 1; // [9]
  112. uint32_t apll_div_1000m_500m_force_en : 1; // [10]
  113. uint32_t apll_div_1000m_90m9_force_en : 1; // [11]
  114. uint32_t __31_12 : 20; // [31:12]
  115. } b;
  116. } REG_AON_CLK_GEN_DIV_EN_SW_CTL0_CFG_T;
  117. // gate_en_sel0_cfg
  118. typedef union {
  119. uint32_t v;
  120. struct
  121. {
  122. uint32_t cgm_mempll_500m_pub_auto_gate_sel : 1; // [0]
  123. uint32_t cgm_xtal_26m_pub_auto_gate_sel : 1; // [1]
  124. uint32_t cgm_rc_26m_pub_auto_gate_sel : 1; // [2]
  125. uint32_t cgm_audiopll_30_72m_aon_auto_gate_sel : 1; // [3]
  126. uint32_t cgm_audiopll_122_88m_aon_auto_gate_sel : 1; // [4]
  127. uint32_t cgm_apll_31_25m_aon_auto_gate_sel : 1; // [5]
  128. uint32_t cgm_apll_62_5m_aon_auto_gate_sel : 1; // [6]
  129. uint32_t cgm_apll_100m_aon_auto_gate_sel : 1; // [7]
  130. uint32_t cgm_apll_125m_aon_auto_gate_sel : 1; // [8]
  131. uint32_t cgm_apll_167m_aon_auto_gate_sel : 1; // [9]
  132. uint32_t cgm_apll_200m_aon_auto_gate_sel : 1; // [10]
  133. uint32_t cgm_apll_250m_aon_auto_gate_sel : 1; // [11]
  134. uint32_t cgm_apll_333m_aon_auto_gate_sel : 1; // [12]
  135. uint32_t cgm_apll_400m_aon_auto_gate_sel : 1; // [13]
  136. uint32_t cgm_xtal_lp_26m_aon_auto_gate_sel : 1; // [14]
  137. uint32_t cgm_xtal_26m_aon_auto_gate_sel : 1; // [15]
  138. uint32_t cgm_rc_26m_aon_auto_gate_sel : 1; // [16]
  139. uint32_t cgm_apll_200m_cp_auto_gate_sel : 1; // [17]
  140. uint32_t cgm_apll_400m_cp_auto_gate_sel : 1; // [18]
  141. uint32_t cgm_xtal_26m_cp_auto_gate_sel : 1; // [19]
  142. uint32_t cgm_rtc_32k_cp_auto_gate_sel : 1; // [20]
  143. uint32_t cgm_apll_31_25m_ap_auto_gate_sel : 1; // [21]
  144. uint32_t cgm_apll_62_5m_ap_auto_gate_sel : 1; // [22]
  145. uint32_t cgm_apll_100m_ap_auto_gate_sel : 1; // [23]
  146. uint32_t cgm_apll_125m_ap_auto_gate_sel : 1; // [24]
  147. uint32_t cgm_apll_167m_ap_auto_gate_sel : 1; // [25]
  148. uint32_t cgm_apll_250m_ap_auto_gate_sel : 1; // [26]
  149. uint32_t cgm_apll_400m_ap_auto_gate_sel : 1; // [27]
  150. uint32_t cgm_apll_500m_ap_auto_gate_sel : 1; // [28]
  151. uint32_t cgm_xtal_26m_ap_auto_gate_sel : 1; // [29]
  152. uint32_t cgm_rc_26m_ap_auto_gate_sel : 1; // [30]
  153. uint32_t cgm_rtc_32k_ap_auto_gate_sel : 1; // [31]
  154. } b;
  155. } REG_AON_CLK_GEN_GATE_EN_SEL0_CFG_T;
  156. // gate_en_sel1_cfg
  157. typedef union {
  158. uint32_t v;
  159. struct
  160. {
  161. uint32_t cgm_xtal_26m_rf_auto_gate_sel : 1; // [0]
  162. uint32_t cgm_apll_62_5m_gnss_auto_gate_sel : 1; // [1]
  163. uint32_t cgm_apll_125m_gnss_auto_gate_sel : 1; // [2]
  164. uint32_t cgm_apll_167m_gnss_auto_gate_sel : 1; // [3]
  165. uint32_t cgm_xtal_26m_gnss_auto_gate_sel : 1; // [4]
  166. uint32_t cgm_apll_250m_pub_auto_gate_sel : 1; // [5]
  167. uint32_t cgm_apll_400m_pub_auto_gate_sel : 1; // [6]
  168. uint32_t cgm_apll_500m_pub_auto_gate_sel : 1; // [7]
  169. uint32_t __31_8 : 24; // [31:8]
  170. } b;
  171. } REG_AON_CLK_GEN_GATE_EN_SEL1_CFG_T;
  172. // gate_en_sw_ctl0_cfg
  173. typedef union {
  174. uint32_t v;
  175. struct
  176. {
  177. uint32_t cgm_mempll_500m_pub_force_en : 1; // [0]
  178. uint32_t cgm_xtal_26m_pub_force_en : 1; // [1]
  179. uint32_t cgm_rc_26m_pub_force_en : 1; // [2]
  180. uint32_t cgm_audiopll_30_72m_aon_force_en : 1; // [3]
  181. uint32_t cgm_audiopll_122_88m_aon_force_en : 1; // [4]
  182. uint32_t cgm_apll_31_25m_aon_force_en : 1; // [5]
  183. uint32_t cgm_apll_62_5m_aon_force_en : 1; // [6]
  184. uint32_t cgm_apll_100m_aon_force_en : 1; // [7]
  185. uint32_t cgm_apll_125m_aon_force_en : 1; // [8]
  186. uint32_t cgm_apll_167m_aon_force_en : 1; // [9]
  187. uint32_t cgm_apll_200m_aon_force_en : 1; // [10]
  188. uint32_t cgm_apll_250m_aon_force_en : 1; // [11]
  189. uint32_t cgm_apll_333m_aon_force_en : 1; // [12]
  190. uint32_t cgm_apll_400m_aon_force_en : 1; // [13]
  191. uint32_t cgm_xtal_lp_26m_aon_force_en : 1; // [14]
  192. uint32_t cgm_xtal_26m_aon_force_en : 1; // [15]
  193. uint32_t cgm_rc_26m_aon_force_en : 1; // [16]
  194. uint32_t cgm_apll_200m_cp_force_en : 1; // [17]
  195. uint32_t cgm_apll_400m_cp_force_en : 1; // [18]
  196. uint32_t cgm_xtal_26m_cp_force_en : 1; // [19]
  197. uint32_t cgm_rtc_32k_cp_force_en : 1; // [20]
  198. uint32_t cgm_apll_31_25m_ap_force_en : 1; // [21]
  199. uint32_t cgm_apll_62_5m_ap_force_en : 1; // [22]
  200. uint32_t cgm_apll_100m_ap_force_en : 1; // [23]
  201. uint32_t cgm_apll_125m_ap_force_en : 1; // [24]
  202. uint32_t cgm_apll_167m_ap_force_en : 1; // [25]
  203. uint32_t cgm_apll_250m_ap_force_en : 1; // [26]
  204. uint32_t cgm_apll_400m_ap_force_en : 1; // [27]
  205. uint32_t cgm_apll_500m_ap_force_en : 1; // [28]
  206. uint32_t cgm_xtal_26m_ap_force_en : 1; // [29]
  207. uint32_t cgm_rc_26m_ap_force_en : 1; // [30]
  208. uint32_t cgm_rtc_32k_ap_force_en : 1; // [31]
  209. } b;
  210. } REG_AON_CLK_GEN_GATE_EN_SW_CTL0_CFG_T;
  211. // gate_en_sw_ctl1_cfg
  212. typedef union {
  213. uint32_t v;
  214. struct
  215. {
  216. uint32_t cgm_xtal_26m_rf_force_en : 1; // [0]
  217. uint32_t cgm_apll_62_5m_gnss_force_en : 1; // [1]
  218. uint32_t cgm_apll_125m_gnss_force_en : 1; // [2]
  219. uint32_t cgm_apll_167m_gnss_force_en : 1; // [3]
  220. uint32_t cgm_xtal_26m_gnss_force_en : 1; // [4]
  221. uint32_t cgm_apll_250m_pub_force_en : 1; // [5]
  222. uint32_t cgm_apll_400m_pub_force_en : 1; // [6]
  223. uint32_t cgm_apll_500m_pub_force_en : 1; // [7]
  224. uint32_t __31_8 : 24; // [31:8]
  225. } b;
  226. } REG_AON_CLK_GEN_GATE_EN_SW_CTL1_CFG_T;
  227. // monitor_wait_en_status0_cfg
  228. typedef union {
  229. uint32_t v;
  230. struct
  231. {
  232. uint32_t monitor_wait_en_status : 6; // [5:0], read only
  233. uint32_t __31_6 : 26; // [31:6]
  234. } b;
  235. } REG_AON_CLK_GEN_MONITOR_WAIT_EN_STATUS0_CFG_T;
  236. // monitor_div_auto_en_status0_cfg
  237. typedef union {
  238. uint32_t v;
  239. struct
  240. {
  241. uint32_t monitor_div_auto_en_status : 12; // [11:0], read only
  242. uint32_t __31_12 : 20; // [31:12]
  243. } b;
  244. } REG_AON_CLK_GEN_MONITOR_DIV_AUTO_EN_STATUS0_CFG_T;
  245. // monitor_gate_auto_en_status10_cfg
  246. typedef union {
  247. uint32_t v;
  248. struct
  249. {
  250. uint32_t monitor_gate_auto_en_status1 : 8; // [7:0], read only
  251. uint32_t __31_8 : 24; // [31:8]
  252. } b;
  253. } REG_AON_CLK_GEN_MONITOR_GATE_AUTO_EN_STATUS10_CFG_T;
  254. // soft_cnt_done0_cfg
  255. #define AON_CLK_GEN_RC26M_78M_SOFT_CNT_DONE (1 << 0)
  256. #define AON_CLK_GEN_XTAL_LP_26M_SOFT_CNT_DONE (1 << 1)
  257. #define AON_CLK_GEN_XTAL_26M_SOFT_CNT_DONE (1 << 2)
  258. #define AON_CLK_GEN_AUDIO_PLL_122M_SOFT_CNT_DONE (1 << 3)
  259. #define AON_CLK_GEN_MEMPLL_1000M_SOFT_CNT_DONE (1 << 4)
  260. #define AON_CLK_GEN_APLL_1000M_SOFT_CNT_DONE (1 << 5)
  261. // pll_wait_sel0_cfg
  262. #define AON_CLK_GEN_RC26M_78M_WAIT_AUTO_GATE_SEL (1 << 0)
  263. #define AON_CLK_GEN_XTAL_LP_26M_WAIT_AUTO_GATE_SEL (1 << 1)
  264. #define AON_CLK_GEN_XTAL_26M_WAIT_AUTO_GATE_SEL (1 << 2)
  265. #define AON_CLK_GEN_AUDIO_PLL_122M_WAIT_AUTO_GATE_SEL (1 << 3)
  266. #define AON_CLK_GEN_MEMPLL_1000M_WAIT_AUTO_GATE_SEL (1 << 4)
  267. #define AON_CLK_GEN_APLL_1000M_WAIT_AUTO_GATE_SEL (1 << 5)
  268. // pll_wait_sw_ctl0_cfg
  269. #define AON_CLK_GEN_RC26M_78M_WAIT_FORCE_EN (1 << 0)
  270. #define AON_CLK_GEN_XTAL_LP_26M_WAIT_FORCE_EN (1 << 1)
  271. #define AON_CLK_GEN_XTAL_26M_WAIT_FORCE_EN (1 << 2)
  272. #define AON_CLK_GEN_AUDIO_PLL_122M_WAIT_FORCE_EN (1 << 3)
  273. #define AON_CLK_GEN_MEMPLL_1000M_WAIT_FORCE_EN (1 << 4)
  274. #define AON_CLK_GEN_APLL_1000M_WAIT_FORCE_EN (1 << 5)
  275. // div_en_sel0_cfg
  276. #define AON_CLK_GEN_MEMPLL_DIV_1000M_500M_AUTO_GATE_SEL (1 << 0)
  277. #define AON_CLK_GEN_AUDIO_DIV_PLL_122M_30M7_AUTO_GATE_SEL (1 << 1)
  278. #define AON_CLK_GEN_APLL_DIV_1000M_100M_AUTO_GATE_SEL (1 << 2)
  279. #define AON_CLK_GEN_APLL_DIV_1000M_200M_AUTO_GATE_SEL (1 << 3)
  280. #define AON_CLK_GEN_APLL_DIV_1000M_166M7_AUTO_GATE_SEL (1 << 4)
  281. #define AON_CLK_GEN_APLL_DIV_1000M_333M3_AUTO_GATE_SEL (1 << 5)
  282. #define AON_CLK_GEN_APLL_DIV_1000M_31M2_AUTO_GATE_SEL (1 << 6)
  283. #define AON_CLK_GEN_APLL_DIV_1000M_62M5_AUTO_GATE_SEL (1 << 7)
  284. #define AON_CLK_GEN_APLL_DIV_1000M_125M_AUTO_GATE_SEL (1 << 8)
  285. #define AON_CLK_GEN_APLL_DIV_1000M_250M_AUTO_GATE_SEL (1 << 9)
  286. #define AON_CLK_GEN_APLL_DIV_1000M_500M_AUTO_GATE_SEL (1 << 10)
  287. #define AON_CLK_GEN_APLL_DIV_1000M_90M9_AUTO_GATE_SEL (1 << 11)
  288. // div_en_sw_ctl0_cfg
  289. #define AON_CLK_GEN_MEMPLL_DIV_1000M_500M_FORCE_EN (1 << 0)
  290. #define AON_CLK_GEN_AUDIO_DIV_PLL_122M_30M7_FORCE_EN (1 << 1)
  291. #define AON_CLK_GEN_APLL_DIV_1000M_100M_FORCE_EN (1 << 2)
  292. #define AON_CLK_GEN_APLL_DIV_1000M_200M_FORCE_EN (1 << 3)
  293. #define AON_CLK_GEN_APLL_DIV_1000M_166M7_FORCE_EN (1 << 4)
  294. #define AON_CLK_GEN_APLL_DIV_1000M_333M3_FORCE_EN (1 << 5)
  295. #define AON_CLK_GEN_APLL_DIV_1000M_31M2_FORCE_EN (1 << 6)
  296. #define AON_CLK_GEN_APLL_DIV_1000M_62M5_FORCE_EN (1 << 7)
  297. #define AON_CLK_GEN_APLL_DIV_1000M_125M_FORCE_EN (1 << 8)
  298. #define AON_CLK_GEN_APLL_DIV_1000M_250M_FORCE_EN (1 << 9)
  299. #define AON_CLK_GEN_APLL_DIV_1000M_500M_FORCE_EN (1 << 10)
  300. #define AON_CLK_GEN_APLL_DIV_1000M_90M9_FORCE_EN (1 << 11)
  301. // gate_en_sel0_cfg
  302. #define AON_CLK_GEN_CGM_MEMPLL_500M_PUB_AUTO_GATE_SEL (1 << 0)
  303. #define AON_CLK_GEN_CGM_XTAL_26M_PUB_AUTO_GATE_SEL (1 << 1)
  304. #define AON_CLK_GEN_CGM_RC_26M_PUB_AUTO_GATE_SEL (1 << 2)
  305. #define AON_CLK_GEN_CGM_AUDIOPLL_30_72M_AON_AUTO_GATE_SEL (1 << 3)
  306. #define AON_CLK_GEN_CGM_AUDIOPLL_122_88M_AON_AUTO_GATE_SEL (1 << 4)
  307. #define AON_CLK_GEN_CGM_APLL_31_25M_AON_AUTO_GATE_SEL (1 << 5)
  308. #define AON_CLK_GEN_CGM_APLL_62_5M_AON_AUTO_GATE_SEL (1 << 6)
  309. #define AON_CLK_GEN_CGM_APLL_100M_AON_AUTO_GATE_SEL (1 << 7)
  310. #define AON_CLK_GEN_CGM_APLL_125M_AON_AUTO_GATE_SEL (1 << 8)
  311. #define AON_CLK_GEN_CGM_APLL_167M_AON_AUTO_GATE_SEL (1 << 9)
  312. #define AON_CLK_GEN_CGM_APLL_200M_AON_AUTO_GATE_SEL (1 << 10)
  313. #define AON_CLK_GEN_CGM_APLL_250M_AON_AUTO_GATE_SEL (1 << 11)
  314. #define AON_CLK_GEN_CGM_APLL_333M_AON_AUTO_GATE_SEL (1 << 12)
  315. #define AON_CLK_GEN_CGM_APLL_400M_AON_AUTO_GATE_SEL (1 << 13)
  316. #define AON_CLK_GEN_CGM_XTAL_LP_26M_AON_AUTO_GATE_SEL (1 << 14)
  317. #define AON_CLK_GEN_CGM_XTAL_26M_AON_AUTO_GATE_SEL (1 << 15)
  318. #define AON_CLK_GEN_CGM_RC_26M_AON_AUTO_GATE_SEL (1 << 16)
  319. #define AON_CLK_GEN_CGM_APLL_200M_CP_AUTO_GATE_SEL (1 << 17)
  320. #define AON_CLK_GEN_CGM_APLL_400M_CP_AUTO_GATE_SEL (1 << 18)
  321. #define AON_CLK_GEN_CGM_XTAL_26M_CP_AUTO_GATE_SEL (1 << 19)
  322. #define AON_CLK_GEN_CGM_RTC_32K_CP_AUTO_GATE_SEL (1 << 20)
  323. #define AON_CLK_GEN_CGM_APLL_31_25M_AP_AUTO_GATE_SEL (1 << 21)
  324. #define AON_CLK_GEN_CGM_APLL_62_5M_AP_AUTO_GATE_SEL (1 << 22)
  325. #define AON_CLK_GEN_CGM_APLL_100M_AP_AUTO_GATE_SEL (1 << 23)
  326. #define AON_CLK_GEN_CGM_APLL_125M_AP_AUTO_GATE_SEL (1 << 24)
  327. #define AON_CLK_GEN_CGM_APLL_167M_AP_AUTO_GATE_SEL (1 << 25)
  328. #define AON_CLK_GEN_CGM_APLL_250M_AP_AUTO_GATE_SEL (1 << 26)
  329. #define AON_CLK_GEN_CGM_APLL_400M_AP_AUTO_GATE_SEL (1 << 27)
  330. #define AON_CLK_GEN_CGM_APLL_500M_AP_AUTO_GATE_SEL (1 << 28)
  331. #define AON_CLK_GEN_CGM_XTAL_26M_AP_AUTO_GATE_SEL (1 << 29)
  332. #define AON_CLK_GEN_CGM_RC_26M_AP_AUTO_GATE_SEL (1 << 30)
  333. #define AON_CLK_GEN_CGM_RTC_32K_AP_AUTO_GATE_SEL (1 << 31)
  334. // gate_en_sel1_cfg
  335. #define AON_CLK_GEN_CGM_XTAL_26M_RF_AUTO_GATE_SEL (1 << 0)
  336. #define AON_CLK_GEN_CGM_APLL_62_5M_GNSS_AUTO_GATE_SEL (1 << 1)
  337. #define AON_CLK_GEN_CGM_APLL_125M_GNSS_AUTO_GATE_SEL (1 << 2)
  338. #define AON_CLK_GEN_CGM_APLL_167M_GNSS_AUTO_GATE_SEL (1 << 3)
  339. #define AON_CLK_GEN_CGM_XTAL_26M_GNSS_AUTO_GATE_SEL (1 << 4)
  340. #define AON_CLK_GEN_CGM_APLL_250M_PUB_AUTO_GATE_SEL (1 << 5)
  341. #define AON_CLK_GEN_CGM_APLL_400M_PUB_AUTO_GATE_SEL (1 << 6)
  342. #define AON_CLK_GEN_CGM_APLL_500M_PUB_AUTO_GATE_SEL (1 << 7)
  343. // gate_en_sw_ctl0_cfg
  344. #define AON_CLK_GEN_CGM_MEMPLL_500M_PUB_FORCE_EN (1 << 0)
  345. #define AON_CLK_GEN_CGM_XTAL_26M_PUB_FORCE_EN (1 << 1)
  346. #define AON_CLK_GEN_CGM_RC_26M_PUB_FORCE_EN (1 << 2)
  347. #define AON_CLK_GEN_CGM_AUDIOPLL_30_72M_AON_FORCE_EN (1 << 3)
  348. #define AON_CLK_GEN_CGM_AUDIOPLL_122_88M_AON_FORCE_EN (1 << 4)
  349. #define AON_CLK_GEN_CGM_APLL_31_25M_AON_FORCE_EN (1 << 5)
  350. #define AON_CLK_GEN_CGM_APLL_62_5M_AON_FORCE_EN (1 << 6)
  351. #define AON_CLK_GEN_CGM_APLL_100M_AON_FORCE_EN (1 << 7)
  352. #define AON_CLK_GEN_CGM_APLL_125M_AON_FORCE_EN (1 << 8)
  353. #define AON_CLK_GEN_CGM_APLL_167M_AON_FORCE_EN (1 << 9)
  354. #define AON_CLK_GEN_CGM_APLL_200M_AON_FORCE_EN (1 << 10)
  355. #define AON_CLK_GEN_CGM_APLL_250M_AON_FORCE_EN (1 << 11)
  356. #define AON_CLK_GEN_CGM_APLL_333M_AON_FORCE_EN (1 << 12)
  357. #define AON_CLK_GEN_CGM_APLL_400M_AON_FORCE_EN (1 << 13)
  358. #define AON_CLK_GEN_CGM_XTAL_LP_26M_AON_FORCE_EN (1 << 14)
  359. #define AON_CLK_GEN_CGM_XTAL_26M_AON_FORCE_EN (1 << 15)
  360. #define AON_CLK_GEN_CGM_RC_26M_AON_FORCE_EN (1 << 16)
  361. #define AON_CLK_GEN_CGM_APLL_200M_CP_FORCE_EN (1 << 17)
  362. #define AON_CLK_GEN_CGM_APLL_400M_CP_FORCE_EN (1 << 18)
  363. #define AON_CLK_GEN_CGM_XTAL_26M_CP_FORCE_EN (1 << 19)
  364. #define AON_CLK_GEN_CGM_RTC_32K_CP_FORCE_EN (1 << 20)
  365. #define AON_CLK_GEN_CGM_APLL_31_25M_AP_FORCE_EN (1 << 21)
  366. #define AON_CLK_GEN_CGM_APLL_62_5M_AP_FORCE_EN (1 << 22)
  367. #define AON_CLK_GEN_CGM_APLL_100M_AP_FORCE_EN (1 << 23)
  368. #define AON_CLK_GEN_CGM_APLL_125M_AP_FORCE_EN (1 << 24)
  369. #define AON_CLK_GEN_CGM_APLL_167M_AP_FORCE_EN (1 << 25)
  370. #define AON_CLK_GEN_CGM_APLL_250M_AP_FORCE_EN (1 << 26)
  371. #define AON_CLK_GEN_CGM_APLL_400M_AP_FORCE_EN (1 << 27)
  372. #define AON_CLK_GEN_CGM_APLL_500M_AP_FORCE_EN (1 << 28)
  373. #define AON_CLK_GEN_CGM_XTAL_26M_AP_FORCE_EN (1 << 29)
  374. #define AON_CLK_GEN_CGM_RC_26M_AP_FORCE_EN (1 << 30)
  375. #define AON_CLK_GEN_CGM_RTC_32K_AP_FORCE_EN (1 << 31)
  376. // gate_en_sw_ctl1_cfg
  377. #define AON_CLK_GEN_CGM_XTAL_26M_RF_FORCE_EN (1 << 0)
  378. #define AON_CLK_GEN_CGM_APLL_62_5M_GNSS_FORCE_EN (1 << 1)
  379. #define AON_CLK_GEN_CGM_APLL_125M_GNSS_FORCE_EN (1 << 2)
  380. #define AON_CLK_GEN_CGM_APLL_167M_GNSS_FORCE_EN (1 << 3)
  381. #define AON_CLK_GEN_CGM_XTAL_26M_GNSS_FORCE_EN (1 << 4)
  382. #define AON_CLK_GEN_CGM_APLL_250M_PUB_FORCE_EN (1 << 5)
  383. #define AON_CLK_GEN_CGM_APLL_400M_PUB_FORCE_EN (1 << 6)
  384. #define AON_CLK_GEN_CGM_APLL_500M_PUB_FORCE_EN (1 << 7)
  385. // monitor_wait_en_status0_cfg
  386. #define AON_CLK_GEN_MONITOR_WAIT_EN_STATUS(n) (((n)&0x3f) << 0)
  387. // monitor_div_auto_en_status0_cfg
  388. #define AON_CLK_GEN_MONITOR_DIV_AUTO_EN_STATUS(n) (((n)&0xfff) << 0)
  389. // monitor_gate_auto_en_status10_cfg
  390. #define AON_CLK_GEN_MONITOR_GATE_AUTO_EN_STATUS1(n) (((n)&0xff) << 0)
  391. #endif // _AON_CLK_GEN_H_