]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Bus/Pci/XhciPei/UsbHcMem.h
MdeModulePkg/XhciPei: Support IoMmu.
[mirror_edk2.git] / MdeModulePkg / Bus / Pci / XhciPei / UsbHcMem.h
index c314e920040a0bd3931f907f8efb6b6d46a078fd..c315e6e268e81458ab9ab6d57787432d2684d7ec 100644 (file)
@@ -29,6 +29,7 @@ struct _USBHC_MEM_BLOCK {
   UINT8                 *Buf;\r
   UINT8                 *BufHost;\r
   UINTN                 BufLen; // Memory size in bytes\r
+  VOID                  *Mapping;\r
   USBHC_MEM_BLOCK       *Next;\r
 };\r
 \r
@@ -112,6 +113,7 @@ UsbHcGetHostAddrForPciAddr (
   @param  HostAddress           The system memory address to map to the PCI controller.\r
   @param  DeviceAddress         The resulting map address for the bus master PCI controller to\r
                                 use to access the hosts HostAddress.\r
+  @param  Mapping               A resulting value to pass to Unmap().\r
 \r
   @retval EFI_SUCCESS           Success to allocate aligned pages.\r
   @retval EFI_INVALID_PARAMETER Pages or Alignment is not valid.\r
@@ -123,7 +125,8 @@ UsbHcAllocateAlignedPages (
   IN UINTN                      Pages,\r
   IN UINTN                      Alignment,\r
   OUT VOID                      **HostAddress,\r
-  OUT EFI_PHYSICAL_ADDRESS      *DeviceAddress\r
+  OUT EFI_PHYSICAL_ADDRESS      *DeviceAddress,\r
+  OUT VOID                      **Mapping\r
   );\r
 \r
 /**\r
@@ -131,12 +134,14 @@ UsbHcAllocateAlignedPages (
 \r
   @param  HostAddress           The system memory address to map to the PCI controller.\r
   @param  Pages                 The number of pages to free.\r
+  @param  Mapping               The mapping value returned from Map().\r
 \r
 **/\r
 VOID\r
 UsbHcFreeAlignedPages (\r
   IN VOID               *HostAddress,\r
-  IN UINTN              Pages\r
+  IN UINTN              Pages,\r
+  IN VOID               *Mapping\r
   );\r
 \r
 #endif\r