|
CDC Badge OS
Firmware for the CDC Badge v1.0 hardware security key
|
#include "usb_badge/usb_msc.h"#include "cdc_log.h"#include "tusb.h"#include "class/msc/msc.h"#include "class/msc/msc_device.h"#include <cstring>Go to the source code of this file.
Functions | |
| void | usb_msc_set_backend (const usb_msc_backend_t *backend) |
| Installs or removes the MSC block backend. | |
| void | tud_msc_inquiry_cb (uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], uint8_t product_rev[4]) |
| bool | tud_msc_test_unit_ready_cb (uint8_t lun) |
| void | tud_msc_capacity_cb (uint8_t lun, uint32_t *block_count, uint16_t *block_size) |
| bool | tud_msc_is_writable_cb (uint8_t lun) |
| int32_t | tud_msc_read10_cb (uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, uint32_t bufsize) |
| int32_t | tud_msc_write10_cb (uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, uint32_t bufsize) |
| bool | tud_msc_start_stop_cb (uint8_t lun, uint8_t power_condition, bool start, bool load_eject) |
| int32_t | tud_msc_scsi_cb (uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) |
| void | tud_umount_cb (void) |
Variables | |
| static const char * | TAG = "USB_MSC" |
| TinyUSB Mass Storage (MSC) class callbacks for the single vfat LUN. | |
| static const usb_msc_backend_t * | s_backend = nullptr |
| void tud_msc_capacity_cb | ( | uint8_t | lun, |
| uint32_t * | block_count, | ||
| uint16_t * | block_size ) |
Definition at line 50 of file usb_msc.cpp.
References s_backend.
| void tud_msc_inquiry_cb | ( | uint8_t | lun, |
| uint8_t | vendor_id[8], | ||
| uint8_t | product_id[16], | ||
| uint8_t | product_rev[4] ) |
Definition at line 31 of file usb_msc.cpp.
| bool tud_msc_is_writable_cb | ( | uint8_t | lun | ) |
Definition at line 62 of file usb_msc.cpp.
References s_backend.
| int32_t tud_msc_read10_cb | ( | uint8_t | lun, |
| uint32_t | lba, | ||
| uint32_t | offset, | ||
| void * | buffer, | ||
| uint32_t | bufsize ) |
Definition at line 67 of file usb_msc.cpp.
References s_backend.
| int32_t tud_msc_scsi_cb | ( | uint8_t | lun, |
| uint8_t const | scsi_cmd[16], | ||
| void * | buffer, | ||
| uint16_t | bufsize ) |
Definition at line 97 of file usb_msc.cpp.
| bool tud_msc_start_stop_cb | ( | uint8_t | lun, |
| uint8_t | power_condition, | ||
| bool | start, | ||
| bool | load_eject ) |
Definition at line 86 of file usb_msc.cpp.
References s_backend.
| bool tud_msc_test_unit_ready_cb | ( | uint8_t | lun | ) |
Definition at line 45 of file usb_msc.cpp.
References s_backend.
| int32_t tud_msc_write10_cb | ( | uint8_t | lun, |
| uint32_t | lba, | ||
| uint32_t | offset, | ||
| uint8_t * | buffer, | ||
| uint32_t | bufsize ) |
Definition at line 77 of file usb_msc.cpp.
References s_backend.
| void tud_umount_cb | ( | void | ) |
Definition at line 107 of file usb_msc.cpp.
References s_backend.
| void usb_msc_set_backend | ( | const usb_msc_backend_t * | backend | ) |
Installs or removes the MSC block backend.
| backend | Backend to use, or NULL to detach (LUN reports not ready). |
Definition at line 24 of file usb_msc.cpp.
|
static |
Definition at line 22 of file usb_msc.cpp.
Referenced by tud_msc_capacity_cb(), tud_msc_is_writable_cb(), tud_msc_read10_cb(), tud_msc_start_stop_cb(), tud_msc_test_unit_ready_cb(), tud_msc_write10_cb(), tud_umount_cb(), and usb_msc_set_backend().
|
static |
TinyUSB Mass Storage (MSC) class callbacks for the single vfat LUN.
The block device is provided at runtime by a backend (see usb_msc.h) so this file carries no storage dependency. All callbacks target LUN 0; reads/writes are bounds-checked inside the backend.
Definition at line 20 of file usb_msc.cpp.