aboutsummaryrefslogtreecommitdiff
path: root/src/mainboard/emulation/qemu-q35/memmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/emulation/qemu-q35/memmap.c')
-rw-r--r--src/mainboard/emulation/qemu-q35/memmap.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/mainboard/emulation/qemu-q35/memmap.c b/src/mainboard/emulation/qemu-q35/memmap.c
index a8b1433714..10b35d7fe2 100644
--- a/src/mainboard/emulation/qemu-q35/memmap.c
+++ b/src/mainboard/emulation/qemu-q35/memmap.c
@@ -8,21 +8,14 @@
#include <mainboard/emulation/qemu-i440fx/memory.h>
#include <mainboard/emulation/qemu-i440fx/fw_cfg.h>
-#define EXT_TSEG_MBYTES 0x50
+#include "q35.h"
-#define SMRAMC 0x9d
-#define G_SMRAME (1 << 3)
-#define D_LCK (1 << 4)
-#define D_CLS (1 << 5)
-#define D_OPEN (1 << 6)
-#define ESMRAMC 0x9e
-#define T_EN (1 << 0)
-#define TSEG_SZ_MASK (3 << 1)
-#define H_SMRAME (1 << 7)
+/* QEMU-specific register */
+#define EXT_TSEG_MBYTES 0x50
void smm_region(uintptr_t *start, size_t *size)
{
- uint8_t esmramc = pci_read_config8(PCI_DEV(0, 0, 0), ESMRAMC);
+ uint8_t esmramc = pci_read_config8(HOST_BRIDGE, ESMRAMC);
switch ((esmramc & TSEG_SZ_MASK) >> 1) {
case 0:
@@ -35,7 +28,7 @@ void smm_region(uintptr_t *start, size_t *size)
*size = 8 * MiB;
break;
default:
- *size = pci_read_config16(PCI_DEV(0, 0, 0), EXT_TSEG_MBYTES) * MiB;
+ *size = pci_read_config16(HOST_BRIDGE, EXT_TSEG_MBYTES) * MiB;
}
*start = qemu_get_memory_size() * KiB - *size;