summaryrefslogtreecommitdiff
path: root/class
diff options
context:
space:
mode:
authorZhihong Chen <[email protected]>2024-02-22 18:23:32 +0800
committersakumisu <[email protected]>2024-02-23 10:42:53 +0800
commit756987050fe1dd82eadebea3a8e890767252df36 (patch)
tree9ba4278470104c9818af5e63e886189cfd16b7f0 /class
parent64773ab5e8ff61e7af032b360de9524cb1319e56 (diff)
class: msc: stage change should be before usbd_ep_start_write()
- stage change should be before usbd_ep_start_write() Signed-off-by: Zhihong Chen <[email protected]>
Diffstat (limited to 'class')
-rw-r--r--class/msc/usbd_msc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/class/msc/usbd_msc.c b/class/msc/usbd_msc.c
index 5599690b..055cdc4e 100644
--- a/class/msc/usbd_msc.c
+++ b/class/msc/usbd_msc.c
@@ -679,8 +679,6 @@ static bool SCSI_processRead(uint8_t busid)
return false;
}
- usbd_ep_start_write(busid, mass_ep_data[busid][MSD_IN_EP_IDX].ep_addr, g_usbd_msc[busid].block_buffer, transfer_len);
-
g_usbd_msc[busid].start_sector += (transfer_len / g_usbd_msc[busid].scsi_blk_size[g_usbd_msc[busid].cbw.bLUN]);
g_usbd_msc[busid].nsectors -= (transfer_len / g_usbd_msc[busid].scsi_blk_size[g_usbd_msc[busid].cbw.bLUN]);
g_usbd_msc[busid].csw.dDataResidue -= transfer_len;
@@ -689,6 +687,8 @@ static bool SCSI_processRead(uint8_t busid)
g_usbd_msc[busid].stage = MSC_SEND_CSW;
}
+ usbd_ep_start_write(busid, mass_ep_data[busid][MSD_IN_EP_IDX].ep_addr, g_usbd_msc[busid].block_buffer, transfer_len);
+
return true;
}