From 379f83dff03405050eb8b1d778276aa8f4a178bc Mon Sep 17 00:00:00 2001 From: li-elvin Date: Wed, 4 Aug 2010 08:39:55 +0000 Subject: According to SCSI spec, ANSI version is 3 bits, so 0x7 should be used to get correct ANSI version. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10773 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c | 2 +- MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'MdeModulePkg/Bus') diff --git a/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c b/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c index 1aa67c6..3e510a6 100644 --- a/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c +++ b/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c @@ -1210,7 +1210,7 @@ DiscoverScsiDevice ( // // ANSI-approved version // - ScsiIoDevice->ScsiVersion = (UINT8) (InquiryData.Version & 0x03); + ScsiIoDevice->ScsiVersion = (UINT8) (InquiryData.Version & 0x07); } return TRUE; diff --git a/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c b/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c index 1edff92..94f05a5 100644 --- a/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c +++ b/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c @@ -1195,7 +1195,7 @@ ScsiDiskReadCapacity ( *NumberOfSenseKeys = 0; *NeedRetry = FALSE; - ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03); + ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07); if (ScsiVersion < SCSI_COMMAND_VERSION_3) { // @@ -1505,7 +1505,7 @@ GetMediaInfo ( UINT8 ScsiVersion; UINT8 *Ptr; - ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03); + ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07); ScsiDiskDevice->BlkIo.Media->LowestAlignedLba = 0; ScsiDiskDevice->BlkIo.Media->LogicalBlocksPerPhysicalBlock = 1; @@ -1612,7 +1612,7 @@ ScsiDiskReadSectors ( BlocksRemaining = NumberOfBlocks; BlockSize = ScsiDiskDevice->BlkIo.Media->BlockSize; - ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03); + ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07); // // limit the data bytes that can be transferred by one Read(10) or Read(16) Command @@ -1736,7 +1736,7 @@ ScsiDiskWriteSectors ( BlocksRemaining = NumberOfBlocks; BlockSize = ScsiDiskDevice->BlkIo.Media->BlockSize; - ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03); + ScsiVersion = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07); // // limit the data bytes that can be transferred by one Read(10) or Read(16) Command -- cgit v1.1