mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
743ae3f095
19242: usbus/msc: add initial Mass Storage Class support r=benpicco a=dylad ### Contribution description This PR adds the initial support for Mass Storage Class in USBUS. This PR relies on the RIOT MTD implementation to implement the Mass Storage Class support. With the provided test application, a MTD device will be accessible as a normal storage device on your host computer. Read and Write operations are allowed. Multiple LUNs are supported so several MTD devices can be exported through USB. The MSC relies on SCSI protocol to operate. Currently there are some limitations: Supported host : Linux & Windows (macOS is untested) MSC cannot be used if MTD page size > 4096 MTD device must have at least 512 bytes of memory to be exported. Please be aware that performance are not so great. ### Testing procedure Flash `tests/usbus_msc` application on a board with at least one MTD device. Once the shell has started, prepare one or several MTD devices to be exported using `add_lun` command. Once ready, start the USB connection with `usb_attach` All MTD exported should appear as` /dev/sdX` on Linux. ### Issues/PRs references Supersede #15941 Co-authored-by: Dylan Laduranty <dylan.laduranty@mesotic.com> |
||
---|---|---|
.. | ||
pythonlibs | ||
testbed-support | ||
tools | ||
empty.a | ||
gdbinit-docker | ||
Makefile | ||
usb_id_testing |