use DO PING for highspeed out bulk

This commit is contained in:
hathach
2013-03-22 21:50:07 +07:00
parent 397d62db10
commit 53a4164b39
3 changed files with 31 additions and 3 deletions
+23 -1
View File
@@ -137,9 +137,31 @@ void verify_qtd(ehci_qtd_t *p_qtd, uint8_t p_data[], uint16_t length)
}
}
void test_bulk_xfer_hs_ping_out(void)
{
tusb_descriptor_endpoint_t const desc_ept_bulk_out =
{
.bLength = sizeof(tusb_descriptor_endpoint_t),
.bDescriptorType = TUSB_DESC_ENDPOINT,
.bEndpointAddress = 0x01,
.bmAttributes = { .xfer = TUSB_XFER_BULK },
.wMaxPacketSize = 512,
.bInterval = 0
};
usbh_device_info_pool[dev_addr].speed = TUSB_SPEED_HIGH;
pipe_handle_t pipe_hdl = hcd_pipe_open(dev_addr, &desc_ept_bulk_out, TUSB_CLASS_MSC);
ehci_qhd_t *p_qhd = get_qhd_from_pipe_handle(pipe_hdl);
//------------- Code Under Test -------------//
hcd_pipe_xfer(pipe_hdl, xfer_data, sizeof(xfer_data), true);
ehci_qtd_t* p_qtd = p_qhd->p_qtd_list_head;
TEST_ASSERT(p_qtd->pingstate_err);
}
void test_bulk_xfer(void)
{
//------------- Code Under Test -------------//
hcd_pipe_xfer(pipe_hdl_bulk, xfer_data, sizeof(xfer_data), true);
+1
View File
@@ -67,6 +67,7 @@ ehci_qhd_t* get_async_head(uint8_t hostid);
ehci_qhd_t* get_period_head(uint8_t hostid);
ehci_qhd_t* get_control_qhd(uint8_t dev_addr);
ehci_qtd_t* get_control_qtds(uint8_t dev_addr);
ehci_qhd_t* get_qhd_from_pipe_handle(pipe_handle_t pipe_hdl);
#ifdef __cplusplus
}