mirror of https://github.com/ARMmbed/mbed-os.git
Update USBTester for the new USB API
Update the class USBTester so it works with the new zero-copy USBDevice API.pull/9768/head
parent
09c1d2cf1e
commit
aedeee068a
|
@ -145,8 +145,10 @@ void USBTester::callback_set_configuration(uint8_t configuration)
|
||||||
// Configure endpoints > 0
|
// Configure endpoints > 0
|
||||||
endpoint_add(int_in, MAX_EP_SIZE, USB_EP_TYPE_INT);
|
endpoint_add(int_in, MAX_EP_SIZE, USB_EP_TYPE_INT);
|
||||||
endpoint_add(int_out, MAX_EP_SIZE, USB_EP_TYPE_INT, &USBTester::epint_out_callback);
|
endpoint_add(int_out, MAX_EP_SIZE, USB_EP_TYPE_INT, &USBTester::epint_out_callback);
|
||||||
|
read_start(int_out, int_buf, sizeof(int_buf));
|
||||||
endpoint_add(bulk_in, MAX_EP_SIZE, USB_EP_TYPE_BULK);
|
endpoint_add(bulk_in, MAX_EP_SIZE, USB_EP_TYPE_BULK);
|
||||||
endpoint_add(bulk_out, MAX_EP_SIZE, USB_EP_TYPE_BULK, &USBTester::epbulk_out_callback);
|
endpoint_add(bulk_out, MAX_EP_SIZE, USB_EP_TYPE_BULK, &USBTester::epbulk_out_callback);
|
||||||
|
read_start(bulk_out, bulk_buf, sizeof(bulk_buf));
|
||||||
|
|
||||||
complete_set_configuration(true);
|
complete_set_configuration(true);
|
||||||
}
|
}
|
||||||
|
@ -161,8 +163,10 @@ void USBTester::callback_set_interface(uint16_t interface, uint8_t alternate)
|
||||||
|
|
||||||
endpoint_add(int_in, MAX_EP_SIZE, USB_EP_TYPE_INT);
|
endpoint_add(int_in, MAX_EP_SIZE, USB_EP_TYPE_INT);
|
||||||
endpoint_add(int_out, MAX_EP_SIZE, USB_EP_TYPE_INT, &USBTester::epint_out_callback);
|
endpoint_add(int_out, MAX_EP_SIZE, USB_EP_TYPE_INT, &USBTester::epint_out_callback);
|
||||||
|
read_start(int_out, int_buf, sizeof(int_buf));
|
||||||
endpoint_add(bulk_in, MAX_EP_SIZE, USB_EP_TYPE_BULK);
|
endpoint_add(bulk_in, MAX_EP_SIZE, USB_EP_TYPE_BULK);
|
||||||
endpoint_add(bulk_out, MAX_EP_SIZE, USB_EP_TYPE_BULK, &USBTester::epbulk_out_callback);
|
endpoint_add(bulk_out, MAX_EP_SIZE, USB_EP_TYPE_BULK, &USBTester::epbulk_out_callback);
|
||||||
|
read_start(bulk_out, bulk_buf, sizeof(bulk_buf));
|
||||||
|
|
||||||
complete_set_interface(true);
|
complete_set_interface(true);
|
||||||
return;
|
return;
|
||||||
|
@ -175,8 +179,10 @@ void USBTester::callback_set_interface(uint16_t interface, uint8_t alternate)
|
||||||
|
|
||||||
endpoint_add(int_in, MIN_EP_SIZE, USB_EP_TYPE_INT);
|
endpoint_add(int_in, MIN_EP_SIZE, USB_EP_TYPE_INT);
|
||||||
endpoint_add(int_out, MIN_EP_SIZE, USB_EP_TYPE_INT, &USBTester::epint_out_callback);
|
endpoint_add(int_out, MIN_EP_SIZE, USB_EP_TYPE_INT, &USBTester::epint_out_callback);
|
||||||
|
read_start(int_out, int_buf, sizeof(int_buf));
|
||||||
endpoint_add(bulk_in, MIN_EP_SIZE, USB_EP_TYPE_BULK);
|
endpoint_add(bulk_in, MIN_EP_SIZE, USB_EP_TYPE_BULK);
|
||||||
endpoint_add(bulk_out, MIN_EP_SIZE, USB_EP_TYPE_BULK, &USBTester::epbulk_out_callback);
|
endpoint_add(bulk_out, MIN_EP_SIZE, USB_EP_TYPE_BULK, &USBTester::epbulk_out_callback);
|
||||||
|
read_start(bulk_out, bulk_buf, sizeof(bulk_buf));
|
||||||
|
|
||||||
complete_set_interface(true);
|
complete_set_interface(true);
|
||||||
return;
|
return;
|
||||||
|
@ -350,20 +356,12 @@ const uint8_t *USBTester::configuration_desc()
|
||||||
|
|
||||||
void USBTester::epint_out_callback(usb_ep_t endpoint)
|
void USBTester::epint_out_callback(usb_ep_t endpoint)
|
||||||
{
|
{
|
||||||
uint8_t buffer[65];
|
read_finish(endpoint);
|
||||||
uint32_t size = 0;
|
read_start(endpoint, int_buf, sizeof(int_buf));
|
||||||
|
|
||||||
if (!read(endpoint, buffer, sizeof(buffer), &size)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
void USBTester::epbulk_out_callback(usb_ep_t endpoint)
|
void USBTester::epbulk_out_callback(usb_ep_t endpoint)
|
||||||
{
|
{
|
||||||
uint8_t buffer[65];
|
read_finish(endpoint);
|
||||||
uint32_t size = 0;
|
read_start(endpoint, bulk_buf, sizeof(bulk_buf));
|
||||||
|
|
||||||
if (!read(endpoint, buffer, sizeof(buffer), &size)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -73,8 +73,10 @@ protected:
|
||||||
protected:
|
protected:
|
||||||
uint8_t bulk_in;
|
uint8_t bulk_in;
|
||||||
uint8_t bulk_out;
|
uint8_t bulk_out;
|
||||||
|
uint8_t bulk_buf[64];
|
||||||
uint8_t int_in;
|
uint8_t int_in;
|
||||||
uint8_t int_out;
|
uint8_t int_out;
|
||||||
|
uint8_t int_buf[64];
|
||||||
EventQueue *queue;
|
EventQueue *queue;
|
||||||
|
|
||||||
virtual void callback_state_change(DeviceState new_state);
|
virtual void callback_state_change(DeviceState new_state);
|
||||||
|
|
Loading…
Reference in New Issue