]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/VirtioGpuDxe/Commands.c
OvmfPkg/Virtio: take RingBaseShift in SetQueueAddress()
[mirror_edk2.git] / OvmfPkg / VirtioGpuDxe / Commands.c
index 962087cfec97cdb4a42fdc9b5f0cde954e3c1409..5cb0031612077ea0bc096765d9f2f48773d8f826 100644 (file)
@@ -3,6 +3,7 @@
   VirtIo GPU initialization, and commands (primitives) for the GPU device.\r
 \r
   Copyright (C) 2016, Red Hat, Inc.\r
+  Copyright (c) 2017, AMD Inc, All rights reserved.<BR>\r
 \r
   This program and the accompanying materials are licensed and made available\r
   under the terms and conditions of the BSD License which accompanies this\r
@@ -127,11 +128,15 @@ VirtioGpuInit (
   //\r
   // [...] population of virtqueues [...]\r
   //\r
-  Status = VirtioRingInit (QueueSize, &VgpuDev->Ring);\r
+  Status = VirtioRingInit (VgpuDev->VirtIo, QueueSize, &VgpuDev->Ring);\r
   if (EFI_ERROR (Status)) {\r
     goto Failed;\r
   }\r
-  Status = VgpuDev->VirtIo->SetQueueAddress (VgpuDev->VirtIo, &VgpuDev->Ring);\r
+  Status = VgpuDev->VirtIo->SetQueueAddress (\r
+                              VgpuDev->VirtIo,\r
+                              &VgpuDev->Ring,\r
+                              0\r
+                              );\r
   if (EFI_ERROR (Status)) {\r
     goto ReleaseQueue;\r
   }\r
@@ -148,7 +153,7 @@ VirtioGpuInit (
   return EFI_SUCCESS;\r
 \r
 ReleaseQueue:\r
-  VirtioRingUninit (&VgpuDev->Ring);\r
+  VirtioRingUninit (VgpuDev->VirtIo, &VgpuDev->Ring);\r
 \r
 Failed:\r
   //\r
@@ -183,7 +188,7 @@ VirtioGpuUninit (
   // configuration.\r
   //\r
   VgpuDev->VirtIo->SetDeviceStatus (VgpuDev->VirtIo, 0);\r
-  VirtioRingUninit (&VgpuDev->Ring);\r
+  VirtioRingUninit (VgpuDev->VirtIo, &VgpuDev->Ring);\r
 }\r
 \r
 /**\r