Expand description
A crate for both interacting with SCSI devices as a host and for writing new SCSI device software/firmware.
Currently the main focus of this crate is Bulk Only USB Mass Storage Device compatibility, since that comprises a significant chunk of use cases. However, more functionality can be requested and/or PRed as necessary or desired.
Modules§
- scsi
- Contains implementations for the different SCSI commands and responses, as well as helper utilities to, for example, treat the SCSI device as a normal block devies.
Structs§
- Scsi
Error - A general error struct for the package.
Enums§
- Error
Cause - The cause of a returned error. This is implemented as an enum with a large number of variants to reduce allocations.
- UsbTransfer
Direction - The direction that the USB transfer was going when it errored.
Traits§
- Buffer
Pullable - Allows for a struct to deserialize itself from a raw byte buffer.
- Buffer
Pushable - Allows a struct to serialize itself to a raw byte buffer.
- Communication
Channel - The trait that all communication devices should implement if they are to be used to transfer SCSI information.