File tree Expand file tree Collapse file tree 2 files changed +5
-4
lines changed Expand file tree Collapse file tree 2 files changed +5
-4
lines changed Original file line number Diff line number Diff line change 55 "errors"
66 "fmt"
77 "machine"
8+ "machine/usb"
89 "time"
910)
1011
@@ -17,8 +18,8 @@ func (m *msc) RegisterBlockDevice(dev machine.BlockDevice) {
1718 m .dev = dev
1819
1920 if cap (m .blockCache ) != int (dev .WriteBlockSize ()) {
20- m .blockCache = make ([]byte , dev .WriteBlockSize ())
21- m .buf = make ([]byte , dev .WriteBlockSize ())
21+ m .blockCache = make ([]byte , max ( usb . EndpointPacketSize , dev .WriteBlockSize () ))
22+ m .buf = make ([]byte , max ( usb . EndpointPacketSize , dev .WriteBlockSize () ))
2223 }
2324
2425 m .blockSizeRaw = uint32 (m .dev .WriteBlockSize ())
Original file line number Diff line number Diff line change @@ -72,9 +72,9 @@ func newMSC(dev machine.BlockDevice) *msc {
7272 maxPacketSize := descriptor .EndpointMSCIN .GetMaxPacketSize ()
7373 m := & msc {
7474 // Some platforms require reads/writes to be aligned to the full underlying hardware block
75- blockCache : make ([]byte , dev .WriteBlockSize ()),
75+ blockCache : make ([]byte , max ( usb . EndpointPacketSize , dev .WriteBlockSize () )),
7676 blockSizeUSB : 512 ,
77- buf : make ([]byte , dev .WriteBlockSize ()),
77+ buf : make ([]byte , max ( usb . EndpointPacketSize , dev .WriteBlockSize () )),
7878 cswBuf : make ([]byte , csw .MsgLen ),
7979 cbw : & CBW {Data : make ([]byte , 31 )},
8080 maxPacketSize : uint32 (maxPacketSize ),
You can’t perform that action at this time.
0 commit comments