hpm_conctl_regs.h 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. /*
  2. * Copyright (c) 2021-2023 HPMicro
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. *
  6. */
  7. #ifndef HPM_CONCTL_H
  8. #define HPM_CONCTL_H
  9. typedef struct {
  10. __RW uint32_t CTRL0; /* 0x0: */
  11. __R uint8_t RESERVED0[4]; /* 0x4 - 0x7: Reserved */
  12. __RW uint32_t CTRL2; /* 0x8: */
  13. __RW uint32_t CTRL3; /* 0xC: */
  14. __RW uint32_t CTRL4; /* 0x10: */
  15. __RW uint32_t CTRL5; /* 0x14: */
  16. } CONCTL_Type;
  17. /* Bitfield definition for register: CTRL0 */
  18. /*
  19. * ENET1_RXCLK_DLY_SEL (RW)
  20. *
  21. */
  22. #define CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_MASK (0xF8000UL)
  23. #define CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_SHIFT (15U)
  24. #define CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_SHIFT) & CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_MASK)
  25. #define CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_MASK) >> CONCTL_CTRL0_ENET1_RXCLK_DLY_SEL_SHIFT)
  26. /*
  27. * ENET1_TXCLK_DLY_SEL (RW)
  28. *
  29. */
  30. #define CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_MASK (0x7C00U)
  31. #define CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_SHIFT (10U)
  32. #define CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_SHIFT) & CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_MASK)
  33. #define CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_MASK) >> CONCTL_CTRL0_ENET1_TXCLK_DLY_SEL_SHIFT)
  34. /*
  35. * ENET0_RXCLK_DLY_SEL (RW)
  36. *
  37. */
  38. #define CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_MASK (0x3E0U)
  39. #define CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_SHIFT (5U)
  40. #define CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_SHIFT) & CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_MASK)
  41. #define CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_MASK) >> CONCTL_CTRL0_ENET0_RXCLK_DLY_SEL_SHIFT)
  42. /*
  43. * ENET0_TXCLK_DLY_SEL (RW)
  44. *
  45. */
  46. #define CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_MASK (0x1FU)
  47. #define CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_SHIFT (0U)
  48. #define CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_SHIFT) & CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_MASK)
  49. #define CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_MASK) >> CONCTL_CTRL0_ENET0_TXCLK_DLY_SEL_SHIFT)
  50. /* Bitfield definition for register: CTRL2 */
  51. /*
  52. * ENET0_LPI_IRQ_EN (RW)
  53. *
  54. * ENET0 LPI IRQ Enable
  55. */
  56. #define CONCTL_CTRL2_ENET0_LPI_IRQ_EN_MASK (0x20000000UL)
  57. #define CONCTL_CTRL2_ENET0_LPI_IRQ_EN_SHIFT (29U)
  58. #define CONCTL_CTRL2_ENET0_LPI_IRQ_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL2_ENET0_LPI_IRQ_EN_SHIFT) & CONCTL_CTRL2_ENET0_LPI_IRQ_EN_MASK)
  59. #define CONCTL_CTRL2_ENET0_LPI_IRQ_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL2_ENET0_LPI_IRQ_EN_MASK) >> CONCTL_CTRL2_ENET0_LPI_IRQ_EN_SHIFT)
  60. /*
  61. * ENET0_REFCLK_OE (RW)
  62. *
  63. */
  64. #define CONCTL_CTRL2_ENET0_REFCLK_OE_MASK (0x80000UL)
  65. #define CONCTL_CTRL2_ENET0_REFCLK_OE_SHIFT (19U)
  66. #define CONCTL_CTRL2_ENET0_REFCLK_OE_SET(x) (((uint32_t)(x) << CONCTL_CTRL2_ENET0_REFCLK_OE_SHIFT) & CONCTL_CTRL2_ENET0_REFCLK_OE_MASK)
  67. #define CONCTL_CTRL2_ENET0_REFCLK_OE_GET(x) (((uint32_t)(x) & CONCTL_CTRL2_ENET0_REFCLK_OE_MASK) >> CONCTL_CTRL2_ENET0_REFCLK_OE_SHIFT)
  68. /*
  69. * ENET0_PHY_INTF_SEL (RW)
  70. *
  71. * 000:Reserved
  72. * 001:RGMII
  73. * 100:RMII
  74. * 111:Reserved
  75. */
  76. #define CONCTL_CTRL2_ENET0_PHY_INTF_SEL_MASK (0xE000U)
  77. #define CONCTL_CTRL2_ENET0_PHY_INTF_SEL_SHIFT (13U)
  78. #define CONCTL_CTRL2_ENET0_PHY_INTF_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL2_ENET0_PHY_INTF_SEL_SHIFT) & CONCTL_CTRL2_ENET0_PHY_INTF_SEL_MASK)
  79. #define CONCTL_CTRL2_ENET0_PHY_INTF_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL2_ENET0_PHY_INTF_SEL_MASK) >> CONCTL_CTRL2_ENET0_PHY_INTF_SEL_SHIFT)
  80. /*
  81. * ENET0_FLOWCTRL (RW)
  82. *
  83. */
  84. #define CONCTL_CTRL2_ENET0_FLOWCTRL_MASK (0x1000U)
  85. #define CONCTL_CTRL2_ENET0_FLOWCTRL_SHIFT (12U)
  86. #define CONCTL_CTRL2_ENET0_FLOWCTRL_SET(x) (((uint32_t)(x) << CONCTL_CTRL2_ENET0_FLOWCTRL_SHIFT) & CONCTL_CTRL2_ENET0_FLOWCTRL_MASK)
  87. #define CONCTL_CTRL2_ENET0_FLOWCTRL_GET(x) (((uint32_t)(x) & CONCTL_CTRL2_ENET0_FLOWCTRL_MASK) >> CONCTL_CTRL2_ENET0_FLOWCTRL_SHIFT)
  88. /*
  89. * ENET0_RMII_TXCLK_SEL (RW)
  90. *
  91. * default to use internal clk.
  92. * set from pad, two option here:
  93. * internal 50MHz clock out to pad then in;
  94. * use external clock;
  95. */
  96. #define CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_MASK (0x400U)
  97. #define CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_SHIFT (10U)
  98. #define CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_SHIFT) & CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_MASK)
  99. #define CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_MASK) >> CONCTL_CTRL2_ENET0_RMII_TXCLK_SEL_SHIFT)
  100. /* Bitfield definition for register: CTRL3 */
  101. /*
  102. * ENET1_LPI_IRQ_EN (RW)
  103. *
  104. * ENET1 LPI Interrupt Enable
  105. */
  106. #define CONCTL_CTRL3_ENET1_LPI_IRQ_EN_MASK (0x20000000UL)
  107. #define CONCTL_CTRL3_ENET1_LPI_IRQ_EN_SHIFT (29U)
  108. #define CONCTL_CTRL3_ENET1_LPI_IRQ_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL3_ENET1_LPI_IRQ_EN_SHIFT) & CONCTL_CTRL3_ENET1_LPI_IRQ_EN_MASK)
  109. #define CONCTL_CTRL3_ENET1_LPI_IRQ_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL3_ENET1_LPI_IRQ_EN_MASK) >> CONCTL_CTRL3_ENET1_LPI_IRQ_EN_SHIFT)
  110. /*
  111. * ENET1_REFCLK_OE (RW)
  112. *
  113. */
  114. #define CONCTL_CTRL3_ENET1_REFCLK_OE_MASK (0x80000UL)
  115. #define CONCTL_CTRL3_ENET1_REFCLK_OE_SHIFT (19U)
  116. #define CONCTL_CTRL3_ENET1_REFCLK_OE_SET(x) (((uint32_t)(x) << CONCTL_CTRL3_ENET1_REFCLK_OE_SHIFT) & CONCTL_CTRL3_ENET1_REFCLK_OE_MASK)
  117. #define CONCTL_CTRL3_ENET1_REFCLK_OE_GET(x) (((uint32_t)(x) & CONCTL_CTRL3_ENET1_REFCLK_OE_MASK) >> CONCTL_CTRL3_ENET1_REFCLK_OE_SHIFT)
  118. /*
  119. * ENET1_PHY_INTF_SEL (RW)
  120. *
  121. */
  122. #define CONCTL_CTRL3_ENET1_PHY_INTF_SEL_MASK (0xE000U)
  123. #define CONCTL_CTRL3_ENET1_PHY_INTF_SEL_SHIFT (13U)
  124. #define CONCTL_CTRL3_ENET1_PHY_INTF_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL3_ENET1_PHY_INTF_SEL_SHIFT) & CONCTL_CTRL3_ENET1_PHY_INTF_SEL_MASK)
  125. #define CONCTL_CTRL3_ENET1_PHY_INTF_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL3_ENET1_PHY_INTF_SEL_MASK) >> CONCTL_CTRL3_ENET1_PHY_INTF_SEL_SHIFT)
  126. /*
  127. * ENET1_FLOWCTRL (RW)
  128. *
  129. */
  130. #define CONCTL_CTRL3_ENET1_FLOWCTRL_MASK (0x1000U)
  131. #define CONCTL_CTRL3_ENET1_FLOWCTRL_SHIFT (12U)
  132. #define CONCTL_CTRL3_ENET1_FLOWCTRL_SET(x) (((uint32_t)(x) << CONCTL_CTRL3_ENET1_FLOWCTRL_SHIFT) & CONCTL_CTRL3_ENET1_FLOWCTRL_MASK)
  133. #define CONCTL_CTRL3_ENET1_FLOWCTRL_GET(x) (((uint32_t)(x) & CONCTL_CTRL3_ENET1_FLOWCTRL_MASK) >> CONCTL_CTRL3_ENET1_FLOWCTRL_SHIFT)
  134. /*
  135. * ENET1_RMII_TXCLK_SEL (RW)
  136. *
  137. */
  138. #define CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_MASK (0x400U)
  139. #define CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_SHIFT (10U)
  140. #define CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_SHIFT) & CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_MASK)
  141. #define CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_MASK) >> CONCTL_CTRL3_ENET1_RMII_TXCLK_SEL_SHIFT)
  142. /* Bitfield definition for register: CTRL4 */
  143. /*
  144. * SDXC0_SYS_IRQ_EN (RW)
  145. *
  146. * system irq enable
  147. */
  148. #define CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_MASK (0x80000000UL)
  149. #define CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_SHIFT (31U)
  150. #define CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_SHIFT) & CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_MASK)
  151. #define CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_MASK) >> CONCTL_CTRL4_SDXC0_SYS_IRQ_EN_SHIFT)
  152. /*
  153. * SDXC0_WKP_IRQ_EN (RW)
  154. *
  155. * wakeup irq enable
  156. */
  157. #define CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_MASK (0x40000000UL)
  158. #define CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_SHIFT (30U)
  159. #define CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_SHIFT) & CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_MASK)
  160. #define CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_MASK) >> CONCTL_CTRL4_SDXC0_WKP_IRQ_EN_SHIFT)
  161. /*
  162. * SDXC0_CARDCLK_INV_EN (RW)
  163. *
  164. * card clock inverter enable
  165. */
  166. #define CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_MASK (0x10000000UL)
  167. #define CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_SHIFT (28U)
  168. #define CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_SHIFT) & CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_MASK)
  169. #define CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_MASK) >> CONCTL_CTRL4_SDXC0_CARDCLK_INV_EN_SHIFT)
  170. /*
  171. * SDXC0_GPR_TUNING_CARD_CLK_SEL (RW)
  172. *
  173. * for card clock DLL, default 0
  174. */
  175. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_MASK (0xF800000UL)
  176. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_SHIFT (23U)
  177. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_SHIFT) & CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_MASK)
  178. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_MASK) >> CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_SHIFT)
  179. /*
  180. * SDXC0_GPR_TUNING_STROBE_SEL (RW)
  181. *
  182. * for strobe DLL, default 7taps(1ns)
  183. */
  184. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_MASK (0x7C0000UL)
  185. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_SHIFT (18U)
  186. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_SHIFT) & CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_MASK)
  187. #define CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_MASK) >> CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_SHIFT)
  188. /*
  189. * SDXC0_GPR_STROBE_IN_ENABLE (RW)
  190. *
  191. * enable strobe clock, maybe used when update strobe DLL
  192. */
  193. #define CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_MASK (0x20000UL)
  194. #define CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_SHIFT (17U)
  195. #define CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_SHIFT) & CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_MASK)
  196. #define CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_MASK) >> CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_SHIFT)
  197. /*
  198. * SDXC0_GPR_CCLK_RX_DLY_SW_SEL (RW)
  199. *
  200. */
  201. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_MASK (0x1F000UL)
  202. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_SHIFT (12U)
  203. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_SHIFT) & CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_MASK)
  204. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_MASK) >> CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_SHIFT)
  205. /*
  206. * SDXC0_GPR_CCLK_RX_DLY_SW_FORCE (RW)
  207. *
  208. * force use sw DLL config
  209. */
  210. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_MASK (0x800U)
  211. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_SHIFT (11U)
  212. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_SET(x) (((uint32_t)(x) << CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_SHIFT) & CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_MASK)
  213. #define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_GET(x) (((uint32_t)(x) & CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_MASK) >> CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_SHIFT)
  214. /* Bitfield definition for register: CTRL5 */
  215. /*
  216. * SDXC1_SYS_IRQ_EN (RW)
  217. *
  218. * system irq enable
  219. */
  220. #define CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_MASK (0x80000000UL)
  221. #define CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_SHIFT (31U)
  222. #define CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_SHIFT) & CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_MASK)
  223. #define CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_MASK) >> CONCTL_CTRL5_SDXC1_SYS_IRQ_EN_SHIFT)
  224. /*
  225. * SDXC1_WKP_IRQ_EN (RW)
  226. *
  227. * wakeup irq enable
  228. */
  229. #define CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_MASK (0x40000000UL)
  230. #define CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_SHIFT (30U)
  231. #define CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_SHIFT) & CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_MASK)
  232. #define CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_MASK) >> CONCTL_CTRL5_SDXC1_WKP_IRQ_EN_SHIFT)
  233. /*
  234. * SDXC1_CARDCLK_INV_EN (RW)
  235. *
  236. * card clock inverter enable
  237. */
  238. #define CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_MASK (0x10000000UL)
  239. #define CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_SHIFT (28U)
  240. #define CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_SHIFT) & CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_MASK)
  241. #define CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_MASK) >> CONCTL_CTRL5_SDXC1_CARDCLK_INV_EN_SHIFT)
  242. /*
  243. * SDXC1_GPR_TUNING_CARD_CLK_SEL (RW)
  244. *
  245. */
  246. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_MASK (0xF800000UL)
  247. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_SHIFT (23U)
  248. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_SHIFT) & CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_MASK)
  249. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_MASK) >> CONCTL_CTRL5_SDXC1_GPR_TUNING_CARD_CLK_SEL_SHIFT)
  250. /*
  251. * SDXC1_GPR_TUNING_STROBE_SEL (RW)
  252. *
  253. */
  254. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_MASK (0x7C0000UL)
  255. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_SHIFT (18U)
  256. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_SHIFT) & CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_MASK)
  257. #define CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_MASK) >> CONCTL_CTRL5_SDXC1_GPR_TUNING_STROBE_SEL_SHIFT)
  258. /*
  259. * SDXC1_GPR_STROBE_IN_ENABLE (RW)
  260. *
  261. */
  262. #define CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_MASK (0x20000UL)
  263. #define CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_SHIFT (17U)
  264. #define CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_SHIFT) & CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_MASK)
  265. #define CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_MASK) >> CONCTL_CTRL5_SDXC1_GPR_STROBE_IN_ENABLE_SHIFT)
  266. /*
  267. * SDXC1_GPR_CCLK_RX_DLY_SW_SEL (RW)
  268. *
  269. */
  270. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_MASK (0x1F000UL)
  271. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_SHIFT (12U)
  272. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_SHIFT) & CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_MASK)
  273. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_MASK) >> CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_SEL_SHIFT)
  274. /*
  275. * SDXC1_GPR_CCLK_RX_DLY_SW_FORCE (RW)
  276. *
  277. */
  278. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_MASK (0x800U)
  279. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_SHIFT (11U)
  280. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_SET(x) (((uint32_t)(x) << CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_SHIFT) & CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_MASK)
  281. #define CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_GET(x) (((uint32_t)(x) & CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_MASK) >> CONCTL_CTRL5_SDXC1_GPR_CCLK_RX_DLY_SW_FORCE_SHIFT)
  282. #endif /* HPM_CONCTL_H */