/* prepare a host channel and start a transfer  */
uint32_t host_driver_submitrequest(usb_core_instance *pdev, uint8_t hc_num)
/* prepare a host channel and start a transfer  */
uint32_t host_driver_submitrequest(usb_core_instance *pdev, uint8_t hc_num)
{
    pdev->host.URB_State[hc_num] = HOST_CH_XFER_IDLE;
    pdev->host.hc[hc_num].xfer_count = 0U ;
    return usb_hchtransbegin(&pdev->regs, hc_num, &pdev->host.hc[hc_num], pdev->basic_cfgs.dmaen);
}