]> git.proxmox.com Git - mirror_edk2.git/blame - OvmfPkg/Include/Library/XenIoMmioLib.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / OvmfPkg / Include / Library / XenIoMmioLib.h
CommitLineData
0169352e
AB
1/** @file\r
2* Manage XenBus device path and I/O handles\r
3*\r
4* Copyright (c) 2015, Linaro Ltd. All rights reserved.<BR>\r
5*\r
b26f0cf9 6* SPDX-License-Identifier: BSD-2-Clause-Patent\r
0169352e
AB
7*\r
8**/\r
9\r
10#ifndef _XENIO_MMIO_DEVICE_LIB_H_\r
11#define _XENIO_MMIO_DEVICE_LIB_H_\r
12\r
13/**\r
14\r
15 Install the XENBUS_ROOT_DEVICE_PATH and XENIO_PROTOCOL protocols on\r
16 the handle pointed to by @Handle, or on a new handle if it points to\r
17 NULL\r
18\r
19 @param Handle Pointer to the handle to install the protocols\r
20 on, may point to a NULL handle.\r
21\r
22 @param GrantTableAddress The address of the Xen grant table\r
23\r
24 @retval EFI_SUCCESS Protocols were installed successfully\r
25\r
26 @retval EFI_OUT_OF_RESOURCES The function failed to allocate memory required\r
27 by the XenIo MMIO and device path protocols\r
28\r
29 @return Status code returned by the boot service\r
30 InstallMultipleProtocolInterfaces ()\r
31\r
32**/\r
33EFI_STATUS\r
34XenIoMmioInstall (\r
ac0a286f
MK
35 IN OUT EFI_HANDLE *Handle,\r
36 IN EFI_PHYSICAL_ADDRESS GrantTableAddress\r
0169352e
AB
37 );\r
38\r
0169352e
AB
39/**\r
40\r
41 Uninstall the XENBUS_ROOT_DEVICE_PATH and XENIO_PROTOCOL protocols\r
42\r
43 @param Handle Handle onto which the protocols have been installed\r
44 earlier by XenIoMmioInstall ()\r
45\r
46 @retval EFI_SUCCESS Protocols were uninstalled successfully\r
47\r
48 @return Status code returned by the boot service\r
49 UninstallMultipleProtocolInterfaces ()\r
50\r
51**/\r
52EFI_STATUS\r
53XenIoMmioUninstall (\r
ac0a286f 54 IN EFI_HANDLE Handle\r
0169352e
AB
55 );\r
56\r
57#endif\r