summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam D. Jones <[email protected]>2019-10-02 00:01:58 -0400
committerWilliam D. Jones <[email protected]>2019-10-02 00:01:58 -0400
commit19ee5199265d064e23c376c4ab0fdf92b08a5378 (patch)
tree7ff64f99f0653c775f949bf0aeb9bbf22acebe1d
parent54478aaa2a57e62f946581f492da5792741116f9 (diff)
dcd_msp430x5xx: Correct byte count masks in transmit/receive routines.
-rw-r--r--src/portable/ti/msp430x5xx/dcd_msp430x5xx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c b/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c
index 5202f156a..2f67e5d37 100644
--- a/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c
+++ b/src/portable/ti/msp430x5xx/dcd_msp430x5xx.c
@@ -394,7 +394,7 @@ static void receive_packet(uint8_t ep_num)
}
else
{
- xfer_size = ep_regs[BCTX] & 0x3F;
+ xfer_size = ep_regs[BCTX] & 0x7F;
}
uint16_t remaining = xfer->total_len - xfer->queued_len;
@@ -497,7 +497,7 @@ static void transmit_packet(uint8_t ep_num)
ep_buf[i] = base[i];
}
- ep_regs[BCTX] = (ep_regs[BCTX] & 0xF0) + xfer_size;
+ ep_regs[BCTX] = (ep_regs[BCTX] & 0xF0) + (xfer_size & 0x7F);
ep_regs[BCTX] &= ~NAK;
}
}