]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/XenBusDxe/XenBus.c
OvmfPkg/PlatformBootManagerLib: port PlatformBdsConnectSequence to UefiBootManagerLib
[mirror_edk2.git] / OvmfPkg / XenBusDxe / XenBus.c
index 5baaddb143bec42912f4210f0a92d9cfa9a36699..ee9526c332529679c84f6c04f1b9ec0540c5ab72 100644 (file)
 STATIC XENBUS_PRIVATE_DATA gXenBusPrivateData;\r
 \r
 STATIC XENBUS_DEVICE_PATH gXenBusDevicePathTemplate = {\r
-  .Vendor.Header.Type = HARDWARE_DEVICE_PATH,\r
-  .Vendor.Header.SubType = HW_VENDOR_DP,\r
-  .Vendor.Header.Length[0] = (UINT8) sizeof (XENBUS_DEVICE_PATH),\r
-  .Vendor.Header.Length[1] = (UINT8) (sizeof (XENBUS_DEVICE_PATH) >> 8),\r
-  .Vendor.Guid = XENBUS_PROTOCOL_GUID,\r
-  .Type = 0,\r
-  .DeviceId = 0\r
+  {                                                 // Vendor\r
+    {                                               // Vendor.Header\r
+      HARDWARE_DEVICE_PATH,                         // Vendor.Header.Type\r
+      HW_VENDOR_DP,                                 // Vendor.Header.SubType\r
+      {\r
+        (UINT8) (sizeof (XENBUS_DEVICE_PATH)),      // Vendor.Header.Length[0]\r
+        (UINT8) (sizeof (XENBUS_DEVICE_PATH) >> 8), // Vendor.Header.Length[1]\r
+      }\r
+    },\r
+    XENBUS_PROTOCOL_GUID,                           // Vendor.Guid\r
+  },\r
+  0,                                                // Type\r
+  0                                                 // DeviceId\r
 };\r
 \r
 \r
@@ -132,7 +138,7 @@ XenBusAddDevice (
   XENBUS_PRIVATE_DATA *Private;\r
   EFI_STATUS Status;\r
   XENBUS_DEVICE_PATH *TempXenBusPath;\r
-  VOID *ChildPciIo;\r
+  VOID *ChildXenIo;\r
 \r
   AsciiSPrint (DevicePath, sizeof (DevicePath),\r
                "device/%a/%a", Type, Id);\r
@@ -176,7 +182,7 @@ XenBusAddDevice (
     Private->XenBusIo.Type = AsciiStrDup (Type);\r
     Private->XenBusIo.Node = AsciiStrDup (DevicePath);\r
     Private->XenBusIo.Backend = BackendPath;\r
-    Private->XenBusIo.DeviceId = AsciiStrDecimalToUintn (Id);\r
+    Private->XenBusIo.DeviceId = (UINT16)AsciiStrDecimalToUintn (Id);\r
     Private->Dev = Dev;\r
 \r
     TempXenBusPath = AllocateCopyPool (sizeof (XENBUS_DEVICE_PATH),\r
@@ -202,8 +208,8 @@ XenBusAddDevice (
     }\r
 \r
     Status = gBS->OpenProtocol (Dev->ControllerHandle,\r
-               &gEfiPciIoProtocolGuid,\r
-               &ChildPciIo, Dev->This->DriverBindingHandle,\r
+               &gXenIoProtocolGuid,\r
+               &ChildXenIo, Dev->This->DriverBindingHandle,\r
                Private->Handle,\r
                EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER);\r
     if (EFI_ERROR (Status)) {\r
@@ -268,7 +274,7 @@ XenBusEnumerateDeviceType (
     XenBusAddDevice (Dev, Type, Directory[Index]);\r
   }\r
 \r
-  FreePool (Directory);\r
+  FreePool ((VOID*)Directory);\r
 }\r
 \r
 \r
@@ -304,7 +310,7 @@ XenBusEnumerateBus (
     XenBusEnumerateDeviceType (Dev, Types[Index]);\r
   }\r
 \r
-  FreePool (Types);\r
+  FreePool ((VOID*)Types);\r
 \r
   return XENSTORE_STATUS_SUCCESS;\r
 }\r