3 Definitions for the VirtIo MMIO Device Library
5 Copyright (C) 2013, ARM Ltd
7 SPDX-License-Identifier: BSD-2-Clause-Patent
11 #ifndef _VIRTIO_MMIO_DEVICE_LIB_H_
12 #define _VIRTIO_MMIO_DEVICE_LIB_H_
16 Initialize VirtIo Device and Install VIRTIO_DEVICE_PROTOCOL protocol
18 @param[in] BaseAddress Base Address of the VirtIo MMIO Device
20 @param[in] Handle Handle of the device the driver should be attached
23 @retval EFI_SUCCESS The VirtIo Device has been installed
26 @retval EFI_OUT_OF_RESOURCES The function failed to allocate memory required
27 by the Virtio MMIO device initialization.
29 @retval EFI_UNSUPPORTED BaseAddress does not point to a VirtIo MMIO
32 @return Status code returned by InstallProtocolInterface
33 Boot Service function.
37 VirtioMmioInstallDevice (
38 IN PHYSICAL_ADDRESS BaseAddress
,
44 Uninstall the VirtIo Device
46 @param[in] Handle Handle of the device where the VirtIo Device protocol
47 should have been installed.
49 @retval EFI_SUCCESS The device has been un-initialized successfully.
51 @return Status code returned by UninstallProtocolInterface
52 Boot Service function.
56 VirtioMmioUninstallDevice (
60 #endif // _VIRTIO_MMIO_DEVICE_LIB_H_