]> git.proxmox.com Git - mirror_edk2.git/commitdiff
According to SCSI spec, ANSI version is 3 bits, so 0x7 should be used to get correct...
authorli-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 4 Aug 2010 08:39:55 +0000 (08:39 +0000)
committerli-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 4 Aug 2010 08:39:55 +0000 (08:39 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10773 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c
MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c

index 1aa67c63867a654084bd215493687f1c602aea30..3e510a65a75602a755a8debf16f10a96857160ba 100644 (file)
@@ -1210,7 +1210,7 @@ DiscoverScsiDevice (
     //\r
     // ANSI-approved version\r
     //\r
-    ScsiIoDevice->ScsiVersion = (UINT8) (InquiryData.Version & 0x03);\r
+    ScsiIoDevice->ScsiVersion = (UINT8) (InquiryData.Version & 0x07);\r
   }\r
 \r
   return TRUE;\r
index 1edff92c8e1018088eb8dc5b521f8fbea0fb8607..94f05a5e04934ea91dd1ea7214f4056f09199f40 100644 (file)
@@ -1195,7 +1195,7 @@ ScsiDiskReadCapacity (
 \r
   *NumberOfSenseKeys  = 0;\r
   *NeedRetry          = FALSE;\r
-  ScsiVersion         = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03);\r
+  ScsiVersion         = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07);\r
 \r
   if (ScsiVersion < SCSI_COMMAND_VERSION_3) {\r
     //\r
@@ -1505,7 +1505,7 @@ GetMediaInfo (
   UINT8       ScsiVersion;\r
   UINT8       *Ptr;\r
 \r
-  ScsiVersion    = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03);\r
+  ScsiVersion    = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07);\r
   ScsiDiskDevice->BlkIo.Media->LowestAlignedLba               = 0;\r
   ScsiDiskDevice->BlkIo.Media->LogicalBlocksPerPhysicalBlock  = 1;\r
   \r
@@ -1612,7 +1612,7 @@ ScsiDiskReadSectors (
 \r
   BlocksRemaining   = NumberOfBlocks;\r
   BlockSize         = ScsiDiskDevice->BlkIo.Media->BlockSize;\r
-  ScsiVersion       = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03);\r
+  ScsiVersion       = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07);\r
   \r
   //\r
   // limit the data bytes that can be transferred by one Read(10) or Read(16) Command\r
@@ -1736,7 +1736,7 @@ ScsiDiskWriteSectors (
 \r
   BlocksRemaining   = NumberOfBlocks;\r
   BlockSize         = ScsiDiskDevice->BlkIo.Media->BlockSize;\r
-  ScsiVersion       = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x03);\r
+  ScsiVersion       = (UINT8)(ScsiDiskDevice->InquiryData.Version & 0x07);\r
 \r
   //\r
   // limit the data bytes that can be transferred by one Read(10) or Read(16) Command\r