Slight optimization for cdc tx refill

This commit is contained in:
Gavin Li 2020-08-20 09:59:23 -07:00 committed by GitHub
parent 15b063beb2
commit 72183c7bb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -416,12 +416,10 @@ bool cdcd_xfer_cb(uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_
// Though maybe the baudrate is not really important !!! // Though maybe the baudrate is not really important !!!
if ( ep_addr == p_cdc->ep_in ) if ( ep_addr == p_cdc->ep_in )
{ {
uint32_t flushed = tud_cdc_n_write_flush(itf);
// invoke transmit callback to possibly refill tx fifo // invoke transmit callback to possibly refill tx fifo
if ( tud_cdc_tx_complete_cb ) tud_cdc_tx_complete_cb(itf); if ( tud_cdc_tx_complete_cb ) tud_cdc_tx_complete_cb(itf);
if ( 0 == flushed && tu_fifo_empty(&p_cdc->tx_ff) ) if ( 0 == tud_cdc_n_write_flush(itf) )
{ {
// There is no data left, a ZLP should be sent if // There is no data left, a ZLP should be sent if
// xferred_bytes is multiple of EP size and not zero // xferred_bytes is multiple of EP size and not zero