13d4a8bf0SPaolo Bonzini #ifndef HW_SCSI_EMULATION_H 2*177d9e0dSMarkus Armbruster #define HW_SCSI_EMULATION_H 33d4a8bf0SPaolo Bonzini 43d4a8bf0SPaolo Bonzini typedef struct SCSIBlockLimits { 53d4a8bf0SPaolo Bonzini bool wsnz; 63d4a8bf0SPaolo Bonzini uint16_t min_io_size; 73d4a8bf0SPaolo Bonzini uint32_t max_unmap_descr; 83d4a8bf0SPaolo Bonzini uint32_t opt_io_size; 93d4a8bf0SPaolo Bonzini uint32_t max_unmap_sectors; 103d4a8bf0SPaolo Bonzini uint32_t unmap_sectors; 113d4a8bf0SPaolo Bonzini uint32_t max_io_sectors; 123d4a8bf0SPaolo Bonzini } SCSIBlockLimits; 133d4a8bf0SPaolo Bonzini 143d4a8bf0SPaolo Bonzini int scsi_emulate_block_limits(uint8_t *outbuf, const SCSIBlockLimits *bl); 153d4a8bf0SPaolo Bonzini 163d4a8bf0SPaolo Bonzini #endif 17