diff options
| author | William D. Jones <[email protected]> | 2021-10-23 13:43:46 -0400 |
|---|---|---|
| committer | William D. Jones <[email protected]> | 2021-10-23 14:04:44 -0400 |
| commit | 07c74c76d0bf420c63757af2b66838090c2fd9d3 (patch) | |
| tree | 1b311e32cd508a211b1d6494167a65c104250be1 /src | |
| parent | b541c0f5e07696ead205666e43c726b14277e0d9 (diff) | |
msp430x5xx: Set base of transmit_packet buffer earlier to avoid incrementing past unsent data.
Diffstat (limited to 'src')
| -rw-r--r-- | src/portable/ti/msp430x5xx/dcd_msp430x5xx.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c b/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c index ee85f0a77..6830fd1fa 100644 --- a/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c +++ b/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c @@ -547,6 +547,7 @@ static void transmit_packet(uint8_t ep_num) } // Then actually commit to transmit a packet. + uint8_t * base = (xfer->buffer + xfer->queued_len); uint16_t remaining = xfer->total_len - xfer->queued_len; uint8_t xfer_size = (xfer->max_size < xfer->total_len) ? xfer->max_size : remaining; @@ -560,7 +561,6 @@ static void transmit_packet(uint8_t ep_num) if(ep_num == 0) { volatile uint8_t * ep0in_buf = &USBIEP0BUF; - uint8_t * base = (xfer->buffer + xfer->queued_len); for(uint16_t i = 0; i < xfer_size; i++) { ep0in_buf[i] = base[i]; @@ -582,7 +582,6 @@ static void transmit_packet(uint8_t ep_num) else #endif { - uint8_t * base = (xfer->buffer + xfer->queued_len); for(int i = 0; i < xfer_size; i++) { ep_buf[i] = base[i]; |
