summaryrefslogtreecommitdiff
path: root/src/class/msc/msc.h
diff options
context:
space:
mode:
authorhathach <[email protected]>2018-07-25 16:56:57 +0700
committerhathach <[email protected]>2018-07-25 16:56:57 +0700
commitd2ab4db25ee95058131d3b6139f9bb89d16f9cd7 (patch)
treed75e5d6a028593164d28e1ff44cf05e35d387fd0 /src/class/msc/msc.h
parent1982886f87f87785fbc8b12dbc77393b0371bec2 (diff)
add scsi start stop unit struct, improve device msc, correctly stall unsupported scsi command
Diffstat (limited to 'src/class/msc/msc.h')
-rw-r--r--src/class/msc/msc.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/class/msc/msc.h b/src/class/msc/msc.h
index fc0b8730c..ed9fbfce5 100644
--- a/src/class/msc/msc.h
+++ b/src/class/msc/msc.h
@@ -298,6 +298,29 @@ typedef struct ATTR_PACKED
VERIFY_STATIC( sizeof(scsi_prevent_allow_medium_removal_t) == 6, "size is not correct");
+typedef struct ATTR_PACKED
+{
+ uint8_t cmd_code;
+
+ uint8_t immded : 1;
+ uint8_t : 7;
+
+ uint8_t TU_RESERVED;
+
+ uint8_t power_condition_mod : 4;
+ uint8_t : 4;
+
+ uint8_t start : 1;
+ uint8_t load_eject : 1;
+ uint8_t no_flush : 1;
+ uint8_t : 1;
+ uint8_t power_condition : 4;
+
+ uint8_t control;
+} scsi_start_stop_unit_t;
+
+VERIFY_STATIC( sizeof(scsi_start_stop_unit_t) == 6, "size is not correct");
+
//--------------------------------------------------------------------+
// SCSI MMC
//--------------------------------------------------------------------+