u32 bytes = blocksize * op->count;
struct cbw_s cbw;
memset(&cbw, 0, sizeof(cbw));
u32 bytes = blocksize * op->count;
struct cbw_s cbw;
memset(&cbw, 0, sizeof(cbw));
cbw.dCBWSignature = CBW_SIGNATURE;
cbw.dCBWTag = 999; // XXX
cbw.dCBWDataTransferLength = bytes;
cbw.dCBWSignature = CBW_SIGNATURE;
cbw.dCBWTag = 999; // XXX
cbw.dCBWDataTransferLength = bytes;
// Transfer cbw to device.
int ret = usb_msc_send(udrive_g, USB_DIR_OUT
// Transfer cbw to device.
int ret = usb_msc_send(udrive_g, USB_DIR_OUT
- ret = usb_msc_send(udrive_g, USB_DIR_IN, op->buf_fl, bytes);
+ ret = usb_msc_send(udrive_g, cbw.bmCBWFlags, op->buf_fl, bytes);