summaryrefslogtreecommitdiffstats
path: root/OvmfPkg
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2017-02-21 14:43:00 +0100
committerLaszlo Ersek <lersek@redhat.com>2017-02-22 03:35:43 +0100
commit21ca2f28e6c5e006820956d7d56150184faeef85 (patch)
tree38e588def3f67e18213728de335eda194743395c /OvmfPkg
parent5583a8a4ffd0dda9e069c9676e7ce69bc9fd5514 (diff)
downloadedk2-21ca2f28e6c5e006820956d7d56150184faeef85.tar.gz
edk2-21ca2f28e6c5e006820956d7d56150184faeef85.tar.bz2
edk2-21ca2f28e6c5e006820956d7d56150184faeef85.zip
OvmfPkg/QemuFwCfg: introduce FW_CFG_IO_SELECTOR, adapt the package
Introduce the FW_CFG_IO_SELECTOR macro for IO Port 0x510 (the Selector Register), and update all references in OvmfPkg. Cc: Jordan Justen <jordan.l.justen@intel.com> Suggested-by: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg')
-rw-r--r--OvmfPkg/Include/IndustryStandard/QemuFwCfg.h6
-rw-r--r--OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c2
-rw-r--r--OvmfPkg/SmmControl2Dxe/SmiFeatures.c2
3 files changed, 8 insertions, 2 deletions
diff --git a/OvmfPkg/Include/IndustryStandard/QemuFwCfg.h b/OvmfPkg/Include/IndustryStandard/QemuFwCfg.h
index c7e9b5c382..776bfe88ae 100644
--- a/OvmfPkg/Include/IndustryStandard/QemuFwCfg.h
+++ b/OvmfPkg/Include/IndustryStandard/QemuFwCfg.h
@@ -43,6 +43,12 @@
#define FW_CFG_DMA_CTL_WRITE BIT4
//
+// The fw_cfg registers can be found at these IO Ports, on the IO-mapped
+// platforms (Ia32 and X64).
+//
+#define FW_CFG_IO_SELECTOR 0x510
+
+//
// Numerically defined keys.
//
typedef enum {
diff --git a/OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c b/OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c
index 7744873217..1387ea85f3 100644
--- a/OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c
+++ b/OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c
@@ -42,7 +42,7 @@ QemuFwCfgSelectItem (
)
{
DEBUG ((EFI_D_INFO, "Select Item: 0x%x\n", (UINT16)(UINTN) QemuFwCfgItem));
- IoWrite16 (0x510, (UINT16)(UINTN) QemuFwCfgItem);
+ IoWrite16 (FW_CFG_IO_SELECTOR, (UINT16)(UINTN) QemuFwCfgItem);
}
diff --git a/OvmfPkg/SmmControl2Dxe/SmiFeatures.c b/OvmfPkg/SmmControl2Dxe/SmiFeatures.c
index e070969065..352ffa0173 100644
--- a/OvmfPkg/SmmControl2Dxe/SmiFeatures.c
+++ b/OvmfPkg/SmmControl2Dxe/SmiFeatures.c
@@ -281,7 +281,7 @@ SaveSmiFeatures (
S3SaveState, // This
EFI_BOOT_SCRIPT_IO_WRITE_OPCODE, // OpCode
EfiBootScriptWidthUint16, // Width
- (UINT64)0x510, // Address
+ (UINT64)FW_CFG_IO_SELECTOR, // Address
(UINTN)1, // Count
&FeaturesOkItemAsUint16 // Buffer
);