|
|
@@ -478,7 +478,7 @@ void rndis_bulk_out(uint8_t busid, uint8_t ep, uint32_t nbytes)
|
|
|
g_rndis_rx_data_buffer += hdr->DataOffset + sizeof(rndis_generic_msg_t);
|
|
|
g_rndis_rx_data_length = hdr->DataLength;
|
|
|
|
|
|
- usbd_rndis_data_recv_done();
|
|
|
+ usbd_rndis_data_recv_done(g_rndis_rx_data_length);
|
|
|
}
|
|
|
|
|
|
void rndis_bulk_in(uint8_t busid, uint8_t ep, uint32_t nbytes)
|
|
|
@@ -489,6 +489,7 @@ void rndis_bulk_in(uint8_t busid, uint8_t ep, uint32_t nbytes)
|
|
|
/* send zlp */
|
|
|
usbd_ep_start_write(0, ep, NULL, 0);
|
|
|
} else {
|
|
|
+ usbd_rndis_data_send_done(g_rndis_tx_data_length);
|
|
|
g_rndis_tx_data_length = 0;
|
|
|
}
|
|
|
}
|
|
|
@@ -592,3 +593,13 @@ struct usbd_interface *usbd_rndis_init_intf(struct usbd_interface *intf,
|
|
|
|
|
|
return intf;
|
|
|
}
|
|
|
+
|
|
|
+__WEAK void usbd_rndis_data_recv_done(uint32_t len)
|
|
|
+{
|
|
|
+ (void)len;
|
|
|
+}
|
|
|
+
|
|
|
+__WEAK void usbd_rndis_data_send_done(uint32_t len)
|
|
|
+{
|
|
|
+ (void)len;
|
|
|
+}
|