summaryrefslogtreecommitdiff
path: root/SConscript
diff options
context:
space:
mode:
authorhathach <[email protected]>2026-06-17 16:26:38 +0700
committerhathach <[email protected]>2026-06-18 15:56:23 +0700
commitde341b14abe3bc3e25962cbb26aa61bc0126adcf (patch)
tree4999729614bdf87ff36a3bcd3af6103698913588 /SConscript
parent47f534680215a68391a46cd45decde9b6f0a6573 (diff)
dcd/stm32_fsdev: restore CH32 EP0 CONTROL type atomically with arming
edpt_xfer() restored EP0 to CONTROL at the top of the function, before the OUT stage was armed (rx bufsize + STAT_RX=VALID written further down, with interrupts enabled in between). That re-enabled the CH32 blind OUT ACK while STAT_RX was still NAK and the buffer size stale, so a host-retried DATA OUT / status ZLP could be ACKed into the wrong buffer in the gap. Fold the CONTROL restore into the single exclusive write that programs STAT_RX=VALID for the OUT direction, after the buffer size is set, so type and arming go live together. The IN direction keeps the (now atomic) early restore, where no pending OUT exists to be blind-ACKed. Co-Authored-By: Claude Fable 5 <[email protected]>
Diffstat (limited to 'SConscript')
0 files changed, 0 insertions, 0 deletions