]> git.proxmox.com Git - mirror_edk2.git/commitdiff
OvmfPkg: Fix BhyveFwCtlLib build with VS2019
authorRebecca Cran <rebecca@bsdio.com>
Mon, 30 Nov 2020 05:34:08 +0000 (22:34 -0700)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Mon, 30 Nov 2020 17:49:39 +0000 (17:49 +0000)
Update BhyveFwCtlLib.c to fix problems with UINT32/UINTN types that
prevented Bhyve from building with VS2019.

Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
Message-Id: <20201130053412.2-2-rebecca@bsdio.com>
Acked-by: Peter Grehan <grehan@freebsd.org>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Build-tested-by: Laszlo Ersek <lersek@redhat.com>
OvmfPkg/Library/BhyveFwCtlLib/BhyveFwCtlLib.c

index 2c45ad70ca71fbabaf0d46de8f5c829c6b497f11..8804e1df0b3f0c1a8f44ade19629d3397866277c 100644 (file)
@@ -40,12 +40,12 @@ STATIC CONST CHAR8 mBhyveSig[4] = { 'B', 'H', 'Y', 'V' };
 \r
 STATIC BOOLEAN mBhyveFwCtlSupported = FALSE;\r
 \r
-STATIC INTN mBhyveFwCtlTxid = 0xa5;\r
+STATIC INT32 mBhyveFwCtlTxid = 0xa5;\r
 \r
 /* XXX Maybe a better inbuilt version of this ? */\r
 struct BIoVec {\r
   VOID        *Base;\r
-  UINTN        Len;\r
+  UINT32        Len;\r
 };\r
 \r
 struct MsgRxHdr {\r
@@ -86,14 +86,14 @@ BhyveFwCtl_CvtErr (
 }\r
 \r
 STATIC\r
-UINTN\r
+UINT32\r
 EFIAPI\r
 BIov_WLen (\r
    IN struct BIoVec b[]\r
    )\r
 {\r
-  UINTN        i;\r
-  UINTN        tLen;\r
+  UINT32        i;\r
+  UINT32        tLen;\r
 \r
   tLen = 0;\r
 \r
@@ -106,14 +106,14 @@ BIov_WLen (
 }\r
 \r
 /**\r
-   Utility to send 1-3 bhyes of input as a 4-byte value\r
+   Utility to send 1-3 bytes of input as a 4-byte value\r
    with trailing zeroes.\r
  **/\r
 STATIC\r
 UINT32\r
 BIov_Send_Rem (\r
    IN UINT32        *Data,\r
-   IN UINTN        Len\r
+   IN UINT32        Len\r
    )\r
 {\r
   union {\r
@@ -121,7 +121,7 @@ BIov_Send_Rem (
     UINT32    w;\r
   } u;\r
   UINT8        *cdata;\r
-  UINTN        i;\r
+  UINT32        i;\r
 \r
   cdata = (UINT8 *)Data;\r
   u.w = 0;\r
@@ -140,7 +140,7 @@ STATIC
 VOID\r
 BIov_Send (\r
   IN char    *Data,\r
-  IN UINTN    Len\r
+  IN UINT32    Len\r
   )\r
 {\r
   UINT32    *LData;\r
@@ -166,7 +166,7 @@ BIov_SendAll (
    IN  struct BIoVec b[]\r
    )\r
 {\r
-  INTN        i;\r
+  INT32        i;\r
 \r
   if (b != NULL) {\r
     for (i = 0; b[i].Base; i++) {\r
@@ -182,13 +182,13 @@ STATIC
 VOID\r
 EFIAPI\r
 BhyveFwCtl_MsgSend(\r
-   IN  UINTN    OpCode,\r
+   IN  UINT32    OpCode,\r
    IN  struct BIoVec Data[]\r
    )\r
 {\r
   struct BIoVec hIov[4];\r
   UINT32        Hdr[3];\r
-  UINTN         i;\r
+  UINT32         i;\r
 \r
   /* Set up header as an iovec */\r
   for (i = 0; i < 3; i++) {\r
@@ -200,7 +200,7 @@ BhyveFwCtl_MsgSend(
 \r
   /* Initialize header */\r
   Hdr[0] = BIov_WLen (hIov) + BIov_WLen (Data);\r
-  Hdr[1] = OpCode;\r
+  Hdr[1] = (UINT32)OpCode;\r
   Hdr[2] = mBhyveFwCtlTxid;\r
 \r
   /* Send header and data */\r
@@ -222,8 +222,8 @@ BhyveFwCtl_MsgRecv(
   RETURN_STATUS        Status;\r
   UINT32        *Dp;\r
   UINT32        Rd;\r
-  UINTN         remLen;\r
-  INTN            oLen, xLen;\r
+  UINT32         remLen;\r
+  INT32            oLen, xLen;\r
 \r
   Rd = IoRead32 (FW_PORT);\r
   if (Rd < sizeof(struct MsgRxHdr)) {\r
@@ -283,7 +283,7 @@ STATIC
 RETURN_STATUS\r
 EFIAPI\r
 BhyveFwCtl_Msg(\r
-   IN   UINTN    OpCode,\r
+   IN   UINT32    OpCode,\r
    IN   struct BIoVec Sdata[],\r
    OUT  struct BIoVec Rdata[]\r
    )\r
@@ -306,18 +306,18 @@ RETURN_STATUS
 EFIAPI\r
 BhyveFwCtlGetLen (\r
   IN   CONST CHAR8    *Name,\r
-  IN OUT  UINTN        *Size\r
+  IN OUT  UINT32        *Size\r
   )\r
 {\r
   struct BIoVec        Req[2], Resp[2];\r
   RETURN_STATUS        Status;\r
 \r
   Req[0].Base = (VOID *)Name;\r
-  Req[0].Len  = AsciiStrLen (Name) + 1;\r
+  Req[0].Len  = (UINT32)AsciiStrLen (Name) + 1;\r
   Req[1].Base = NULL;\r
 \r
   Resp[0].Base = Size;\r
-  Resp[0].Len  = sizeof(UINTN);\r
+  Resp[0].Len  = sizeof(UINT32);\r
   Resp[1].Base = NULL;\r
 \r
   Status = BhyveFwCtl_Msg (OP_GET_LEN, Req, Resp);\r
@@ -337,7 +337,7 @@ EFIAPI
 BhyveFwCtlGetVal (\r
   IN   CONST CHAR8    *Name,\r
   OUT  VOID        *Item,\r
-  IN OUT  UINTN        *Size\r
+  IN OUT  UINT32        *Size\r
   )\r
 {\r
   struct BIoVec        Req[2], Resp[2];\r
@@ -348,7 +348,7 @@ BhyveFwCtlGetVal (
       return RETURN_INVALID_PARAMETER;\r
 \r
   Req[0].Base = (VOID *)Name;\r
-  Req[0].Len  = AsciiStrLen(Name) + 1;\r
+  Req[0].Len  = (UINT32)AsciiStrLen(Name) + 1;\r
   Req[1].Base = NULL;\r
 \r
   Resp[0].Base = &FwGetvalBuf;\r
@@ -363,7 +363,7 @@ BhyveFwCtlGetVal (
    *     multiple iovecs.\r
    */\r
   if ((Status == RETURN_SUCCESS) || (Status == RETURN_BUFFER_TOO_SMALL)) {\r
-    *Size = FwGetvalBuf.fSize;\r
+    *Size = (UINT32)FwGetvalBuf.fSize;\r
     CopyMem (Item, FwGetvalBuf.fData, *Size);\r
   }\r
 \r
@@ -387,9 +387,9 @@ BhyveFwCtlGet (
     return RETURN_UNSUPPORTED;\r
 \r
   if (Item == NULL) {\r
-    Status = BhyveFwCtlGetLen (Name, Size);\r
+    Status = BhyveFwCtlGetLen (Name, (UINT32*)Size);\r
   } else {\r
-    Status = BhyveFwCtlGetVal (Name, Item, Size);\r
+    Status = BhyveFwCtlGetVal (Name, Item, (UINT32*)Size);\r
   }\r
 \r
   return Status;\r
@@ -406,7 +406,7 @@ BhyveFwCtlInitialize (
           VOID\r
          )\r
 {\r
-  UINTN        i;\r
+  UINT32        i;\r
   UINT8        ch;\r
 \r
   DEBUG ((DEBUG_INFO, "FwCtlInitialize\n"));\r