Go to the documentation of this file.
52 #ifndef __GR55xx_LL_USB_H__
53 #define __GR55xx_LL_USB_H__
107 #define LL_USB_PWR_MODE_LP (0UL)
108 #define LL_USB_PWR_MODE_NORMAL (1UL)
115 #define LL_USB_ENUM_TYPE_HW (0x00000000UL)
116 #define LL_USB_ENUM_TYPE_MCU (1UL << USB_CTRL_MCU_ENUM_Pos)
123 #define LL_USB_TRX_LDO_BIAS_SEL0 (0x00000000UL)
124 #define LL_USB_TRX_LDO_BIAS_SEL1 (1UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
125 #define LL_USB_TRX_LDO_BIAS_SEL2 (2UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
126 #define LL_USB_TRX_LDO_BIAS_SEL3 (3UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
127 #define LL_USB_TRX_LDO_BIAS_SEL4 (4UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
128 #define LL_USB_TRX_LDO_BIAS_SEL5 (5UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
129 #define LL_USB_TRX_LDO_BIAS_SEL6 (6UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
130 #define LL_USB_TRX_LDO_BIAS_SEL7 (7UL << AON_PMU_USB_TRX_LDO_BIAS_SEL_Pos)
137 #define LL_USB_TRX_LDO_VSEL0 (0x00000000UL)
138 #define LL_USB_TRX_LDO_VSEL1 (1UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
139 #define LL_USB_TRX_LDO_VSEL2 (2UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
140 #define LL_USB_TRX_LDO_VSEL3 (3UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
141 #define LL_USB_TRX_LDO_VSEL4 (4UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
142 #define LL_USB_TRX_LDO_VSEL5 (5UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
143 #define LL_USB_TRX_LDO_VSEL6 (6UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
144 #define LL_USB_TRX_LDO_VSEL7 (7UL << AON_PMU_USB_TRX_LDO_VSEL_Pos)
150 #define LL_USB_XCRV_CTRL_SPEED_LOW (0x00000000UL)
151 #define LL_USB_XCRV_CTRL_SPEED_FULL (1UL << MCU_SUB_USB_XCRV_CTRL_SPEED_Pos)
157 #define LL_USB_XCRV_CTRL_RTRIMN0 (0x00000000UL)
158 #define LL_USB_XCRV_CTRL_RTRIMN1 (1UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
159 #define LL_USB_XCRV_CTRL_RTRIMN2 (2UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
160 #define LL_USB_XCRV_CTRL_RTRIMN3 (3UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
161 #define LL_USB_XCRV_CTRL_RTRIMN4 (4UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
162 #define LL_USB_XCRV_CTRL_RTRIMN5 (5UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
163 #define LL_USB_XCRV_CTRL_RTRIMN6 (6UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
164 #define LL_USB_XCRV_CTRL_RTRIMN7 (7UL << MCU_SUB_USB_XCRV_CTRL_RTRIMN_Pos)
170 #define LL_USB_XCRV_CTRL_RTRIMP0 (0x00000000UL)
171 #define LL_USB_XCRV_CTRL_RTRIMP1 (1UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
172 #define LL_USB_XCRV_CTRL_RTRIMP2 (2UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
173 #define LL_USB_XCRV_CTRL_RTRIMP3 (3UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
174 #define LL_USB_XCRV_CTRL_RTRIMP4 (4UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
175 #define LL_USB_XCRV_CTRL_RTRIMP5 (5UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
176 #define LL_USB_XCRV_CTRL_RTRIMP6 (6UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
177 #define LL_USB_XCRV_CTRL_RTRIMP7 (7UL << MCU_SUB_USB_XCRV_CTRL_RTRIMP_Pos)
183 #define LL_USB_EP_ATTR_EP1_INT (0x00000000UL)
184 #define LL_USB_EP_ATTR_EP1_ISO (1UL << USB_EP_ATTR_EP1_Pos)
185 #define LL_USB_EP_ATTR_EP1_BULK (2UL << USB_EP_ATTR_EP1_Pos)
191 #define LL_USB_EP_ATTR_EP2_INT (0x00000000UL)
192 #define LL_USB_EP_ATTR_EP2_ISO (1UL << USB_EP_ATTR_EP2_Pos)
193 #define LL_USB_EP_ATTR_EP2_BULK (2UL << USB_EP_ATTR_EP2_Pos)
199 #define LL_USB_EP_ATTR_EP3_INT (0x00000000UL)
200 #define LL_USB_EP_ATTR_EP3_ISO (1UL << USB_EP_ATTR_EP3_Pos)
201 #define LL_USB_EP_ATTR_EP3_BULK (2UL << USB_EP_ATTR_EP3_Pos)
207 #define LL_USB_INT_STAT_ALL USB_INT_STAT_ALL
208 #define LL_USB_INT_STAT_SUSPEND USB_INT_STAT_SUSPEND
209 #define LL_USB_INT_STAT_EP0_OUT_READY USB_INT_STAT_EP0_OUT_READY
210 #define LL_USB_INT_STAT_EP1_OUT_READY USB_INT_STAT_EP1_OUT_READY
211 #define LL_USB_INT_STAT_CRC16_ERR USB_INT_STAT_CRC16_ERR
212 #define LL_USB_INT_STAT_UPID_ERR USB_INT_STAT_UPID_ERR
213 #define LL_USB_INT_STAT_TIMEOUT_ERR USB_INT_STAT_TIMEOUT_ERR
214 #define LL_USB_INT_STAT_SEQ_ERR USB_INT_STAT_SEQ_ERR
215 #define LL_USB_INT_STAT_PID_CKS_ERR USB_INT_STAT_PID_CKS_ERR
216 #define LL_USB_INT_STAT_PID_CRC_ERR USB_INT_STAT_PID_CRC_ERR
217 #define LL_USB_INT_STAT_HOST_RESET USB_INT_STAT_HOST_RESET
218 #define LL_USB_INT_STAT_AHB_XFER_ERR USB_INT_STAT_AHB_XFER_ERR
219 #define LL_USB_INT_STAT_NSE_ERR USB_INT_STAT_NSE_ERR
220 #define LL_USB_INT_STAT_EP3_AHB_XFER_DONE USB_INT_STAT_EP3_AHB_XFER_DONE
221 #define LL_USB_INT_STAT_SYNC_ERR USB_INT_STAT_SYNC_ERR
222 #define LL_USB_INT_STAT_BIT_STUFF_ERR USB_INT_STAT_BIT_STUFF_ERR
223 #define LL_USB_INT_STAT_BYTE_ERR USB_INT_STAT_BYTE_ERR
224 #define LL_USB_INT_STAT_SOF USB_INT_STAT_SOF
225 #define LL_USB_INT_STAT_EP0_TX_DONE USB_INT_STAT_EP0_TX_DONE
226 #define LL_USB_INT_STAT_EP2_TX_DONE USB_INT_STAT_EP2_TX_DONE
227 #define LL_USB_INT_STAT_EP3_TX_DONE USB_INT_STAT_EP3_TX_DONE
228 #define LL_USB_INT_STAT_INTO_CONFIG USB_INT_STAT_INTO_CONFIG
229 #define LL_USB_INT_STAT_EP5_OUT_READY USB_INT_STAT_EP5_OUT_READY
230 #define LL_USB_INT_STAT_EP4_AHB_XFER_DONE USB_INT_STAT_EP4_AHB_XFER_DONE
231 #define LL_USB_INT_STAT_EP4_TX_DONE USB_INT_STAT_EP4_TX_DONE
232 #define LL_USB_INT_STAT_EP5_AHB_XFER_DONE USB_INT_STAT_EP5_AHB_XFER_DONE
233 #define LL_USB_INT_STAT_EP5_TIMER_OUT_ERR USB_INT_STAT_EP5_TIMER_OUT_ERR
239 #define LL_USB_INT_EN_ALL USB_INT_EN_ALL
240 #define LL_USB_INT_RESET_VAL USB_INT_EN_RESET_VAL
241 #define LL_USB_INT_EN_SUSPEND USB_INT_EN_SUSPEND
242 #define LL_USB_INT_EN_EP0_OUT_READY USB_INT_EN_EP0_OUT_READY
243 #define LL_USB_INT_EN_EP1_OUT_READY USB_INT_EN_EP1_OUT_READY
244 #define LL_USB_INT_EN_CRC16_ERR USB_INT_EN_CRC16_ERR
245 #define LL_USB_INT_EN_UPID_ERR USB_INT_EN_UPID_ERR
246 #define LL_USB_INT_EN_TIMEOUT_ERR USB_INT_EN_TIMEOUT_ERR
247 #define LL_USB_INT_EN_SEQ_ERR USB_INT_EN_SEQ_ERR
248 #define LL_USB_INT_EN_PID_CKS_ERR USB_INT_EN_PID_CKS_ERR
249 #define LL_USB_INT_EN_PID_CRC_ERR USB_INT_EN_PID_CRC_ERR
250 #define LL_USB_INT_EN_HOST_RESET USB_INT_EN_HOST_RESET
251 #define LL_USB_INT_EN_AHB_XFER_ERR USB_INT_EN_AHB_XFER_ERR
252 #define LL_USB_INT_EN_NSE_ERR USB_INT_EN_NSE_ERR
253 #define LL_USB_INT_EN_EP3_AHB_XFER_DONE USB_INT_EN_EP3_AHB_XFER_DONE
254 #define LL_USB_INT_EN_SYNC_ERR USB_INT_EN_SYNC_ERR
255 #define LL_USB_INT_EN_BIT_STUFF_ERR USB_INT_EN_BIT_STUFF_ERR
256 #define LL_USB_INT_EN_BYTE_ERR USB_INT_EN_BYTE_ERR
257 #define LL_USB_INT_EN_SOF USB_INT_EN_SOF
258 #define LL_USB_INT_EN_EP0_TX_DONE USB_INT_EN_EP0_TX_DONE
259 #define LL_USB_INT_EN_EP2_TX_DONE USB_INT_EN_EP2_TX_DONE
260 #define LL_USB_INT_EN_EP3_TX_DONE USB_INT_EN_EP3_TX_DONE
261 #define LL_USB_INT_EN_INTO_CONFIG USB_INT_EN_INTO_CONFIG
262 #define LL_USB_INT_EN_EP5_OUT_READY USB_INT_EN_EP5_OUT_READY
263 #define LL_USB_INT_EN_EP4_AHB_XFER_DONE USB_INT_EN_EP4_AHB_XFER_DONE
264 #define LL_USB_INT_EN_EP4_TX_DONE USB_INT_EN_EP4_TX_DONE
265 #define LL_USB_INT_EN_EP5_AHB_XFER_DONE USB_INT_EN_EP5_AHB_XFER_DONE
266 #define LL_USB_INT_EN_EP5_TIMER_OUT_ERR USB_INT_EN_EP5_TIMER_OUT_ERR
272 #define LL_USB_INT_CLR_ALL USB_INT_CLR_ALL
273 #define LL_USB_INT_CLR_SUSPEND USB_INT_CLR_SUSPEND
274 #define LL_USB_INT_CLR_EP0_OUT_READY USB_INT_CLR_EP0_OUT_READY
275 #define LL_USB_INT_CLR_EP1_OUT_READY USB_INT_CLR_EP1_OUT_READY
276 #define LL_USB_INT_CLR_CRC16_ERR USB_INT_CLR_CRC16_ERR
277 #define LL_USB_INT_CLR_UPID_ERR USB_INT_CLR_UPID_ERR
278 #define LL_USB_INT_CLR_TIMEOUT_ERR USB_INT_CLR_TIMEOUT_ERR
279 #define LL_USB_INT_CLR_SEQ_ERR USB_INT_CLR_SEQ_ERR
280 #define LL_USB_INT_CLR_PID_CKS_ERR USB_INT_CLR_PID_CKS_ERR
281 #define LL_USB_INT_CLR_PID_CRC_ERR USB_INT_CLR_PID_CRC_ERR
282 #define LL_USB_INT_CLR_HOST_RESET USB_INT_CLR_HOST_RESET
283 #define LL_USB_INT_CLR_AHB_XFER_ERR USB_INT_CLR_AHB_XFER_ERR
284 #define LL_USB_INT_CLR_NSE_ERR USB_INT_CLR_NSE_ERR
285 #define LL_USB_INT_CLR_EP3_AHB_XFER_DONE USB_INT_CLR_EP3_AHB_XFER_DONE
286 #define LL_USB_INT_CLR_SYNC_ERR USB_INT_CLR_SYNC_ERR
287 #define LL_USB_INT_CLR_BIT_STUFF_ERR USB_INT_CLR_BIT_STUFF_ERR
288 #define LL_USB_INT_CLR_BYTE_ERR USB_INT_CLR_BYTE_ERR
289 #define LL_USB_INT_CLR_SOF USB_INT_CLR_SOF
290 #define LL_USB_INT_CLR_EP0_TX_DONE USB_INT_CLR_EP0_TX_DONE
291 #define LL_USB_INT_CLR_EP2_TX_DONE USB_INT_CLR_EP2_TX_DONE
292 #define LL_USB_INT_CLR_EP3_TX_DONE USB_INT_CLR_EP3_TX_DONE
293 #define LL_USB_INT_CLR_INTO_CONFIG USB_INT_CLR_INTO_CONFIG
294 #define LL_USB_INT_CLR_EP5_OUT_READY USB_INT_CLR_EP5_OUT_READY
295 #define LL_USB_INT_CLR_EP4_AHB_XFER_DONE USB_INT_CLR_EP4_AHB_XFER_DONE
296 #define LL_USB_INT_CLR_EP4_TX_DONE USB_INT_CLR_EP4_TX_DONE
297 #define LL_USB_INT_CLR_EP5_AHB_XFER_DONE USB_INT_CLR_EP5_AHB_XFER_DONE
298 #define LL_USB_INT_CLR_EP5_TIMER_OUT_ERR USB_INT_CLR_EP5_TIMER_OUT_ERR
304 #define LL_USB_CTRL0_OUTPUT_ENDIAN_CTRL_SMALL (0x00000000UL)
305 #define LL_USB_CTRL0_OUTPUT_ENDIAN_CTRL_BIG (1UL << USB_CTRL0_OUTPUT_ENDIAN_CTRL_Pos)
311 #define LL_USB_CTRL0_INPUT_ENDIAN_CTRL_SMALL (0x00000000UL)
312 #define LL_USB_CTRL0_INPUT_ENDIAN_CTRL_BIG (1UL << USB_CTRL0_INPUT_ENDIAN_CTRL_Pos)
318 #define LL_USB_CTRL0_PROBE_SEL_PROTOCAL_STAT (0x00000000UL)
319 #define LL_USB_CTRL0_PROBE_SEL_RX_STAT (1UL << USB_CTRL0_PROBE_SEL_Pos)
320 #define LL_USB_CTRL0_PROBE_SEL_UTMI_SIGNALS (2UL << USB_CTRL0_PROBE_SEL_Pos)
321 #define LL_USB_CTRL0_PROBE_SEL_SYNC_STAT (3UL << USB_CTRL0_PROBE_SEL_Pos)
322 #define LL_USB_CTRL0_PROBE_SEL_TX_STAT (4UL << USB_CTRL0_PROBE_SEL_Pos)
323 #define LL_USB_CTRL0_PROBE_SEL_DPLL_STAT (5UL << USB_CTRL0_PROBE_SEL_Pos)
329 #define LL_USB_EP4_FIFO_WEN_DEFAULT (15UL << USB_EP4_FIFO_WR_EN_Pos)
330 #define LL_USB_EP4_FIFO_WEN_1BYTE (1UL << USB_EP4_FIFO_WR_EN_Pos)
331 #define LL_USB_EP4_FIFO_WEN_2BYTE (3UL << USB_EP4_FIFO_WR_EN_Pos)
332 #define LL_USB_EP4_FIFO_WEN_3BYTE (7UL << USB_EP4_FIFO_WR_EN_Pos)
333 #define LL_USB_EP4_FIFO_WEN_4BYTE (15UL << USB_EP4_FIFO_WR_EN_Pos)
354 #define LL_USB_WriteReg(__instance__, __REG__, __VALUE__) WRITE_REG(__instance__->__REG__, (__VALUE__))
362 #define LL_USB_ReadReg(__instance__, __REG__) READ_REG(__instance__->__REG__)
392 SET_BITS(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_LP_EN);
407 CLEAR_BITS(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_LP_EN);
422 return (READ_BITS(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_LP_EN) == (AON_PMU_USB_TRX_LDO_LP_EN));
437 SET_BITS(MCU_SUBx->USB_XCRV_LDO, MCU_SUB_USB_XCRV_LDO_VREF_TEST_EN);
452 CLEAR_BITS(MCU_SUBx->USB_XCRV_LDO, MCU_SUB_USB_XCRV_LDO_VREF_TEST_EN);
467 return (READ_BITS(MCU_SUBx->USB_XCRV_LDO, MCU_SUB_USB_XCRV_LDO_VREF_TEST_EN) == (MCU_SUB_USB_XCRV_LDO_VREF_TEST_EN));
491 MODIFY_REG(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_BIAS_SEL, value);
514 return (uint32_t)(READ_BITS(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_BIAS_SEL));
538 MODIFY_REG(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_BIAS_SEL, value);
561 return (uint32_t)(READ_BITS(AON_PMUx->USB_TRX_LDO, AON_PMU_USB_TRX_LDO_BIAS_SEL));
577 SET_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_SUSPEND_CLK_OFF);
592 CLEAR_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_SUSPEND_CLK_OFF);
607 return (READ_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_SUSPEND_CLK_OFF) == (MCU_SUB_USB_LP_CTRL_SUSPEND_CLK_OFF));
622 SET_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_PMU_LP_EN);
637 CLEAR_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_PMU_LP_EN);
652 return (READ_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_PMU_LP_EN) == (MCU_SUB_USB_LP_CTRL_PMU_LP_EN));
668 SET_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_CLK_FORCE_OFF);
683 CLEAR_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_CLK_FORCE_OFF);
698 return (READ_BITS(MCU_SUBx->USB_LP_CTRL, MCU_SUB_USB_LP_CTRL_CLK_FORCE_OFF) == (MCU_SUB_USB_LP_CTRL_CLK_FORCE_OFF));
713 SET_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SECMP_PD);
728 CLEAR_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SECMP_PD);
743 return (READ_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SECMP_PD) == (MCU_SUB_USB_XCRV_CTRL_SECMP_PD));
761 MODIFY_REG(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SPEED, speed);
778 return (uint32_t)(READ_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SPEED));
793 SET_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SUSPEND);
808 CLEAR_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SUSPEND);
823 return (READ_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_SUSPEND) == (MCU_SUB_USB_XCRV_CTRL_SUSPEND));
838 SET_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_BIAS_EN);
853 CLEAR_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_BIAS_EN);
868 return (READ_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_BIAS_EN) == (MCU_SUB_USB_XCRV_CTRL_BIAS_EN));
892 MODIFY_REG(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_RTRIMN, value);
915 return (uint32_t)(READ_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_RTRIMN));
939 MODIFY_REG(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_RTRIMP, value);
962 return (uint32_t)(READ_BITS(MCU_SUBx->USB_XCRV_CTRL, MCU_SUB_USB_XCRV_CTRL_RTRIMP));
977 SET_BITS(MCU_SUBx->USB_SW_RST, MCU_SUB_USB_SW_RST_EN);
992 CLEAR_BITS(MCU_SUBx->USB_SW_RST, MCU_SUB_USB_SW_RST_EN);
1007 return (READ_BITS(MCU_SUBx->USB_SW_RST, MCU_SUB_USB_SW_RST_EN) == (MCU_SUB_USB_SW_RST_EN));
1025 MODIFY_REG(USBx->CTRL, USB_CTRL_MCU_ENUM, type);
1042 return (uint32_t)(READ_BITS(USBx->CTRL, USB_CTRL_MCU_ENUM));
1057 SET_BITS(USBx->CTRL, USB_CTRL_EP0_OUT_DATA_RDY);
1072 CLEAR_BITS(USBx->CTRL, USB_CTRL_EP0_OUT_DATA_RDY);
1087 return (READ_BITS(USBx->CTRL, USB_CTRL_EP0_OUT_DATA_RDY) == (USB_CTRL_EP0_OUT_DATA_RDY));
1102 SET_BITS(USBx->CTRL, USB_CTRL_MCU_WAKEUP);
1117 CLEAR_BITS(USBx->CTRL, USB_CTRL_MCU_WAKEUP);
1133 SET_BITS(USBx->CTRL, USB_CTRL_DEV_REMOTE_WAKEUP);
1148 CLEAR_BITS(USBx->CTRL, USB_CTRL_DEV_REMOTE_WAKEUP);
1163 return (READ_BITS(USBx->CTRL, USB_CTRL_DEV_REMOTE_WAKEUP) == (USB_CTRL_DEV_REMOTE_WAKEUP));
1178 SET_BITS(USBx->CTRL, USB_CTRL_ADDR_STAT);
1193 CLEAR_BITS(USBx->CTRL, USB_CTRL_ADDR_STAT);
1208 return (READ_BITS(USBx->CTRL, USB_CTRL_ADDR_STAT) == (USB_CTRL_ADDR_STAT));
1223 SET_BITS(USBx->CTRL, USB_CTRL_CFG_STAT);
1238 CLEAR_BITS(USBx->CTRL, USB_CTRL_CFG_STAT);
1253 return (READ_BITS(USBx->CTRL, USB_CTRL_CFG_STAT) == (USB_CTRL_CFG_STAT));
1268 SET_BITS(USBx->CTRL, USB_CTRL_CMD_OK);
1283 CLEAR_BITS(USBx->CTRL, USB_CTRL_CMD_OK);
1298 SET_BITS(USBx->CTRL, USB_CTRL_CMD_ERR);
1313 CLEAR_BITS(USBx->CTRL, USB_CTRL_CMD_ERR);
1330 MODIFY_REG(USBx->CTRL, USB_CTRL_FUNC_ADDR, addr << USB_CTRL_FUNC_ADDR_Pos);
1346 return (uint32_t)(READ_BITS(USBx->CTRL, USB_CTRL_FUNC_ADDR) >> USB_CTRL_FUNC_ADDR_Pos);
1361 SET_BITS(USBx->CTRL, USB_CTRL_EP1_OUT_DATA_RDY);
1376 CLEAR_BITS(USBx->CTRL, USB_CTRL_EP1_OUT_DATA_RDY);
1391 return (READ_BITS(USBx->CTRL, USB_CTRL_EP1_OUT_DATA_RDY) == (USB_CTRL_EP1_OUT_DATA_RDY));
1406 SET_BITS(USBx->CTRL, USB_CTRL_EP5_OUT_DATA_RDY);
1421 CLEAR_BITS(USBx->CTRL, USB_CTRL_EP5_OUT_DATA_RDY);
1436 return (READ_BITS(USBx->CTRL, USB_CTRL_EP5_OUT_DATA_RDY) == (USB_CTRL_EP5_OUT_DATA_RDY));
1451 SET_BITS(USBx->CTRL, USB_CTRL_EP0_FIFO_SWITCH);
1466 CLEAR_BITS(USBx->CTRL, USB_CTRL_EP0_FIFO_SWITCH);
1481 return (READ_BITS(USBx->CTRL, USB_CTRL_EP0_FIFO_SWITCH) == (USB_CTRL_EP0_FIFO_SWITCH));
1497 SET_BITS(USBx->EP0_1_CTRL, USB_EP0_CTRL_DATA_RDY);
1512 CLEAR_BITS(USBx->EP0_1_CTRL, USB_EP0_CTRL_DATA_RDY);
1527 return (READ_BITS(USBx->EP0_1_CTRL, USB_EP0_CTRL_DATA_RDY) == (USB_EP0_CTRL_DATA_RDY));
1542 SET_BITS(USBx->EP0_1_CTRL, USB_EP0_CTRL_IFIFO_CLR);
1557 CLEAR_BITS(USBx->EP0_1_CTRL, USB_EP0_CTRL_IFIFO_CLR);
1572 SET_BITS(USBx->EP0_1_CTRL, USB_EP1_CTRL_IFIFO_CLR);
1587 CLEAR_BITS(USBx->EP0_1_CTRL, USB_EP1_CTRL_IFIFO_CLR);
1602 SET_BITS(USBx->EP2_CTRL, USB_EP2_CTRL_DATA_RDY);
1617 CLEAR_BITS(USBx->EP2_CTRL, USB_EP2_CTRL_DATA_RDY);
1632 return (READ_BITS(USBx->EP2_CTRL, USB_EP2_CTRL_DATA_RDY) == (USB_EP2_CTRL_DATA_RDY));
1647 SET_BITS(USBx->EP2_CTRL, USB_EP2_CTRL_IFIFO_CLR);
1662 CLEAR_BITS(USBx->EP2_CTRL, USB_EP2_CTRL_IFIFO_CLR);
1677 SET_BITS(USBx->EP3_CTRL, USB_EP3_CTRL_DATA_RDY);
1692 CLEAR_BITS(USBx->EP3_CTRL, USB_EP3_CTRL_DATA_RDY);
1707 return (READ_BITS(USBx->EP3_CTRL, USB_EP3_CTRL_DATA_RDY) == (USB_EP3_CTRL_DATA_RDY));
1722 SET_BITS(USBx->EP3_CTRL, USB_EP3_CTRL_IFIFO_CLR);
1737 CLEAR_BITS(USBx->EP3_CTRL, USB_EP3_CTRL_IFIFO_CLR);
1752 SET_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_DATA_RDY);
1767 CLEAR_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_DATA_RDY);
1782 return (READ_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_DATA_RDY) == (USB_EP4_CTRL_DATA_RDY));
1797 SET_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_IFIFO_CLR);
1812 CLEAR_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_IFIFO_CLR);
1827 SET_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_EMPTY_PACKET_EN);
1842 CLEAR_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_EMPTY_PACKET_EN);
1857 return (READ_BITS(USBx->EP4_CTRL, USB_EP4_CTRL_EMPTY_PACKET_EN) == (USB_EP4_CTRL_EMPTY_PACKET_EN));
1872 SET_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_FIFO_CLR);
1887 CLEAR_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_FIFO_CLR);
1905 MODIFY_REG(USBx->EP_ATTR, USB_EP_ATTR_EP1, attr);
1923 return (uint32_t)(READ_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP1));
1942 MODIFY_REG(USBx->EP_ATTR, USB_EP_ATTR_EP2, attr);
1960 return (uint32_t)(READ_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP2));
1979 MODIFY_REG(USBx->EP_ATTR, USB_EP_ATTR_EP3, attr);
1997 return (uint32_t)(READ_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP3));
2012 SET_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP1_HALT_MCU);
2027 CLEAR_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP1_HALT_MCU);
2042 return (READ_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP1_HALT_MCU) == (USB_EP_ATTR_EP1_HALT_MCU));
2057 SET_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP2_HALT_MCU);
2072 CLEAR_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP2_HALT_MCU);
2087 return (READ_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP2_HALT_MCU) == (USB_EP_ATTR_EP2_HALT_MCU));
2102 SET_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP3_HALT_MCU);
2117 CLEAR_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP3_HALT_MCU);
2132 return (READ_BITS(USBx->EP_ATTR, USB_EP_ATTR_EP3_HALT_MCU) == (USB_EP_ATTR_EP3_HALT_MCU));
2199 return (uint32_t)(READ_BITS(USBx->INT_STAT, flag) == flag);
2308 SET_BITS(USBx->INT_EN, mask);
2377 CLEAR_BITS(USBx->INT_EN, mask);
2446 return (READ_BITS(USBx->INT_EN, mask) == (mask));
2514 SET_BITS(USBx->INT_CLR, mask);
2531 MODIFY_REG(USBx->EP3_AHBM_RADDR, USB_EP3_AHBM_RADDR_RD_START_ADDR, addr);
2547 return (uint32_t)(READ_BITS(USBx->EP3_AHBM_RADDR, USB_EP3_AHBM_RADDR_RD_START_ADDR));
2562 SET_BITS(USBx->EP3_AHBM_CTRL, USB_EP3_AHBM_CTRL_EN);
2577 CLEAR_BITS(USBx->EP3_AHBM_CTRL, USB_EP3_AHBM_CTRL_EN);
2592 return (READ_BITS(USBx->EP3_AHBM_CTRL, USB_EP3_AHBM_CTRL_EN) == (USB_EP3_AHBM_CTRL_EN));
2609 MODIFY_REG(USBx->EP3_AHBM_CTRL, USB_EP3_AHBM_CTRL_BURST_SIZE, size << USB_EP3_AHBM_CTRL_BURST_SIZE_Pos);
2625 return (uint32_t)(READ_BITS(USBx->EP3_AHBM_CTRL, USB_EP3_AHBM_CTRL_BURST_SIZE) >> USB_EP3_AHBM_CTRL_BURST_SIZE_Pos);
2642 MODIFY_REG(USBx->EP4_AHBM_RADDR, USB_EP4_AHBM_RADDR_RD_START_ADDR, addr);
2658 return (uint32_t)(READ_BITS(USBx->EP4_AHBM_RADDR, USB_EP4_AHBM_RADDR_RD_START_ADDR));
2673 SET_BITS(USBx->EP4_AHBM_CTRL, USB_EP4_AHBM_CTRL_EN);
2688 CLEAR_BITS(USBx->EP4_AHBM_CTRL, USB_EP4_AHBM_CTRL_EN);
2703 return (READ_BITS(USBx->EP4_AHBM_CTRL, USB_EP4_AHBM_CTRL_EN) == (USB_EP4_AHBM_CTRL_EN));
2720 MODIFY_REG(USBx->EP4_AHBM_CTRL, USB_EP4_AHBM_CTRL_BURST_SIZE, size << USB_EP4_AHBM_CTRL_BURST_SIZE_Pos);
2736 return (uint32_t)(READ_BITS(USBx->EP4_AHBM_CTRL, USB_EP4_AHBM_CTRL_BURST_SIZE) >> USB_EP4_AHBM_CTRL_BURST_SIZE_Pos);
2753 MODIFY_REG(USBx->EP5_AHBM_RADDR, USB_EP5_AHBM_RADDR_RD_START_ADDR, addr);
2769 return (uint32_t)(READ_BITS(USBx->EP5_AHBM_RADDR, USB_EP5_AHBM_RADDR_RD_START_ADDR));
2784 SET_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_AHBM_EN);
2799 CLEAR_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_AHBM_EN);
2814 return (READ_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_AHBM_EN) == (USB_EP5_CTRL_AHBM_EN));
2829 SET_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_FIFO_CLR);
2844 CLEAR_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_FIFO_CLR);
2859 return (READ_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_FIFO_CLR) == (USB_EP5_CTRL_FIFO_CLR));
2874 SET_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_RX_CNT_NO_OVERWRITE);
2889 CLEAR_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_RX_CNT_NO_OVERWRITE);
2904 return (READ_BITS(USBx->EP5_CTRL, USB_EP5_CTRL_RX_CNT_NO_OVERWRITE) == (USB_EP5_CTRL_RX_CNT_NO_OVERWRITE));
2919 SET_BITS(USBx->CTRL0, USB_CTRL0_TEST_MODE);
2934 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_TEST_MODE);
2949 return (READ_BITS(USBx->CTRL0, USB_CTRL0_TEST_MODE) == (USB_CTRL0_TEST_MODE));
2964 SET_BITS(USBx->CTRL0, USB_CTRL0_DRIVE_DP);
2979 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_DRIVE_DP);
2994 return (READ_BITS(USBx->CTRL0, USB_CTRL0_DRIVE_DP) == (USB_CTRL0_DRIVE_DP));
3009 SET_BITS(USBx->CTRL0, USB_CTRL0_DRIVE_DM);
3024 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_DRIVE_DM);
3039 return (READ_BITS(USBx->CTRL0, USB_CTRL0_DRIVE_DM) == (USB_CTRL0_DRIVE_DM));
3054 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_OEB);
3069 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_OEB);
3084 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_OEB) == (USB_CTRL0_XCVR_OEB));
3099 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPU_EN);
3114 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPU_EN);
3129 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPU_EN) == (USB_CTRL0_XCVR_DP_RPU_EN));
3144 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPU_EN);
3159 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPU_EN);
3174 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPU_EN) == (USB_CTRL0_XCVR_DM_RPU_EN));
3189 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPUSW_EN);
3204 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPUSW_EN);
3219 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPUSW_EN) == (USB_CTRL0_XCVR_DP_RPUSW_EN));
3234 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPUSW_EN);
3249 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPUSW_EN);
3264 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPUSW_EN) == (USB_CTRL0_XCVR_DM_RPUSW_EN));
3279 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPD_EN);
3294 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPD_EN);
3309 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DP_RPD_EN) == (USB_CTRL0_XCVR_DP_RPD_EN));
3324 SET_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPD_EN);
3339 CLEAR_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPD_EN);
3354 return (READ_BITS(USBx->CTRL0, USB_CTRL0_XCVR_DM_RPD_EN) == (USB_CTRL0_XCVR_DM_RPD_EN));
3372 MODIFY_REG(USBx->CTRL0, USB_CTRL0_OUTPUT_ENDIAN_CTRL, mode);
3389 return (uint32_t)(READ_BITS(USBx->CTRL0, USB_CTRL0_OUTPUT_ENDIAN_CTRL));
3407 MODIFY_REG(USBx->CTRL0, USB_CTRL0_INPUT_ENDIAN_CTRL, mode);
3424 return (uint32_t)(READ_BITS(USBx->CTRL0, USB_CTRL0_INPUT_ENDIAN_CTRL));
3446 MODIFY_REG(USBx->CTRL0, USB_CTRL0_PROBE_SEL, sel);
3467 return (uint32_t)(READ_BITS(USBx->CTRL0, USB_CTRL0_PROBE_SEL));
3484 MODIFY_REG(USBx->EP3_XFER_LEN, USB_EP3_XFER_LEN, len);
3500 return (uint32_t)(READ_BITS(USBx->EP3_XFER_LEN, USB_EP3_XFER_LEN));
3517 MODIFY_REG(USBx->EP4_XFER_LEN, USB_EP4_XFER_LEN, len);
3533 return (uint32_t)(READ_BITS(USBx->EP4_XFER_LEN, USB_EP4_XFER_LEN));
3550 MODIFY_REG(USBx->EP5_XFER_LEN, USB_EP5_XFER_LEN, len);
3566 return (uint32_t)(READ_BITS(USBx->EP5_XFER_LEN, USB_EP5_XFER_LEN));
3583 MODIFY_REG(USBx->EP5_TIMER, USB_EP5_TIMER_VAL, len);
3599 return (uint32_t)(READ_BITS(USBx->EP5_TIMER, USB_EP5_TIMER_VAL));
3615 return (uint32_t)(READ_BITS(USBx->RX_CNT, USB_RX_CNT_EP0_RX_DATA_SUM));
3631 return (uint32_t)(READ_BITS(USBx->RX_CNT, USB_RX_CNT_EP1_RX_DATA_SUM) >> USB_RX_CNT_EP1_RX_DATA_SUM_Pos);
3647 return (uint32_t)(READ_BITS(USBx->EP5_RX_CNT, USB_EP5_RX_CNT));
3664 MODIFY_REG(USBx->CFG_DESC_CTRL, USB_CFG_DESC_CTRL_START, addr);
3680 return (uint32_t)(READ_BITS(USBx->CFG_DESC_CTRL, USB_CFG_DESC_CTRL_START));
3697 MODIFY_REG(USBx->CFG_DESC_CTRL, USB_CFG_DESC_CTRL_SIZE, size << USB_CFG_DESC_CTRL_SIZE_Pos);
3713 return (uint32_t)(READ_BITS(USBx->CFG_DESC_CTRL, USB_CFG_DESC_CTRL_SIZE) >> USB_CFG_DESC_CTRL_SIZE_Pos);
3730 MODIFY_REG(USBx->STR_DESC0_CTRL, USB_STR_DESC0_CTRL_START, addr);
3746 return (uint32_t)(READ_BITS(USBx->STR_DESC0_CTRL, USB_STR_DESC0_CTRL_START));
3763 MODIFY_REG(USBx->STR_DESC0_CTRL, USB_STR_DESC0_CTRL_SIZE, size << USB_STR_DESC0_CTRL_SIZE_Pos);
3779 return (uint32_t)(READ_BITS(USBx->STR_DESC0_CTRL, USB_STR_DESC0_CTRL_SIZE) >> USB_STR_DESC0_CTRL_SIZE_Pos);
3796 MODIFY_REG(USBx->STR_DESC1_CTRL, USB_STR_DESC1_CTRL_START, addr);
3812 return (uint32_t)(READ_BITS(USBx->STR_DESC1_CTRL, USB_STR_DESC1_CTRL_START));
3829 MODIFY_REG(USBx->STR_DESC1_CTRL, USB_STR_DESC1_CTRL_SIZE, size << USB_STR_DESC1_CTRL_SIZE_Pos);
3845 return (uint32_t)(READ_BITS(USBx->STR_DESC1_CTRL, USB_STR_DESC1_CTRL_SIZE) >> USB_STR_DESC1_CTRL_SIZE_Pos);
3862 MODIFY_REG(USBx->EP0_FIFO_ADDR, USB_EP0_FIFO_ADDR, value);
3878 return (uint32_t)(READ_BITS(USBx->EP0_FIFO_ADDR, USB_EP0_FIFO_ADDR));
3894 return (uint32_t)(READ_BITS(USBx->EP1_FIFO_ADDR, USB_EP1_FIFO_ADDR));
3911 MODIFY_REG(USBx->EP2_FIFO_ADDR, USB_EP2_FIFO_ADDR, value);
3928 MODIFY_REG(USBx->EP3_FIFO_ADDR, USB_EP3_FIFO_ADDR, value);
3945 MODIFY_REG(USBx->EP4_FIFO_ADDR, USB_EP4_FIFO_ADDR, value);
3961 return (uint32_t)(READ_BITS(USBx->EP5_FIFO_ADDR, USB_EP5_FIFO_ADDR));
3983 MODIFY_REG(USBx->EP4_FIFO_WR_EN, USB_EP4_FIFO_WR_EN, len);
4004 return (uint32_t)(READ_BITS(USBx->EP4_FIFO_WR_EN, USB_EP4_FIFO_WR_EN));
4021 MODIFY_REG(USBx->SRAM_ADDR, USB_SRAM_ADDR_DESC_SRAM, addr);
4038 MODIFY_REG(USBx->STR_DESC2_CTRL, USB_STR_DESC2_CTRL_START, addr);
4054 return (uint32_t)(READ_BITS(USBx->STR_DESC2_CTRL, USB_STR_DESC2_CTRL_START));
4071 MODIFY_REG(USBx->STR_DESC2_CTRL, USB_STR_DESC2_CTRL_SIZE, size << USB_STR_DESC2_CTRL_SIZE_Pos);
4087 return (uint32_t)(READ_BITS(USBx->STR_DESC2_CTRL, USB_STR_DESC1_CTRL_SIZE) >> USB_STR_DESC2_CTRL_SIZE_Pos);
4104 MODIFY_REG(USBx->STR_DESC3_CTRL, USB_STR_DESC3_CTRL_START, addr);
4120 return (uint32_t)(READ_BITS(USBx->STR_DESC3_CTRL, USB_STR_DESC3_CTRL_START));
4137 MODIFY_REG(USBx->STR_DESC3_CTRL, USB_STR_DESC3_CTRL_SIZE, size << USB_STR_DESC3_CTRL_SIZE_Pos);
4153 return (uint32_t)(READ_BITS(USBx->STR_DESC3_CTRL, USB_STR_DESC1_CTRL_SIZE) >> USB_STR_DESC3_CTRL_SIZE_Pos);
__STATIC_INLINE void ll_usb_disable_clr_ep0_fifo(usb_regs_t *USBx)
Disable Clear USB EP0 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_get_xcrv_ldo33_bias(aon_pmu_regs_t *AON_PMUx)
Get USB Transceiver LDO_3.3V vout trimming signal.
__STATIC_INLINE uint32_t ll_usb_get_func_addr(usb_regs_t *USBx)
Get USB function address.
__STATIC_INLINE void ll_usb_enable_clr_ep2_fifo(usb_regs_t *USBx)
Enable Clear USB EP2 IN FIFO.
__STATIC_INLINE void ll_usb_disable_clr_ep3_fifo(usb_regs_t *USBx)
Disable Clear USB EP3 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep0_fifo_switch(usb_regs_t *USBx)
Check if USB EP0 FIFO switch is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_ldo33_vref_test(mcu_sub_regs_t *MCU_SUBx)
Check if USB Transceiver LDO_3.3V internal vref probe to test is enabled.
__STATIC_INLINE void ll_usb_disable_ep4_ahb_m(usb_regs_t *USBx)
Disable USB ep4 AHB master.
__STATIC_INLINE uint32_t ll_usb_get_str_desc2_ctrl_start(usb_regs_t *USBx)
Get USB string descriptor(302) start address.
__STATIC_INLINE void ll_usb_enable_clr_ep0_fifo(usb_regs_t *USBx)
Enable Clear USB EP0 IN FIFO.
__STATIC_INLINE void ll_usb_set_str_desc2_ctrl_size(usb_regs_t *USBx, uint32_t size)
Set USB string descriptor(302) size.
__STATIC_INLINE uint32_t ll_usb_get_str_desc0_ctrl_size(usb_regs_t *USBx)
Get USB Language ID descriptor size.
__STATIC_INLINE void ll_usb_enable_ep1_halt_mcu(usb_regs_t *USBx)
Enable USB halt EP1.
__STATIC_INLINE void ll_usb_disable_dev_remote_wakeup(usb_regs_t *USBx)
Disable USB REMOTE_WAKEUP feature.
__STATIC_INLINE uint32_t ll_usb_get_str_desc3_ctrl_start(usb_regs_t *USBx)
Get USB string descriptor(303) start address.
__STATIC_INLINE void ll_usb_enable_xcvr_ldo33_vref_test(mcu_sub_regs_t *MCU_SUBx)
Enable USB Transceiver LDO_3.3V internal vref probe to test.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep5_fifo_clr(usb_regs_t *USBx)
Check if USB ep5 OUT FIFO clear is enabled.
__STATIC_INLINE void ll_usb_set_xcrv_speed(mcu_sub_regs_t *MCU_SUBx, uint32_t speed)
Set USB Transceiver speed.
__STATIC_INLINE void ll_usb_enable_ep4_empty_packet(usb_regs_t *USBx)
Enable USB EP4 empty packet.
__STATIC_INLINE void ll_usb_set_str_desc1_ctrl_start(usb_regs_t *USBx, uint32_t addr)
Set USB string descriptor start address.
__STATIC_INLINE void ll_usb_set_ep3_ahb_m_rd_start_addr(usb_regs_t *USBx, uint32_t addr)
Set USB ep3 AHB master read start address.
__STATIC_INLINE void ll_usb_enable_addr_stat(usb_regs_t *USBx)
Enable USB is in addressed status.
__STATIC_INLINE uint32_t ll_usb_get_str_desc1_ctrl_size(usb_regs_t *USBx)
Get USB string descriptor size.
__STATIC_INLINE void ll_usb_enable_clr_ep5_fifo(usb_regs_t *USBx)
Enable Clear USB EP4 IN FIFO.
__STATIC_INLINE void ll_usb_enable_ep3_halt_mcu(usb_regs_t *USBx)
Enable USB halt EP3.
__STATIC_INLINE uint32_t ll_usb_get_ep3_attr(usb_regs_t *USBx)
Get USB Endpoint 1 attribute.
__STATIC_INLINE void ll_usb_disable_clr_ep4_fifo(usb_regs_t *USBx)
Disable Clear USB EP4 IN FIFO.
__STATIC_INLINE void ll_usb_disable_xcvr_dp_rpu(usb_regs_t *USBx)
Disable USB drive DP pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_disable_ep5_rx_cnt_no_overwrite(usb_regs_t *USBx)
USB ep5 RX data sum can be overwritten.
__STATIC_INLINE uint32_t ll_usb_get_ep5_rx_data_sum(usb_regs_t *USBx)
Get USB received data sum in the EP5 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_is_enabled_drive_dm(usb_regs_t *USBx)
Check if USB tdrive DM during transceiver test mode is enabled.
__STATIC_INLINE uint32_t ll_usb_get_it_flag(usb_regs_t *USBx)
get USB interrupt flag
__STATIC_INLINE void ll_usb_set_ep3_xfer_len(usb_regs_t *USBx, uint32_t len)
Set USB ep3 DMA total transfer length.
__STATIC_INLINE void ll_usb_enable_clr_ep1_fifo(usb_regs_t *USBx)
Enable Clear USB EP1 OUT FIFO.
__STATIC_INLINE void ll_usb_enable_xcvr_ldo33_lp(aon_pmu_regs_t *AON_PMUx)
Enable USB Transceiver LDO_3.3V low power mode.
__STATIC_INLINE void ll_usb_enable_ep5_out_dat_rdy(usb_regs_t *USBx)
Enable USB OUT data in EP5 is ready.
__STATIC_INLINE void ll_usb_enable_xcvr_dp_rpusw(usb_regs_t *USBx)
Enable USB drive DP SW pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_test_mode(usb_regs_t *USBx)
Enable USB test mode.
void ll_usb_struct_init(ll_usb_init_t *p_usb_init)
Set each field of a ll_usb_init_t type structure to default value.
__STATIC_INLINE uint32_t ll_usb_get_probe_sel(usb_regs_t *USBx)
Get USB probe select signal.
__STATIC_INLINE void ll_usb_set_str_desc1_ctrl_size(usb_regs_t *USBx, uint32_t size)
Set USB string descriptor size.
__STATIC_INLINE void ll_usb_disable_clr_ep5_fifo(usb_regs_t *USBx)
Disable Clear USB EP4 IN FIFO.
__STATIC_INLINE void ll_usb_enable_pmu_lp(mcu_sub_regs_t *MCU_SUBx)
Enable USB low power.
__STATIC_INLINE void ll_usb_disable_ep5_out_dat_rdy(usb_regs_t *USBx)
Disable USB OUT data in EP1 is ready.
__STATIC_INLINE uint32_t ll_usb_get_usb_ep1_fifo(usb_regs_t *USBx)
Get USB endpoint 1 FIFO value.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep0_dat_rdy(usb_regs_t *USBx)
Check if USB has sent all data to EP0 IN FIFO is enabled.
__STATIC_INLINE void ll_usb_set_ep3_attr(usb_regs_t *USBx, uint32_t attr)
Set USB Endpoint 3 attribute.
__STATIC_INLINE void ll_usb_disable_xcvr_ldo33_vref_test(mcu_sub_regs_t *MCU_SUBx)
Disable USB Transceiver LDO_3.3V internal vref probe to test.
__STATIC_INLINE void ll_usb_set_output_endian_mode(usb_regs_t *USBx, uint32_t mode)
Set USB output endian mode.
#define LL_USB_INT_STAT_ALL
__STATIC_INLINE void ll_usb_disable_mcu_wakeup(usb_regs_t *USBx)
Disable USB MCU remote wakeup USB host.
__STATIC_INLINE void ll_usb_disable_ep4_dat_rdy(usb_regs_t *USBx)
Disable USB has sent all data to EP4 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_get_ep5_xfer_len(usb_regs_t *USBx)
Get USB ep5 DMA total transfer length.
__STATIC_INLINE void ll_usb_disable_ep2_dat_rdy(usb_regs_t *USBx)
Disable USB has sent all data to EP2 IN FIFO.
void ll_usb_enable(void)
Enable USB interrupt.
__STATIC_INLINE void ll_usb_set_ep4_ahb_m_rd_start_addr(usb_regs_t *USBx, uint32_t addr)
Set USB ep4 AHB master read start address.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep3_dat_rdy(usb_regs_t *USBx)
Check if USB has sent all data to EP3 IN FIFO is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_suspend(mcu_sub_regs_t *MCU_SUBx)
Check if USB Transceiver suspend is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_dm_rpd(usb_regs_t *USBx)
Check if USB drive DM pull down during transceiver test mode is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_cfg_stat(usb_regs_t *USBx)
Check if USB is in addressed status is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_dp_rpu(usb_regs_t *USBx)
Check if USB drive DP pullup during transceiver test mode is enabled.
__STATIC_INLINE void ll_usb_disable_xcvr_dm_rpu(usb_regs_t *USBx)
Disable USB drive DM pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_cfg_stat(usb_regs_t *USBx)
Enable USB is in addressed status.
__STATIC_INLINE void ll_usb_enable_xcvr_secmp_pd(mcu_sub_regs_t *MCU_SUBx)
Enable USB Transceiver single end comparator power down.
__STATIC_INLINE void ll_usb_enable_ep0_out_dat_rdy(usb_regs_t *USBx)
Enable USB OUT data in EP0 is ready.
__STATIC_INLINE void ll_usb_set_cfg_desc_ctrl_size(usb_regs_t *USBx, uint32_t size)
Set USB config descriptor size.
__STATIC_INLINE void ll_usb_enable_ep5_fifo_clr(usb_regs_t *USBx)
Enable USB ep5 OUT FIFO clear.
__STATIC_INLINE void ll_usb_set_cfg_desc_ctrl_start(usb_regs_t *USBx, uint32_t addr)
Set USB config descriptor start address.
__STATIC_INLINE uint32_t ll_usb_is_active_it_flag(usb_regs_t *USBx, uint32_t flag)
Check USB interrupt flag is actived.
__STATIC_INLINE void ll_usb_set_ep4_ahb_m_burst_size(usb_regs_t *USBx, uint32_t size)
Set USB ep4 AHB master burst length;(default 64)
__STATIC_INLINE void ll_usb_disable_it(usb_regs_t *USBx, uint32_t mask)
Disable USB interrupt.
__STATIC_INLINE void ll_usb_disable_ep0_dat_rdy(usb_regs_t *USBx)
Disable USB has sent all data to EP0 IN FIFO.
__STATIC_INLINE void ll_usb_enable_ep4_dat_rdy(usb_regs_t *USBx)
Enable USB has sent all data to EP4 IN FIFO.
__STATIC_INLINE void ll_usb_disable_ep3_dat_rdy(usb_regs_t *USBx)
Disable USB has sent all data to EP3 IN FIFO.
__STATIC_INLINE void ll_usb_enable_drive_dp(usb_regs_t *USBx)
Enable USB drive DP during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_get_ep0_rx_data_sum(usb_regs_t *USBx)
Get USB received data sum in the EP0 IN FIFO.
__STATIC_INLINE void ll_usb_disable_ep5_fifo_clr(usb_regs_t *USBx)
Disable USB ep5 OUT FIFO clear.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_dm_rpusw(usb_regs_t *USBx)
Check if USB drive DM SW pullup during transceiver test mode is enabled.
__STATIC_INLINE void ll_usb_enable_ep1_out_dat_rdy(usb_regs_t *USBx)
Enable USB OUT data in EP1 is ready.
__STATIC_INLINE void ll_usb_disable_ep2_halt_mcu(usb_regs_t *USBx)
Disable USB halt EP2.
__STATIC_INLINE void ll_usb_disable_xcvr_ldo33_lp(aon_pmu_regs_t *AON_PMUx)
Disable USB Transceiver LDO_3.3V low power mode.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep4_ahb_m(usb_regs_t *USBx)
Check if USB ep4 AHB master is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep4_dat_rdy(usb_regs_t *USBx)
Check if USB has sent all data to EP4 IN FIFO is enabled.
__STATIC_INLINE void ll_usb_disable_ep0_out_dat_rdy(usb_regs_t *USBx)
Disable USB OUT data in EP0 is ready.
__STATIC_INLINE void ll_usb_enable_xcvr_dm_rpusw(usb_regs_t *USBx)
Enable USB drive DM SW pullup during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_get_ep2_attr(usb_regs_t *USBx)
Get USB Endpoint 2 attribute.
__STATIC_INLINE void ll_usb_disable_ep0_fifo_switch(usb_regs_t *USBx)
Disable USB EP0 FIFO switch.
__STATIC_INLINE void ll_usb_set_usb_ep2_fifo(usb_regs_t *USBx, uint32_t value)
Set USB endpoint 2 FIFO value.
__STATIC_INLINE uint32_t ll_usb_get_str_desc2_ctrl_size(usb_regs_t *USBx)
Get USB string descriptor(302) size.
__STATIC_INLINE void ll_usb_set_xcrv_ldo33_VSEL(aon_pmu_regs_t *AON_PMUx, uint32_t value)
Set USB Transceiver LDO_3.3V offer XCVR's current.
__STATIC_INLINE uint32_t ll_usb_get_enum_type(usb_regs_t *USBx)
Get USB enumeration type.
__STATIC_INLINE void ll_usb_set_ep5_xfer_len(usb_regs_t *USBx, uint32_t len)
Set USB ep5 DMA total transfer length.
__STATIC_INLINE void ll_usb_set_ep1_attr(usb_regs_t *USBx, uint32_t attr)
Set USB Endpoint 1 attribute.
__STATIC_INLINE void ll_usb_disable_xcvr_bias(mcu_sub_regs_t *MCU_SUBx)
Disable USB Transceiver bias.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_dm_rpu(usb_regs_t *USBx)
Check if USB drive DM pullup during transceiver test mode is enabled.
__STATIC_INLINE void ll_usb_set_usb_ep4_fifo(usb_regs_t *USBx, uint32_t value)
Set USB endpoint 4 FIFO value.
__STATIC_INLINE void ll_usb_enable_ep0_dat_rdy(usb_regs_t *USBx)
Enable USB has sent all data to EP0 IN FIFO.
__STATIC_INLINE void ll_usb_set_str_desc2_ctrl_start(usb_regs_t *USBx, uint32_t addr)
Set USB string descriptor(302) start address.
__STATIC_INLINE void ll_usb_enable_ep2_dat_rdy(usb_regs_t *USBx)
Enable USB has sent all data to EP2 IN FIFO.
__STATIC_INLINE void ll_usb_enable_clr_ep4_fifo(usb_regs_t *USBx)
Enable Clear USB EP4 IN FIFO.
__STATIC_INLINE void ll_usb_disable_ep1_out_dat_rdy(usb_regs_t *USBx)
Disable USB OUT data in EP1 is ready.
__STATIC_INLINE void ll_usb_disable_ep5_ahb_m(usb_regs_t *USBx)
Disable USB ep5 AHB master.
__STATIC_INLINE void ll_usb_set_func_addr(usb_regs_t *USBx, uint32_t addr)
Set USB function address.
__STATIC_INLINE uint32_t ll_usb_get_str_desc1_ctrl_start(usb_regs_t *USBx)
Get USB string descriptor start address.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep0_out_dat_rdy(usb_regs_t *USBx)
Check if USB OUT data in EP0 is ready is enabled.
__STATIC_INLINE uint32_t ll_usb_get_ep4_fifo_wr_en(usb_regs_t *USBx)
Get USB ep4 FIFO write byte enable value.
LL USB init structures definition.
__STATIC_INLINE uint32_t ll_usb_is_enabled_test_mode(usb_regs_t *USBx)
Check if USB test mode is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep3_halt_mcu(usb_regs_t *USBx)
Check if USB halt EP3 is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_dp_rpusw(usb_regs_t *USBx)
Check if USB drive DP SW pullup during transceiver test mode is enabled.
__STATIC_INLINE void ll_usb_enable_cmd_err(usb_regs_t *USBx)
Enable MCU interpret USB device error.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep4_empty_packet(usb_regs_t *USBx)
Check if USB EP4 empty packet is enabled.
__STATIC_INLINE void ll_usb_enable_xcvr_suspend(mcu_sub_regs_t *MCU_SUBx)
Enable USB Transceiver suspend.
__STATIC_INLINE uint32_t ll_usb_get_xcrv_rtrimn(mcu_sub_regs_t *MCU_SUBx)
Get USB Transceiver D- output impedance trim.
error_status_t ll_usb_init(usb_regs_t *USBx, ll_usb_init_t *p_usb_init)
Initialize USB registers according to the specified parameters in p_usb_init.
__STATIC_INLINE uint32_t ll_usb_get_ep3_xfer_len(usb_regs_t *USBx)
Get USB ep3 DMA total transfer length.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep5_out_dat_rdy(usb_regs_t *USBx)
Check if USB OUT data in EP1 is ready is enabled.
__STATIC_INLINE void ll_usb_enable_ep4_ahb_m(usb_regs_t *USBx)
Enable USB ep4 AHB master.
__STATIC_INLINE void ll_usb_enable_drive_dm(usb_regs_t *USBx)
Enable USB drive DM during transceiver test mode.
__STATIC_INLINE void ll_usb_disable_xcvr_dp_rpd(usb_regs_t *USBx)
Disable USB drive DP pull down during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_is_enabled_drive_dp(usb_regs_t *USBx)
Check if USB tdrive DP during transceiver test mode is enabled.
__STATIC_INLINE void ll_usb_enable_ep5_rx_cnt_no_overwrite(usb_regs_t *USBx)
USB ep5 RX data sum can't be overwritten.
__STATIC_INLINE uint32_t ll_usb_get_ep3_ahb_m_rd_start_addr(usb_regs_t *USBx)
Get USB ep3 AHB master read start address.
__STATIC_INLINE void ll_usb_set_input_endian_mode(usb_regs_t *USBx, uint32_t mode)
Set USB input endian mode.
__STATIC_INLINE uint32_t ll_usb_get_ep1_attr(usb_regs_t *USBx)
Get USB Endpoint 1 attribute.
__STATIC_INLINE uint32_t ll_usb_get_ep4_ahb_m_rd_start_addr(usb_regs_t *USBx)
Get USB ep4 AHB master read start address.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep1_halt_mcu(usb_regs_t *USBx)
Check if USB halt EP1 is enabled.
__STATIC_INLINE void ll_usb_enable_ep0_fifo_switch(usb_regs_t *USBx)
Enable USB EP0 FIFO switch.
__STATIC_INLINE void ll_usb_disable_ep3_halt_mcu(usb_regs_t *USBx)
Disable USB halt EP3.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_dp_rpd(usb_regs_t *USBx)
Check if USB drive DP pull down during transceiver test mode is enabled.
void ll_usb_disable(void)
Disable USB interrupt.
__STATIC_INLINE uint32_t ll_usb_get_ep3_ahb_m_burst_size(usb_regs_t *USBx)
Get USB ep3 AHB master burst length;(default 64)
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep3_ahb_m(usb_regs_t *USBx)
Check if USB ep3 AHB master is enabled.
__STATIC_INLINE void ll_usb_disable_suspend_clk_off(mcu_sub_regs_t *MCU_SUBx)
Disable Turn off USB clock during USB suspend.
__STATIC_INLINE void ll_usb_set_str_desc3_ctrl_start(usb_regs_t *USBx, uint32_t addr)
Set USB string descriptor(303) start address.
__STATIC_INLINE uint32_t ll_usb_get_xcrv_rtrimp(mcu_sub_regs_t *MCU_SUBx)
Get USB Transceiver D+ output impedance trim.
__STATIC_INLINE void ll_usb_disable_test_mode(usb_regs_t *USBx)
Disable USB test mode.
__STATIC_INLINE void ll_usb_set_xcrv_rtrimn(mcu_sub_regs_t *MCU_SUBx, uint32_t value)
Set USB Transceiver D- output impedance trim.
__STATIC_INLINE void ll_usb_disable_addr_stat(usb_regs_t *USBx)
Disable USB is in addressed status.
__STATIC_INLINE uint32_t ll_usb_get_usb_ep5_fifo(usb_regs_t *USBx)
Get USB endpoint 5 FIFO value.
__STATIC_INLINE void ll_usb_disable_sw_reset(mcu_sub_regs_t *MCU_SUBx)
Disable USB software reset.
__STATIC_INLINE void ll_usb_disable_xcvr_oeb(usb_regs_t *USBx)
Disable USB drive transceiver output enable bar during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep2_dat_rdy(usb_regs_t *USBx)
Check if USB has sent all data to EP2 IN FIFO is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep5_rx_cnt_no_overwrite(usb_regs_t *USBx)
Check if USB ep5 RX data sum can't be overwritten is enabled.
__STATIC_INLINE void ll_usb_set_str_desc3_ctrl_size(usb_regs_t *USBx, uint32_t size)
Set USB string descriptor(303) size.
__STATIC_INLINE void ll_usb_disable_cfg_stat(usb_regs_t *USBx)
Disable USB is in addressed status.
__STATIC_INLINE uint32_t ll_usb_get_ep5_ahb_m_rd_start_addr(usb_regs_t *USBx)
Get USB ep5 AHB master read start address.
__STATIC_INLINE void ll_usb_set_usb_ep3_fifo(usb_regs_t *USBx, uint32_t value)
Set USB endpoint 3 FIFO value.
__STATIC_INLINE void ll_usb_enable_it(usb_regs_t *USBx, uint32_t mask)
Enable USB interrupt.
__STATIC_INLINE uint32_t ll_usb_get_ep4_xfer_len(usb_regs_t *USBx)
Get USB ep4 DMA total transfer length.
__STATIC_INLINE void ll_usb_disable_clk_force_off(mcu_sub_regs_t *MCU_SUBx)
Disable USB clock force off.
__STATIC_INLINE void ll_usb_disable_xcvr_dm_rpusw(usb_regs_t *USBx)
Disable USB drive DM SW pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_clk_force_off(mcu_sub_regs_t *MCU_SUBx)
Enable USB clock force off.
__STATIC_INLINE void ll_usb_disable_ep3_ahb_m(usb_regs_t *USBx)
Disable USB ep3 AHB master.
__STATIC_INLINE uint32_t ll_usb_get_cfg_desc_ctrl_size(usb_regs_t *USBx)
Get USB config descriptor size.
__STATIC_INLINE void ll_usb_set_ep3_ahb_m_burst_size(usb_regs_t *USBx, uint32_t size)
Set USB ep3 AHB master burst length;(default 64)
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_oeb(usb_regs_t *USBx)
Check if USB drive transceiver output enable bar during transceiver test mode is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_dev_remote_wakeup(usb_regs_t *USBx)
Check if USB REMOTE_WAKEUP feature is enabled.
__STATIC_INLINE void ll_usb_set_ep5_ahb_m_rd_start_addr(usb_regs_t *USBx, uint32_t addr)
Set USB ep5 AHB master read start address.
__STATIC_INLINE void ll_usb_disable_xcvr_suspend(mcu_sub_regs_t *MCU_SUBx)
Disable USB Transceiver suspend.
__STATIC_INLINE void ll_usb_enable_xcvr_bias(mcu_sub_regs_t *MCU_SUBx)
Enable USB Transceiver bias.
__STATIC_INLINE void ll_usb_set_usb_enum_type(usb_regs_t *USBx, uint32_t type)
Set USB enumeration type.
__STATIC_INLINE void ll_usb_enable_xcvr_oeb(usb_regs_t *USBx)
Enable USB drive transceiver output enable bar during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_cmd_ok(usb_regs_t *USBx)
Enable MCU interpret USB device ok.
__STATIC_INLINE uint32_t ll_usb_is_enabled_suspend_clk_off(mcu_sub_regs_t *MCU_SUBx)
Check if Turn off USB clock during USB suspend is enabled.
__STATIC_INLINE void ll_usb_enable_ep3_ahb_m(usb_regs_t *USBx)
Enable USB ep3 AHB master.
__STATIC_INLINE void ll_usb_clear_it(usb_regs_t *USBx, uint32_t mask)
Clear USB interrupt.
__STATIC_INLINE void ll_usb_disable_xcvr_secmp_pd(mcu_sub_regs_t *MCU_SUBx)
Disable USB Transceiver single end comparator power down.
__STATIC_INLINE void ll_usb_set_str_desc0_ctrl_start(usb_regs_t *USBx, uint32_t addr)
Set USB Language ID descriptor start address.
__STATIC_INLINE void ll_usb_disable_ep1_halt_mcu(usb_regs_t *USBx)
Disable USB halt EP1.
__STATIC_INLINE void ll_usb_set_xcrv_rtrimp(mcu_sub_regs_t *MCU_SUBx, uint32_t value)
Set USB Transceiver D+ output impedance trim.
__STATIC_INLINE void ll_usb_disable_cmd_err(usb_regs_t *USBx)
Disable MCU interpret USB device error.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_bias(mcu_sub_regs_t *MCU_SUBx)
Check if USB Transceiver bias is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_pmu_lp(mcu_sub_regs_t *MCU_SUBx)
Check if USB low power is enabled.
__STATIC_INLINE uint32_t ll_usb_get_input_endian_mode(usb_regs_t *USBx)
Get USB input endian mode.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_ldo33_lp(aon_pmu_regs_t *AON_PMUx)
Check if USB Transceiver LDO_3.3V low power mode is enabled.
__STATIC_INLINE void ll_usb_set_ep4_fifo_wr_en(usb_regs_t *USBx, uint32_t len)
Set USB ep4 FIFO write byte enable value.
__STATIC_INLINE uint32_t ll_usb_enabled_clk_force_off_is(mcu_sub_regs_t *MCU_SUBx)
Check if USB clock force off is enabled.
__STATIC_INLINE void ll_usb_disable_clr_ep2_fifo(usb_regs_t *USBx)
Disable Clear USB EP2 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_is_enabled_it(usb_regs_t *USBx, uint32_t mask)
Check if USB interrupt is enabled.
__STATIC_INLINE uint32_t ll_usb_get_cfg_desc_ctrl_start(usb_regs_t *USBx)
Get USB config descriptor start address.
__STATIC_INLINE void ll_usb_enable_ep5_ahb_m(usb_regs_t *USBx)
Enable USB ep5 AHB master.
__STATIC_INLINE void ll_usb_set_usb_ep0_fifo(usb_regs_t *USBx, uint32_t value)
Set USB endpoint 0 FIFO address.
__STATIC_INLINE void ll_usb_enable_ep3_dat_rdy(usb_regs_t *USBx)
Enable USB has sent all data to EP3 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_is_enabled_sw_reset(mcu_sub_regs_t *MCU_SUBx)
Check if USB software reset is enabled.
__STATIC_INLINE void ll_usb_set_ep2_attr(usb_regs_t *USBx, uint32_t attr)
Set USB Endpoint 2 attribute.
__STATIC_INLINE void ll_usb_disable_xcvr_dp_rpusw(usb_regs_t *USBx)
Disable USB drive DP SW pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_xcvr_dm_rpd(usb_regs_t *USBx)
Enable USB drive DM pull down during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_is_enabled_xcvr_secmp_pd(mcu_sub_regs_t *MCU_SUBx)
Check if USB Transceiver single end comparator power down is enabled.
__STATIC_INLINE uint32_t ll_usb_get_ep5_timer_val(usb_regs_t *USBx)
Get USB ep5 DMA total transfer length.
__STATIC_INLINE void ll_usb_disable_drive_dp(usb_regs_t *USBx)
Disable USB drive DP during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_sw_reset(mcu_sub_regs_t *MCU_SUBx)
Enable USB software reset.
__STATIC_INLINE uint32_t ll_usb_get_xcrv_ldo33_VSEL(aon_pmu_regs_t *AON_PMUx)
Get USB Transceiver LDO_3.3V offer XCVR's current.
__STATIC_INLINE uint32_t ll_usb_get_str_desc3_ctrl_size(usb_regs_t *USBx)
Get USB string descriptor(303) size.
__STATIC_INLINE void ll_usb_disable_xcvr_dm_rpd(usb_regs_t *USBx)
Disable USB drive DM pull down during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_dev_remote_wakeup(usb_regs_t *USBx)
Enable USB REMOTE_WAKEUP feature.
__STATIC_INLINE void ll_usb_enable_clr_ep3_fifo(usb_regs_t *USBx)
Enable Clear USB EP3 IN FIFO.
__STATIC_INLINE void ll_usb_set_ep5_timer_val(usb_regs_t *USBx, uint32_t len)
Set USB ep5 DMA recieve data time out value.
error_status_t ll_usb_deinit(usb_regs_t *USBx)
De-initialize USB registers (Registers restored to their default values).
__STATIC_INLINE uint32_t ll_usb_get_usb_ep0_fifo(usb_regs_t *USBx)
Get USB endpoint 0 FIFO value.
__STATIC_INLINE void ll_usb_set_ep4_xfer_len(usb_regs_t *USBx, uint32_t len)
Set USB ep4 DMA total transfer length.
__STATIC_INLINE uint32_t ll_usb_get_xcrv_speed(mcu_sub_regs_t *MCU_SUBx)
Get USB Transceiver speed.
__STATIC_INLINE void ll_usb_disable_cmd_ok(usb_regs_t *USBx)
Disable MCU interpret USB device ok.
__STATIC_INLINE void ll_usb_enable_xcvr_dp_rpd(usb_regs_t *USBx)
Enable USB drive DP pull down during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep1_out_dat_rdy(usb_regs_t *USBx)
Check if USB OUT data in EP1 is ready is enabled.
__STATIC_INLINE void ll_usb_disable_drive_dm(usb_regs_t *USBx)
Disable USB drive DM during transceiver test mode.
__STATIC_INLINE uint32_t ll_usb_get_ep1_rx_data_sum(usb_regs_t *USBx)
Get USB received data sum in the EP1 IN FIFO.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep5_ahb_m(usb_regs_t *USBx)
Check if USB ep5 AHB master is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_ep2_halt_mcu(usb_regs_t *USBx)
Check if USB halt EP2 is enabled.
__STATIC_INLINE uint32_t ll_usb_is_enabled_addr_stat(usb_regs_t *USBx)
Check if USB is in addressed status is enabled.
__STATIC_INLINE void ll_usb_enable_ep2_halt_mcu(usb_regs_t *USBx)
Enable USB halt EP2.
__STATIC_INLINE uint32_t ll_usb_get_ep4_ahb_m_burst_size(usb_regs_t *USBx)
Get USB ep4 AHB master burst length;(default 64)
struct _ll_usb_init_t ll_usb_init_t
LL USB init structures definition.
__STATIC_INLINE void ll_usb_set_xcrv_ldo33_bias(aon_pmu_regs_t *AON_PMUx, uint32_t value)
Set USB Transceiver LDO_3.3V vout trimming signal.
__STATIC_INLINE void ll_usb_set_probe_sel(usb_regs_t *USBx, uint32_t sel)
Set USB probe select signal.
__STATIC_INLINE void ll_usb_set_str_desc0_ctrl_size(usb_regs_t *USBx, uint32_t size)
Set USB Language ID descriptor size.
__STATIC_INLINE void ll_usb_set_usb_desc_sram_addr(usb_regs_t *USBx, uint32_t addr)
Set USB descriptor SRAM value.
__STATIC_INLINE void ll_usb_disable_clr_ep1_fifo(usb_regs_t *USBx)
Disable Clear USB EP1 OUT FIFO.
__STATIC_INLINE void ll_usb_disable_ep4_empty_packet(usb_regs_t *USBx)
Disable USB EP4 empty packet.
__STATIC_INLINE uint32_t ll_usb_get_str_desc0_ctrl_start(usb_regs_t *USBx)
Get USB Language ID descriptor start address.
__STATIC_INLINE uint32_t ll_usb_get_output_endian_mode(usb_regs_t *USBx)
Get USB output endian mode.
__STATIC_INLINE void ll_usb_enable_xcvr_dp_rpu(usb_regs_t *USBx)
Enable USB drive DP pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_disable_pmu_lp(mcu_sub_regs_t *MCU_SUBx)
Disable USB low power.
__STATIC_INLINE void ll_usb_enable_xcvr_dm_rpu(usb_regs_t *USBx)
Enable USB drive DM pullup during transceiver test mode.
__STATIC_INLINE void ll_usb_enable_mcu_wakeup(usb_regs_t *USBx)
Enable USB MCU remote wakeup USB host.
__STATIC_INLINE void ll_usb_enable_suspend_clk_off(mcu_sub_regs_t *MCU_SUBx)
Enable Turn off USB clock during USB suspend.