static void __USBC_Host_ep0_DisablePing(__u32 usbc_base_addr) { u16 csr0 = 0; csr0 = USBC_Readw(USBC_REG_CSR0(usbc_base_addr)); csr0 |= (1 << USBC_BP_CSR0_H_DisPing); USBC_Writew(csr0, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_SendSetupPkt(__u32 usbc_base_addr) { __u32 reg_val = 0; reg_val = USBC_Readw(USBC_REG_CSR0(usbc_base_addr)); reg_val |= 1 << USBC_BP_CSR0_H_SetupPkt; reg_val |= 1 << USBC_BP_CSR0_H_TxPkRdy; USBC_Writew(reg_val, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_StatusAfterOut(__u32 usbc_base_addr) { __u32 reg_val = 0; reg_val = USBC_Readw(USBC_REG_CSR0(usbc_base_addr)); reg_val |= 1 << USBC_BP_CSR0_H_ReqPkt; reg_val |= 1 << USBC_BP_CSR0_H_StatusPkt; USBC_Writew(reg_val, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_ConfigEp(__u32 usbc_base_addr, __u32 ts_mode, __u32 interval) { //--<1>--config ep0 csr USBC_Writew(1<<USBC_BP_CSR0_H_FlushFIFO, USBC_REG_CSR0(usbc_base_addr)); //--<2>--config polling interval USBC_Writeb(interval, USBC_REG_NAKLIMIT0(usbc_base_addr)); /* config ep0 transfer type */ __USBC_Host_ep0_EpType(usbc_base_addr, ts_mode); }
static void __USBC_Host_ep0_ConfigEp_Default(__u32 usbc_base_addr) { //--<1>--config ep0 csr USBC_Writew(1<<USBC_BP_CSR0_H_FlushFIFO, USBC_REG_CSR0(usbc_base_addr)); //--<2>--config polling interval USBC_Writeb(0x00, USBC_REG_TXINTERVAL(usbc_base_addr)); /* config ep transfer type */ USBC_Writeb(0x00, USBC_REG_EP0TYPE(usbc_base_addr)); }
static void __USBC_Host_ep0_ClearStall(__u32 usbc_base_addr) { USBC_REG_clear_bit_w(USBC_BP_CSR0_H_RxStall, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Host_ep0_IsStall(__u32 usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_H_RxStall, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_WriteDataComplete(__u32 usbc_base_addr) { USBC_REG_set_bit_w(USBC_BP_CSR0_H_TxPkRdy, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_WriteDataHalf(ulong usbc_base_addr) { USBC_Writew(1<<USBC_BP_CSR0_D_TX_PKT_READY, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Host_ep0_IsNakTimeOut(__u32 usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_H_NAK_Timeout, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_ReadDataComplete(__u32 usbc_base_addr) { USBC_Writew((1<<USBC_BP_CSR0_D_SERVICED_RX_PKT_READY) | (1<<USBC_BP_CSR0_D_DATA_END), USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_StopInToken(__u32 usbc_base_addr) { USBC_REG_clear_bit_w(USBC_BP_CSR0_H_ReqPkt, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_FlushFifo(__u32 usbc_base_addr) { USBC_Writew(1 << USBC_BP_CSR0_H_FlushFIFO, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_ClearSetupEnd(ulong usbc_base_addr) { USBC_REG_set_bit_w(USBC_BP_CSR0_D_SERVICED_SETUP_END, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Dev_ep0_IsSetupEnd(ulong usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_D_SETUP_END, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_ClearStall(ulong usbc_base_addr) { USBC_REG_clear_bit_w(USBC_BP_CSR0_D_SEND_STALL, USBC_REG_CSR0(usbc_base_addr)); USBC_REG_clear_bit_w(USBC_BP_CSR0_D_SENT_STALL, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_SendStall(ulong usbc_base_addr) { USBC_REG_set_bit_w(USBC_BP_CSR0_D_SEND_STALL, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Dev_ep0_IsEpStall(ulong usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_D_SENT_STALL, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_WriteDataComplete(ulong usbc_base_addr) { USBC_Writew((1<<USBC_BP_CSR0_D_TX_PKT_READY) | (1<<USBC_BP_CSR0_D_DATA_END), USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_ClearCSR(__u32 usbc_base_addr) { USBC_Writew(0x00, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Host_ep0_IsReqPktSet(__u32 usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_H_ReqPkt, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Host_ep0_IsError(__u32 usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_H_Error, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_ConfigEp0(ulong usbc_base_addr) { USBC_Writew(1<<USBC_BP_CSR0_D_FLUSH_FIFO, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Dev_ep0_ReadDataHalf(__u32 usbc_base_addr) { USBC_Writew(1<<USBC_BP_CSR0_D_SERVICED_RX_PKT_READY, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_DisablePing(__u32 usbc_base_addr) { USBC_REG_set_bit_w(USBC_BP_CSR0_H_DisPing, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_ReadDataComplete(__u32 usbc_base_addr) { USBC_REG_clear_bit_w(USBC_BP_CSR0_H_RxPkRdy, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_ClearNakTimeOut(__u32 usbc_base_addr) { USBC_REG_clear_bit_w(USBC_BP_CSR0_H_NAK_Timeout, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Dev_ep0_IsWriteDataReady(ulong usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_D_TX_PKT_READY, USBC_REG_CSR0(usbc_base_addr)); }
static void __USBC_Host_ep0_ClearError(__u32 usbc_base_addr) { USBC_REG_clear_bit_w(USBC_BP_CSR0_H_Error, USBC_REG_CSR0(usbc_base_addr)); }
static __u32 __USBC_Host_ep0_IsWriteDataReady(__u32 usbc_base_addr) { return USBC_REG_test_bit_w(USBC_BP_CSR0_H_TxPkRdy, USBC_REG_CSR0(usbc_base_addr)); }