Fix bug in evasion buffer list
This commit is contained in:
@@ -132,7 +132,7 @@ typedef struct
|
|||||||
CFG_TUSB_MCU == OPT_MCU_LPC18XX || /* No clue how driver works */ \
|
CFG_TUSB_MCU == OPT_MCU_LPC18XX || /* No clue how driver works */ \
|
||||||
CFG_TUSB_MCU == OPT_MCU_LPC43XX || \
|
CFG_TUSB_MCU == OPT_MCU_LPC43XX || \
|
||||||
CFG_TUSB_MCU == OPT_MCU_MIMXRT10XX || \
|
CFG_TUSB_MCU == OPT_MCU_MIMXRT10XX || \
|
||||||
CFG_TUSB_MCU == OPT_MCU_RP2040) || /* Don't want to change driver */ \
|
CFG_TUSB_MCU == OPT_MCU_RP2040 || /* Don't want to change driver */ \
|
||||||
CFG_TUSB_MCU == OPT_MCU_VALENTYUSB_EPTRI || /* Intermediate software buffer required */ \
|
CFG_TUSB_MCU == OPT_MCU_VALENTYUSB_EPTRI || /* Intermediate software buffer required */ \
|
||||||
CFG_TUSB_MCU == OPT_MCU_CXD56 || /* No clue how driver works */ \
|
CFG_TUSB_MCU == OPT_MCU_CXD56 || /* No clue how driver works */ \
|
||||||
CFG_TUSB_MCU == OPT_MCU_DA1469X || /* Uses DMA - Ok for FIFO, had no time for implementation */ \
|
CFG_TUSB_MCU == OPT_MCU_DA1469X || /* Uses DMA - Ok for FIFO, had no time for implementation */ \
|
||||||
|
|||||||
@@ -984,7 +984,7 @@ static bool dcd_write_packet_memory_ff(tu_fifo_t * ff, uint16_t dst, uint16_t wN
|
|||||||
{
|
{
|
||||||
// Since we copy from a ring buffer FIFO, a wrap might occur making it necessary to conduct two copies
|
// Since we copy from a ring buffer FIFO, a wrap might occur making it necessary to conduct two copies
|
||||||
// Check for first linear part
|
// Check for first linear part
|
||||||
void *__restrict src;
|
void * src;
|
||||||
uint16_t len = tu_fifo_get_linear_read_info(ff, 0, &src, wNBytes); // We want to read from the FIFO
|
uint16_t len = tu_fifo_get_linear_read_info(ff, 0, &src, wNBytes); // We want to read from the FIFO
|
||||||
TU_VERIFY(len && dcd_write_packet_memory(dst, src, len)); // and write it into the PMA
|
TU_VERIFY(len && dcd_write_packet_memory(dst, src, len)); // and write it into the PMA
|
||||||
tu_fifo_advance_read_pointer(ff, len);
|
tu_fifo_advance_read_pointer(ff, len);
|
||||||
@@ -1064,7 +1064,7 @@ static bool dcd_read_packet_memory_ff(tu_fifo_t * ff, uint16_t src, uint16_t wNB
|
|||||||
{
|
{
|
||||||
// Since we copy into a ring buffer FIFO, a wrap might occur making it necessary to conduct two copies
|
// Since we copy into a ring buffer FIFO, a wrap might occur making it necessary to conduct two copies
|
||||||
// Check for first linear part
|
// Check for first linear part
|
||||||
void *__restrict dst;
|
void * dst;
|
||||||
uint16_t len = tu_fifo_get_linear_write_info(ff, 0, &dst, wNBytes);
|
uint16_t len = tu_fifo_get_linear_write_info(ff, 0, &dst, wNBytes);
|
||||||
TU_VERIFY(len && dcd_read_packet_memory(dst, src, len));
|
TU_VERIFY(len && dcd_read_packet_memory(dst, src, len));
|
||||||
tu_fifo_advance_write_pointer(ff, len);
|
tu_fifo_advance_write_pointer(ff, len);
|
||||||
|
|||||||
Reference in New Issue
Block a user