10#include "hal_usb_msd.h"
19 void attachLun(uint8_t lunIndex, BaseBlockDevice *blkdev, uint8_t *
blkbuf,
size_t blkbufsize,
20 const scsi_inquiry_response_t *inquiry,
21 const scsi_unit_serial_number_inquiry_response_t *serialInquiry);
26 static bool cbwValid(
const msd_cbw_t& cbw, msg_t status);
29 void sendCsw(uint8_t status, uint32_t residue);
void sendCsw(uint8_t status, uint32_t residue)
void attachLun(uint8_t lunIndex, BaseBlockDevice *blkdev, uint8_t *blkbuf, size_t blkbufsize, const scsi_inquiry_response_t *inquiry, const scsi_unit_serial_number_inquiry_response_t *serialInquiry)
LunEntry m_luns[USB_MSD_LUN_COUNT]
static bool cbwValid(const msd_cbw_t &cbw, msg_t status)
chibios_rt::Mutex m_lunMutex
static bool cbwMeaningful(const msd_cbw_t &cbw)
void ThreadTask() override
SCSITransport m_scsiTransport
usb_scsi_transport_handler_t m_scsiTransportHandler
A base class for a controller that requires its own thread.
uint8_t blkbuf[4 *MMCSD_BLOCK_SIZE]