]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.c
fixed to build under IPF.
[mirror_edk2.git] / Nt32Pkg / WinNtBlockIoDxe / WinNtBlockIo.c
index 3f32d2028e67fd0041f3c30b0c686a328659c9b4..f020d6baed0e42f307d30525bb2e93252d3ddb1d 100644 (file)
@@ -1,4 +1,4 @@
-/*++\r
+/**@file\r
 \r
 Copyright (c) 2006 - 2007, Intel Corporation\r
 All rights reserved. This program and the accompanying materials\r
@@ -58,7 +58,7 @@ Abstract:
 \r
   * Other names and brands may be claimed as the property of others.\r
 \r
---*/\r
+**/\r
 #include <Uefi.h>\r
 #include <WinNtDxe.h>\r
 #include <Protocol/WinNtThunk.h>\r
@@ -110,14 +110,17 @@ InitializeWinNtBlockIo(
   //\r
   // Install driver model protocol(s).\r
   //\r
-  Status = EfiLibInstallAllDriverProtocols (\r
+  Status = EfiLibInstallAllDriverProtocols2 (\r
              ImageHandle,\r
              SystemTable,\r
              &gWinNtBlockIoDriverBinding,\r
              ImageHandle,\r
              &gWinNtBlockIoComponentName,\r
+             &gWinNtBlockIoComponentName2,\r
              NULL,\r
-             &gWinNtBlockIoDriverDiagnostics\r
+             NULL,\r
+             &gWinNtBlockIoDriverDiagnostics,\r
+             &gWinNtBlockIoDriverDiagnostics2\r
              );\r
   ASSERT_EFI_ERROR (Status);\r
 \r
@@ -156,7 +159,7 @@ Returns:
   Status = gBS->OpenProtocol (\r
                   Handle,\r
                   &gEfiWinNtIoProtocolGuid,\r
-                  &WinNtIo,\r
+                  (VOID **) &WinNtIo,\r
                   This->DriverBindingHandle,\r
                   Handle,\r
                   EFI_OPEN_PROTOCOL_BY_DRIVER\r
@@ -231,7 +234,7 @@ Returns:
   Status = gBS->OpenProtocol (\r
                   Handle,\r
                   &gEfiWinNtIoProtocolGuid,\r
-                  &WinNtIo,\r
+                  (VOID **) &WinNtIo,\r
                   This->DriverBindingHandle,\r
                   Handle,\r
                   EFI_OPEN_PROTOCOL_BY_DRIVER\r
@@ -284,10 +287,10 @@ Returns:
       WriteProtected  = (BOOLEAN) (*Str == 'O');\r
       Str             = GetNextElementPastTerminator (Str, ';');\r
 \r
-      NumberOfBlocks  = Atoi (Str);\r
+      NumberOfBlocks  = StrDecimalToUintn (Str);\r
       if (NumberOfBlocks != 0) {\r
         Str       = GetNextElementPastTerminator (Str, ';');\r
-        BlockSize = Atoi (Str);\r
+        BlockSize = StrDecimalToUintn (Str);\r
         if (BlockSize != 0) {\r
           //\r
           // If we get here the variable is valid so do the work.\r
@@ -358,7 +361,7 @@ Returns:
   Status = gBS->OpenProtocol (\r
                   Handle,\r
                   &gEfiBlockIoProtocolGuid,\r
-                  &BlockIo,\r
+                  (VOID **) &BlockIo,\r
                   This->DriverBindingHandle,\r
                   Handle,\r
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
@@ -405,7 +408,6 @@ Returns:
   return Status;\r
 }\r
 \r
-STATIC\r
 CHAR16 *\r
 GetNextElementPastTerminator (\r
   IN  CHAR16  *EnvironmentVariable,\r
@@ -441,7 +443,6 @@ Returns:
   return Ptr;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 WinNtBlockIoCreateMapping (\r
   IN EFI_WIN_NT_IO_PROTOCOL             *WinNtIo,\r
@@ -509,12 +510,21 @@ Returns:
 \r
   Private->ControllerNameTable  = NULL;\r
 \r
-  AddUnicodeString (\r
+  AddUnicodeString2 (\r
     "eng",\r
     gWinNtBlockIoComponentName.SupportedLanguages,\r
     &Private->ControllerNameTable,\r
-    Private->Filename\r
+    Private->Filename,\r
+    TRUE\r
     );\r
+  AddUnicodeString2 (\r
+    "en",\r
+    gWinNtBlockIoComponentName2.SupportedLanguages,\r
+    &Private->ControllerNameTable,\r
+    Private->Filename,\r
+    FALSE\r
+    );\r
+\r
 \r
   BlockIo = &Private->BlockIo;\r
   BlockIo->Revision = EFI_BLOCK_IO_PROTOCOL_REVISION;\r
@@ -576,7 +586,6 @@ Returns:
   return Status;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 WinNtBlockIoOpenDevice (\r
   WIN_NT_BLOCK_IO_PRIVATE                 *Private\r
@@ -696,7 +705,6 @@ Done:
   return Status;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 WinNtBlockIoError (\r
   IN WIN_NT_BLOCK_IO_PRIVATE      *Private\r
@@ -766,7 +774,6 @@ Returns:
   return Status;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 WinNtBlockIoReadWriteCommon (\r
   IN  WIN_NT_BLOCK_IO_PRIVATE     *Private,\r
@@ -862,7 +869,6 @@ Returns:
   return EFI_SUCCESS;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 EFIAPI\r
 WinNtBlockIoReadBlocks (\r
@@ -929,7 +935,6 @@ Done:
   return Status;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 EFIAPI\r
 WinNtBlockIoWriteBlocks (\r
@@ -999,7 +1004,6 @@ Done:
 \r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 EFIAPI\r
 WinNtBlockIoFlushBlocks (\r
@@ -1023,7 +1027,6 @@ WinNtBlockIoFlushBlocks (
   return EFI_SUCCESS;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 EFIAPI\r
 WinNtBlockIoResetBlock (\r
@@ -1063,52 +1066,6 @@ WinNtBlockIoResetBlock (
   return EFI_SUCCESS;\r
 }\r
 \r
-UINTN\r
-Atoi (\r
-  CHAR16  *String\r
-  )\r
-/*++\r
-\r
-Routine Description:\r
-\r
-  Convert a unicode string to a UINTN\r
-\r
-Arguments:\r
-\r
-  String - Unicode string.\r
-\r
-Returns:\r
-\r
-  UINTN of the number represented by String.\r
-\r
---*/\r
-{\r
-  UINTN   Number;\r
-  CHAR16  *Str;\r
-\r
-  //\r
-  // skip preceeding white space\r
-  //\r
-  Str = String;\r
-  while ((*Str) && (*Str == ' ')) {\r
-    Str++;\r
-  }\r
-  //\r
-  // Convert ot a Number\r
-  //\r
-  Number = 0;\r
-  while (*Str != '\0') {\r
-    if ((*Str >= '0') && (*Str <= '9')) {\r
-      Number = (Number * 10) +*Str - '0';\r
-    } else {\r
-      break;\r
-    }\r
-\r
-    Str++;\r
-  }\r
-\r
-  return Number;\r
-}\r
 \r
 EFI_STATUS\r
 SetFilePointer64 (\r