From 15e58a21a8f48b6a00081587fa1fa23aa9159dfd Mon Sep 17 00:00:00 2001 From: Christian Hoff Date: Thu, 14 Jun 2012 15:55:26 +0200 Subject: [PATCH] scsi: Fix LOAD_UNLOAD Change operation code of LOAD_UNLOAD command to 0x1b as described in section 7.3 of the SCSI Stream Commands spec. Signed-off-by: Christian Hoff Signed-off-by: Christian Borntraeger Signed-off-by: Paolo Bonzini --- hw/scsi-bus.c | 6 +++--- hw/scsi-defs.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/scsi-bus.c b/hw/scsi-bus.c index 4e95eee55b..2d4429cbb0 100644 --- a/hw/scsi-bus.c +++ b/hw/scsi-bus.c @@ -771,7 +771,6 @@ static int scsi_req_length(SCSICommand *cmd, SCSIDevice *dev, uint8_t *buf) case SYNCHRONIZE_CACHE_16: case LOCATE_16: case LOCK_UNLOCK_CACHE: - case LOAD_UNLOAD: case SET_CD_SPEED: case SET_LIMITS: case WRITE_LONG_10: @@ -902,7 +901,7 @@ static int scsi_req_stream_length(SCSICommand *cmd, SCSIDevice *dev, uint8_t *bu } break; case REWIND: - case START_STOP: + case LOAD_UNLOAD: cmd->len = 6; cmd->xfer = 0; break; @@ -1200,7 +1199,8 @@ static const char *scsi_command_name(uint8_t cmd) [ COPY ] = "COPY", [ ERASE ] = "ERASE", [ MODE_SENSE ] = "MODE_SENSE", - [ START_STOP ] = "START_STOP", + [ START_STOP ] = "START_STOP/LOAD_UNLOAD", + /* LOAD_UNLOAD and START_STOP use the same operation code */ [ RECEIVE_DIAGNOSTIC ] = "RECEIVE_DIAGNOSTIC", [ SEND_DIAGNOSTIC ] = "SEND_DIAGNOSTIC", [ ALLOW_MEDIUM_REMOVAL ] = "ALLOW_MEDIUM_REMOVAL", diff --git a/hw/scsi-defs.h b/hw/scsi-defs.h index 3c9f1b5113..6578bb9950 100644 --- a/hw/scsi-defs.h +++ b/hw/scsi-defs.h @@ -44,6 +44,7 @@ #define COPY 0x18 #define ERASE 0x19 #define MODE_SENSE 0x1a +#define LOAD_UNLOAD 0x1b #define START_STOP 0x1b #define RECEIVE_DIAGNOSTIC 0x1c #define SEND_DIAGNOSTIC 0x1d @@ -117,7 +118,6 @@ #define MAINTENANCE_IN 0xa3 #define MAINTENANCE_OUT 0xa4 #define MOVE_MEDIUM 0xa5 -#define LOAD_UNLOAD 0xa6 #define SET_READ_AHEAD 0xa7 #define READ_12 0xa8 #define WRITE_12 0xaa -- 2.11.4.GIT