diff options
author | Simon Glass <sjg@chromium.org> | 2022-09-21 16:21:43 +0200 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2022-09-25 08:30:05 -0600 |
commit | 1ac42900d8de7a8989a76f2b69e6ae46784476b1 (patch) | |
tree | b8b171b7333c7d08a14fe16bf475454331217ce4 | |
parent | e074df4d23516597ce65d5056614073cc4e6bfc8 (diff) | |
download | u-boot-1ac42900d8de7a8989a76f2b69e6ae46784476b1.zip u-boot-1ac42900d8de7a8989a76f2b69e6ae46784476b1.tar.gz u-boot-1ac42900d8de7a8989a76f2b69e6ae46784476b1.tar.bz2 |
sandbox: scsi: Move structs to header file
Move these to the SCSI header file so we can access them from multiple
emulators.
Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | drivers/usb/emul/sandbox_flash.c | 26 | ||||
-rw-r--r-- | include/scsi.h | 55 |
2 files changed, 55 insertions, 26 deletions
diff --git a/drivers/usb/emul/sandbox_flash.c b/drivers/usb/emul/sandbox_flash.c index 7b9a99c..2059fc7 100644 --- a/drivers/usb/emul/sandbox_flash.c +++ b/drivers/usb/emul/sandbox_flash.c @@ -57,32 +57,6 @@ struct sandbox_flash_plat { struct usb_string flash_strings[STRINGID_COUNT]; }; -struct scsi_inquiry_resp { - u8 type; - u8 flags; - u8 version; - u8 data_format; - u8 additional_len; - u8 spare[3]; - char vendor[8]; - char product[16]; - char revision[4]; -}; - -struct scsi_read_capacity_resp { - u32 last_block_addr; - u32 block_len; -}; - -struct __packed scsi_read10_req { - u8 cmd; - u8 lun_flags; - u32 lba; - u8 spare; - u16 xfer_len; - u8 spare2[3]; -}; - static struct usb_device_descriptor flash_device_desc = { .bLength = sizeof(flash_device_desc), .bDescriptorType = USB_DT_DEVICE, diff --git a/include/scsi.h b/include/scsi.h index a4f99f0..94e1d8c 100644 --- a/include/scsi.h +++ b/include/scsi.h @@ -201,6 +201,61 @@ enum scsi_cmd_phase { }; /** + * struct scsi_inquiry_resp - holds a SCSI inquiry command + * + * @type; command type + * @flags; command flags + * @version; command version + * @data_format; data format + * @additional_len; additional data length + * @spare[3]; spare bytes + * @vendor[8]; vendor information + * @product[16]; production information + * @revision[4]; revision information + */ +struct scsi_inquiry_resp { + u8 type; + u8 flags; + u8 version; + u8 data_format; + u8 additional_len; + u8 spare[3]; + char vendor[8]; + char product[16]; + char revision[4]; +}; + +/** + * struct scsi_read_capacity_resp - holds the response to a read-capacity cmd + * + * @last_block_addr: Logical block address of last block + * @block_len: Length of each block in bytes + */ +struct scsi_read_capacity_resp { + u32 last_block_addr; + u32 block_len; +}; + +/** + * struct scsi_read10_req - holds a SCSI READ10 request + * + * @cmd; command type + * @lun_flags; LUN flags + * @lba; Logical block address to start reading from + * @spare; spare bytes + * @xfer_len: number of blocks to read + * @spare2: more spare bytes + */ +struct __packed scsi_read10_req { + u8 cmd; + u8 lun_flags; + u32 lba; + u8 spare; + u16 xfer_len; + u8 spare2[3]; +}; + +/** * struct scsi_plat - stores information about SCSI controller * * @base: Controller base address |