summaryrefslogtreecommitdiff
path: root/tinyusb/device
diff options
context:
space:
mode:
authorhathach <[email protected]>2013-12-01 16:11:41 +0700
committerhathach <[email protected]>2013-12-01 16:11:41 +0700
commit24e92f79e7df0aaeaa976423f4078a57ceb7b1a5 (patch)
tree5e850bdb76dfe348e5005616368dee640406dd68 /tinyusb/device
parenta9a5146108946b060b34b833ea8dd720bcb6fc02 (diff)
adjust packet per TD for lpc13u is 1023, 11u is 64
Diffstat (limited to 'tinyusb/device')
-rw-r--r--tinyusb/device/dcd_lpc_11uxx_13uxx.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/tinyusb/device/dcd_lpc_11uxx_13uxx.c b/tinyusb/device/dcd_lpc_11uxx_13uxx.c
index b2681c40a..1ddf77d94 100644
--- a/tinyusb/device/dcd_lpc_11uxx_13uxx.c
+++ b/tinyusb/device/dcd_lpc_11uxx_13uxx.c
@@ -63,7 +63,7 @@
#define DCD_11U_13U_QHD_COUNT 10
enum {
- DCD_11U_13U_FIXED_ENDPIONT_SIZE = 64
+ DCD_11U_13U_MAX_BYTE_PER_TD = (TUSB_CFG_MCU == MCU_LPC11UXX ? 64 : 1023)
};
enum {
@@ -436,7 +436,7 @@ bool dcd_pipe_is_busy(endpoint_handle_t edpt_hdl)
static void queue_xfer_to_buffer(uint8_t ep_id, uint8_t buff_idx, uint16_t buff_addr_offset, uint16_t total_bytes)
{
- uint16_t const queued_bytes = min16_of(total_bytes, DCD_11U_13U_FIXED_ENDPIONT_SIZE);
+ uint16_t const queued_bytes = min16_of(total_bytes, DCD_11U_13U_MAX_BYTE_PER_TD);
dcd_data.current_td[ep_id].queued_bytes_in_buff[buff_idx] = queued_bytes;
dcd_data.current_td[ep_id].remaining_bytes -= queued_bytes;
@@ -458,9 +458,9 @@ static void pipe_queue_xfer(uint8_t ep_id, uint16_t buff_addr_offset, uint16_t t
// need to queue buffer1 first, as activate buffer0 can causes controller does transferring immediately
// while buffer1 is not ready yet
- if ( total_bytes > DCD_11U_13U_FIXED_ENDPIONT_SIZE)
+ if ( total_bytes > DCD_11U_13U_MAX_BYTE_PER_TD)
{
- queue_xfer_to_buffer(ep_id, 1, buff_addr_offset+1, total_bytes - DCD_11U_13U_FIXED_ENDPIONT_SIZE);
+ queue_xfer_to_buffer(ep_id, 1, buff_addr_offset+1, total_bytes - DCD_11U_13U_MAX_BYTE_PER_TD);
}
queue_xfer_to_buffer(ep_id, 0, buff_addr_offset, total_bytes);