Libraries/USB/src/USB/MSC/Device.h
Go to the documentation of this file.
91 static void inquiry(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], uint8_t product_rev[4]);
Represents a storage device (e.g. flash memory)
Definition: Components/Storage/src/include/Storage/Device.h:34
virtual storage_size_t getSectorCount() const
Obtain total number of sectors on this device.
Definition: Components/Storage/src/include/Storage/Device.h:169
virtual bool read(storage_size_t address, void *dst, size_t size)=0
Read data from the storage device.
virtual bool write(storage_size_t address, const void *src, size_t size)=0
Write data to the storage device.
virtual uint16_t getSectorSize() const
Get sector size, the unit of allocation for block-access devices.
Definition: Components/Storage/src/include/Storage/Device.h:161
Base class to support a USB device interface implementation.
Definition: DeviceInterface.h:30
DeviceInterface(uint8_t instance, const char *name)
Constructor.
Definition: DeviceInterface.h:37
Definition: Libraries/USB/src/USB/MSC/Device.h:70
static void inquiry(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], uint8_t product_rev[4])
static constexpr size_t MAX_LUN
Definition: Libraries/USB/src/USB/MSC/Device.h:103
static bool isReady(uint8_t lun)
Definition: Libraries/USB/src/USB/MSC/Device.h:93
static int write(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, uint32_t bufsize)
Definition: Libraries/USB/src/USB/MSC/Device.h:86
static int read(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, uint32_t bufsize)
Definition: Libraries/USB/src/USB/MSC/Device.h:81
static bool isReadOnly(uint8_t lun)
Definition: Libraries/USB/src/USB/MSC/Device.h:98
static void getCapacity(uint8_t lun, uint32_t *block_count, uint16_t *block_size)
Definition: Libraries/USB/src/USB/MSC/Device.h:76
static bool setLogicalUnit(uint8_t lun, LogicalUnit unit)
Definition: Libraries/USB/src/USB/MSC/Device.h:26
A physical device instance managed by an MSC interface.
Definition: Libraries/USB/src/USB/MSC/Device.h:27
int read(uint32_t lba, uint32_t offset, void *buffer, uint32_t bufsize)
Definition: Libraries/USB/src/USB/MSC/Device.h:46
int write(uint32_t lba, uint32_t offset, uint8_t *buffer, uint32_t bufsize)
Definition: Libraries/USB/src/USB/MSC/Device.h:57
void getCapacity(uint32_t *block_count, uint16_t *block_size)
Definition: Libraries/USB/src/USB/MSC/Device.h:36
Storage::Device * device
Definition: Libraries/USB/src/USB/MSC/Device.h:28