analog_g2.h 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  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 _ANALOG_G2_H_
  13. #define _ANALOG_G2_H_
  14. // Auto generated by dtools(see dtools.txt for its version).
  15. // Don't edit it manually!
  16. #define REG_ANALOG_G2_SET_OFFSET (1024)
  17. #define REG_ANALOG_G2_CLR_OFFSET (2048)
  18. #define REG_ANALOG_G2_BASE (0x5150f000)
  19. typedef volatile struct
  20. {
  21. uint32_t analog_usb20_usb20_test_pin; // 0x00000000
  22. uint32_t analog_usb20_usb20_utmi_ctl1; // 0x00000004
  23. uint32_t analog_usb20_usb20_batter_pll; // 0x00000008
  24. uint32_t analog_usb20_usb20_utmi_ctl2; // 0x0000000c
  25. uint32_t analog_usb20_usb20_trimming; // 0x00000010
  26. uint32_t analog_usb20_reg_sel_cfg_0; // 0x00000014
  27. uint32_t __24[250]; // 0x00000018
  28. uint32_t analog_usb20_usb20_test_pin_set; // 0x00000400
  29. uint32_t analog_usb20_usb20_utmi_ctl1_set; // 0x00000404
  30. uint32_t analog_usb20_usb20_batter_pll_set; // 0x00000408
  31. uint32_t analog_usb20_usb20_utmi_ctl2_set; // 0x0000040c
  32. uint32_t __1040[1]; // 0x00000410
  33. uint32_t analog_usb20_reg_sel_cfg_0_set; // 0x00000414
  34. uint32_t __1048[250]; // 0x00000418
  35. uint32_t analog_usb20_usb20_test_pin_clr; // 0x00000800
  36. uint32_t analog_usb20_usb20_utmi_ctl1_clr; // 0x00000804
  37. uint32_t analog_usb20_usb20_batter_pll_clr; // 0x00000808
  38. uint32_t analog_usb20_usb20_utmi_ctl2_clr; // 0x0000080c
  39. uint32_t __2064[1]; // 0x00000810
  40. uint32_t analog_usb20_reg_sel_cfg_0_clr; // 0x00000814
  41. } HWP_ANALOG_G2_T;
  42. #define hwp_analogG2 ((HWP_ANALOG_G2_T *)REG_ACCESS_ADDRESS(REG_ANALOG_G2_BASE))
  43. // analog_usb20_usb20_test_pin
  44. typedef union {
  45. uint32_t v;
  46. struct
  47. {
  48. uint32_t analog_usb20_usb20_lpbk_end : 1; // [0], read only
  49. uint32_t analog_usb20_usb20_t2rcomp : 1; // [1], read only
  50. uint32_t analog_usb20_usb20_bist_mode : 5; // [6:2]
  51. uint32_t analog_usb20_usb20_testdataout : 4; // [10:7], read only
  52. uint32_t analog_usb20_usb20_testdataoutsel : 1; // [11]
  53. uint32_t analog_usb20_usb20_testaddr : 4; // [15:12]
  54. uint32_t analog_usb20_usb20_testdatain : 8; // [23:16]
  55. uint32_t analog_usb20_usb20_testclk : 1; // [24]
  56. uint32_t __31_25 : 7; // [31:25]
  57. } b;
  58. } REG_ANALOG_G2_ANALOG_USB20_USB20_TEST_PIN_T;
  59. // analog_usb20_usb20_utmi_ctl1
  60. typedef union {
  61. uint32_t v;
  62. struct
  63. {
  64. uint32_t __15_0 : 16; // [15:0]
  65. uint32_t analog_usb20_usb20_vbusvldext : 1; // [16]
  66. uint32_t analog_usb20_usb20_bypass_out_dm : 1; // [17], read only
  67. uint32_t analog_usb20_usb20_bypass_out_dp : 1; // [18], read only
  68. uint32_t analog_usb20_usb20_bypass_in_dm : 1; // [19]
  69. uint32_t analog_usb20_usb20_bypass_in_dp : 1; // [20]
  70. uint32_t analog_usb20_usb20_bypass_fs : 1; // [21]
  71. uint32_t analog_usb20_usb20_bypass_drv_dm : 1; // [22]
  72. uint32_t analog_usb20_usb20_bypass_drv_dp : 1; // [23]
  73. uint32_t analog_usb20_usb20_rxerror : 1; // [24], read only
  74. uint32_t analog_usb20_usb20_reset : 1; // [25]
  75. uint32_t analog_usb20_usb20_porn : 1; // [26]
  76. uint32_t analog_usb20_usb20_suspendm : 1; // [27]
  77. uint32_t analog_usb20_usb20_databus16_8 : 1; // [28]
  78. uint32_t __31_29 : 3; // [31:29]
  79. } b;
  80. } REG_ANALOG_G2_ANALOG_USB20_USB20_UTMI_CTL1_T;
  81. // analog_usb20_usb20_batter_pll
  82. typedef union {
  83. uint32_t v;
  84. struct
  85. {
  86. uint32_t analog_usb20_usb20_sampler_sel : 1; // [0]
  87. uint32_t analog_usb20_usb20_dmpullup : 1; // [1]
  88. uint32_t analog_usb20_usb20_rextenable : 1; // [2]
  89. uint32_t __31_3 : 29; // [31:3]
  90. } b;
  91. } REG_ANALOG_G2_ANALOG_USB20_USB20_BATTER_PLL_T;
  92. // analog_usb20_usb20_utmi_ctl2
  93. typedef union {
  94. uint32_t v;
  95. struct
  96. {
  97. uint32_t analog_usb20_usb20_sleepm : 1; // [0]
  98. uint32_t analog_usb20_usb20_txbitstuffenableh : 1; // [1]
  99. uint32_t analog_usb20_usb20_txbitstuffenable : 1; // [2]
  100. uint32_t analog_usb20_usb20_dmpulldown : 1; // [3]
  101. uint32_t analog_usb20_usb20_dppulldown : 1; // [4]
  102. uint32_t __31_5 : 27; // [31:5]
  103. } b;
  104. } REG_ANALOG_G2_ANALOG_USB20_USB20_UTMI_CTL2_T;
  105. // analog_usb20_usb20_trimming
  106. typedef union {
  107. uint32_t v;
  108. struct
  109. {
  110. uint32_t analog_usb20_usb20_tuneplls : 2; // [1:0]
  111. uint32_t analog_usb20_usb20_tuneeq : 3; // [4:2]
  112. uint32_t analog_usb20_usb20_tunesq : 4; // [8:5]
  113. uint32_t analog_usb20_usb20_tunedsc : 2; // [10:9]
  114. uint32_t analog_usb20_usb20_tuneotg : 3; // [13:11]
  115. uint32_t analog_usb20_usb20_tunerise : 2; // [15:14]
  116. uint32_t analog_usb20_usb20_tfhsres : 5; // [20:16]
  117. uint32_t analog_usb20_usb20_tfregres : 6; // [26:21]
  118. uint32_t analog_usb20_usb20_tunehsamp : 2; // [28:27]
  119. uint32_t __31_29 : 3; // [31:29]
  120. } b;
  121. } REG_ANALOG_G2_ANALOG_USB20_USB20_TRIMMING_T;
  122. // analog_usb20_reg_sel_cfg_0
  123. typedef union {
  124. uint32_t v;
  125. struct
  126. {
  127. uint32_t dbg_sel_analog_usb20_usb20_sleepm : 1; // [0]
  128. uint32_t dbg_sel_analog_usb20_usb20_dmpulldown : 1; // [1]
  129. uint32_t dbg_sel_analog_usb20_usb20_dppulldown : 1; // [2]
  130. uint32_t dbg_sel_analog_usb20_usb20_sampler_sel : 1; // [3]
  131. uint32_t dbg_sel_analog_usb20_usb20_dmpullup : 1; // [4]
  132. uint32_t dbg_sel_analog_usb20_usb20_rextenable : 1; // [5]
  133. uint32_t dbg_sel_analog_usb20_usb20_bypass_in_dm : 1; // [6]
  134. uint32_t dbg_sel_analog_usb20_usb20_bypass_fs : 1; // [7]
  135. uint32_t dbg_sel_analog_usb20_usb20_bypass_drv_dm : 1; // [8]
  136. uint32_t dbg_sel_analog_usb20_usb20_reset : 1; // [9]
  137. uint32_t dbg_sel_analog_usb20_usb20_porn : 1; // [10]
  138. uint32_t dbg_sel_analog_usb20_usb20_suspendm : 1; // [11]
  139. uint32_t __31_12 : 20; // [31:12]
  140. } b;
  141. } REG_ANALOG_G2_ANALOG_USB20_REG_SEL_CFG_0_T;
  142. // analog_usb20_usb20_test_pin
  143. #define ANALOG_G2_ANALOG_USB20_USB20_LPBK_END (1 << 0)
  144. #define ANALOG_G2_ANALOG_USB20_USB20_T2RCOMP (1 << 1)
  145. #define ANALOG_G2_ANALOG_USB20_USB20_BIST_MODE(n) (((n)&0x1f) << 2)
  146. #define ANALOG_G2_ANALOG_USB20_USB20_TESTDATAOUT(n) (((n)&0xf) << 7)
  147. #define ANALOG_G2_ANALOG_USB20_USB20_TESTDATAOUTSEL (1 << 11)
  148. #define ANALOG_G2_ANALOG_USB20_USB20_TESTADDR(n) (((n)&0xf) << 12)
  149. #define ANALOG_G2_ANALOG_USB20_USB20_TESTDATAIN(n) (((n)&0xff) << 16)
  150. #define ANALOG_G2_ANALOG_USB20_USB20_TESTCLK (1 << 24)
  151. // analog_usb20_usb20_utmi_ctl1
  152. #define ANALOG_G2_ANALOG_USB20_USB20_VBUSVLDEXT (1 << 16)
  153. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_OUT_DM (1 << 17)
  154. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_OUT_DP (1 << 18)
  155. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_IN_DM (1 << 19)
  156. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_IN_DP (1 << 20)
  157. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_FS (1 << 21)
  158. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_DRV_DM (1 << 22)
  159. #define ANALOG_G2_ANALOG_USB20_USB20_BYPASS_DRV_DP (1 << 23)
  160. #define ANALOG_G2_ANALOG_USB20_USB20_RXERROR (1 << 24)
  161. #define ANALOG_G2_ANALOG_USB20_USB20_RESET (1 << 25)
  162. #define ANALOG_G2_ANALOG_USB20_USB20_PORN (1 << 26)
  163. #define ANALOG_G2_ANALOG_USB20_USB20_SUSPENDM (1 << 27)
  164. #define ANALOG_G2_ANALOG_USB20_USB20_DATABUS16_8 (1 << 28)
  165. // analog_usb20_usb20_batter_pll
  166. #define ANALOG_G2_ANALOG_USB20_USB20_SAMPLER_SEL (1 << 0)
  167. #define ANALOG_G2_ANALOG_USB20_USB20_DMPULLUP (1 << 1)
  168. #define ANALOG_G2_ANALOG_USB20_USB20_REXTENABLE (1 << 2)
  169. // analog_usb20_usb20_utmi_ctl2
  170. #define ANALOG_G2_ANALOG_USB20_USB20_SLEEPM (1 << 0)
  171. #define ANALOG_G2_ANALOG_USB20_USB20_TXBITSTUFFENABLEH (1 << 1)
  172. #define ANALOG_G2_ANALOG_USB20_USB20_TXBITSTUFFENABLE (1 << 2)
  173. #define ANALOG_G2_ANALOG_USB20_USB20_DMPULLDOWN (1 << 3)
  174. #define ANALOG_G2_ANALOG_USB20_USB20_DPPULLDOWN (1 << 4)
  175. // analog_usb20_usb20_trimming
  176. #define ANALOG_G2_ANALOG_USB20_USB20_TUNEPLLS(n) (((n)&0x3) << 0)
  177. #define ANALOG_G2_ANALOG_USB20_USB20_TUNEEQ(n) (((n)&0x7) << 2)
  178. #define ANALOG_G2_ANALOG_USB20_USB20_TUNESQ(n) (((n)&0xf) << 5)
  179. #define ANALOG_G2_ANALOG_USB20_USB20_TUNEDSC(n) (((n)&0x3) << 9)
  180. #define ANALOG_G2_ANALOG_USB20_USB20_TUNEOTG(n) (((n)&0x7) << 11)
  181. #define ANALOG_G2_ANALOG_USB20_USB20_TUNERISE(n) (((n)&0x3) << 14)
  182. #define ANALOG_G2_ANALOG_USB20_USB20_TFHSRES(n) (((n)&0x1f) << 16)
  183. #define ANALOG_G2_ANALOG_USB20_USB20_TFREGRES(n) (((n)&0x3f) << 21)
  184. #define ANALOG_G2_ANALOG_USB20_USB20_TUNEHSAMP(n) (((n)&0x3) << 27)
  185. // analog_usb20_reg_sel_cfg_0
  186. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_SLEEPM (1 << 0)
  187. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_DMPULLDOWN (1 << 1)
  188. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_DPPULLDOWN (1 << 2)
  189. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_SAMPLER_SEL (1 << 3)
  190. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_DMPULLUP (1 << 4)
  191. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_REXTENABLE (1 << 5)
  192. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_BYPASS_IN_DM (1 << 6)
  193. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_BYPASS_FS (1 << 7)
  194. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_BYPASS_DRV_DM (1 << 8)
  195. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_RESET (1 << 9)
  196. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_PORN (1 << 10)
  197. #define ANALOG_G2_DBG_SEL_ANALOG_USB20_USB20_SUSPENDM (1 << 11)
  198. #endif // _ANALOG_G2_H_