]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Bus/Pci/AtapiPassThru/Dxe/AtapiPassThru.c
Partially make EdkModulePkg pass intel IPF compiler with /W4 /WX switched on.
[mirror_edk2.git] / EdkModulePkg / Bus / Pci / AtapiPassThru / Dxe / AtapiPassThru.c
index f11158bb9ce4c56ff3f99d68e775648e50fca898..28be3f702643a9f09f6f211a1db901baddeebd80 100644 (file)
@@ -45,7 +45,7 @@ static IDE_BASE_REGISTERS   gAtapiIoPortRegisters[2] = {
   { 0x170, { 0x171 }, 0x172, 0x173, 0x174, 0x175, 0x176, { 0x177 }, { 0x376 }, 0x377, 0 } \r
 };\r
 \r
-static SCSI_COMMAND_SET     gEndTable = { 0xff, 0xff };\r
+static SCSI_COMMAND_SET     gEndTable = { 0xff, (DATA_DIRECTION) 0xff };\r
 \r
 ///\r
 /// This table contains all the supported ATAPI commands.\r
@@ -83,7 +83,7 @@ static SCSI_COMMAND_SET     gSupportedATAPICommands[] = {
   { OP_WRITE_10,                    DataOut },\r
   { OP_WRITE_12,                    DataOut },\r
   { OP_WRITE_AND_VERIFY,            DataOut },\r
-  { 0xff,                           0xff    } \r
+  { 0xff,                           (DATA_DIRECTION) 0xff    } \r
 };\r
 \r
 static CHAR16               *gControllerNameString  = (CHAR16 *) L"ATAPI Controller";\r
@@ -595,14 +595,8 @@ AtapiScsiPassThruBuildDevicePath (
   IN OUT EFI_DEVICE_PATH_PROTOCOL       **DevicePath\r
   )\r
 {\r
-  ATAPI_SCSI_PASS_THRU_DEV  *AtapiScsiPrivate;\r
   EFI_DEV_PATH              *Node;\r
 \r
-  //\r
-  // Retrieve Device Private Data Structure.\r
-  //\r
-  AtapiScsiPrivate = ATAPI_SCSI_PASS_THRU_DEV_FROM_THIS (This);\r
-\r
   //\r
   // Validate parameters passed in.\r
   //\r
@@ -995,7 +989,7 @@ SubmitBlockingIoCommand (
                           PacketCommand,\r
                           Packet->DataBuffer,\r
                           &(Packet->TransferLength),\r
-                          Packet->DataDirection,\r
+                          (DATA_DIRECTION) Packet->DataDirection,\r
                           TimeoutInMicroSeconds\r
                           );\r
   if (!EFI_ERROR (PacketCommandStatus) || (Packet->SenseData == NULL)) {\r
@@ -1319,11 +1313,9 @@ AtapiPassThruPioReadWriteData (
     //\r
     // get current data transfer size from Cylinder Registers.\r
     //\r
-    WordCount =\r
-      (\r
-        (ReadPortB (AtapiScsiPrivate->PciIo, AtapiScsiPrivate->IoPort->CylinderMsb) << 8) |\r
-        ReadPortB (AtapiScsiPrivate->PciIo, AtapiScsiPrivate->IoPort->CylinderLsb)\r
-      ) & 0xffff;\r
+    WordCount = ReadPortB (AtapiScsiPrivate->PciIo, AtapiScsiPrivate->IoPort->CylinderMsb) << 8;\r
+    WordCount = WordCount | ReadPortB (AtapiScsiPrivate->PciIo, AtapiScsiPrivate->IoPort->CylinderLsb);\r
+    WordCount = WordCount & 0xffff;\r
     WordCount /= 2;\r
 \r
     //\r