diff options
author | Laszlo Ersek <lersek@redhat.com> | 2016-11-30 11:35:00 +0100 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2016-12-05 19:44:36 +0100 |
commit | de01f72cc77d58162cb3ba7cd06f931fc9d13822 (patch) | |
tree | 18449caa3c6150f9f6ebef153a8476de58e4ff8f /OvmfPkg/Include | |
parent | 5297c0bf832df31107d1e1681d72728a2caf5765 (diff) | |
download | edk2-de01f72cc77d58162cb3ba7cd06f931fc9d13822.tar.gz edk2-de01f72cc77d58162cb3ba7cd06f931fc9d13822.tar.bz2 edk2-de01f72cc77d58162cb3ba7cd06f931fc9d13822.zip |
ArmVirtPkg, OvmfPkg: QemuFwCfgLib: move DMA-related defs to lib class
Move the type and macro definitions related to QEMU's DMA-like fw_cfg
access method to the library class header.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg/Include')
-rw-r--r-- | OvmfPkg/Include/Library/QemuFwCfgLib.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/OvmfPkg/Include/Library/QemuFwCfgLib.h b/OvmfPkg/Include/Library/QemuFwCfgLib.h index 7c29422fbd..40a07456c5 100644 --- a/OvmfPkg/Include/Library/QemuFwCfgLib.h +++ b/OvmfPkg/Include/Library/QemuFwCfgLib.h @@ -23,6 +23,14 @@ //
#define QEMU_FW_CFG_FNAME_SIZE 56
+//
+// Macros for the FW_CFG_DMA_ACCESS.Control bitmap (in native encoding).
+//
+#define FW_CFG_DMA_CTL_ERROR BIT0
+#define FW_CFG_DMA_CTL_READ BIT1
+#define FW_CFG_DMA_CTL_SKIP BIT2
+#define FW_CFG_DMA_CTL_SELECT BIT3
+
typedef enum {
QemuFwCfgItemSignature = 0x0000,
QemuFwCfgItemInterfaceVersion = 0x0001,
@@ -59,6 +67,17 @@ typedef enum { } FIRMWARE_CONFIG_ITEM;
+//
+// Communication structure for the DMA access method. All fields are encoded in
+// big endian.
+//
+#pragma pack (1)
+typedef struct {
+ UINT32 Control;
+ UINT32 Length;
+ UINT64 Address;
+} FW_CFG_DMA_ACCESS;
+#pragma pack ()
/**
Returns a boolean indicating if the firmware configuration interface
|