diff options
-rw-r--r-- | src/acpi.c | 5 | ||||
-rw-r--r-- | src/config.h | 15 |
2 files changed, 9 insertions, 11 deletions
@@ -156,7 +156,6 @@ struct acpi_20_hpet { u16 min_tick; u8 page_protect; } PACKED; -#define ACPI_HPET_ADDRESS 0xFED00000UL #define HPET_ID 0x000 #define HPET_PERIOD 0x004 @@ -468,7 +467,7 @@ static void* build_hpet(void) { struct acpi_20_hpet *hpet; - const void *hpet_base = (void *)ACPI_HPET_ADDRESS; + const void *hpet_base = (void *)BUILD_HPET_ADDRESS; u32 hpet_vendor = readl(hpet_base + HPET_ID) >> 16; u32 hpet_period = readl(hpet_base + HPET_PERIOD); @@ -487,7 +486,7 @@ build_hpet(void) * emulated hpet */ hpet->timer_block_id = cpu_to_le32(0x8086a201); - hpet->addr.address = cpu_to_le32(ACPI_HPET_ADDRESS); + hpet->addr.address = cpu_to_le32(BUILD_HPET_ADDRESS); build_header((void*)hpet, HPET_SIGNATURE, sizeof(*hpet), 1); return hpet; diff --git a/src/config.h b/src/config.h index d182b13..b0187a4 100644 --- a/src/config.h +++ b/src/config.h @@ -22,6 +22,8 @@ #define CONFIG_MAX_HIGHTABLE (64*1024) // Largest supported externaly facing drive id #define CONFIG_MAX_EXTDRIVE 16 +// Number of bytes the smbios may be and still live in the f-segment +#define BUILD_MAX_SMBIOS_FSEG 600 #define CONFIG_MODEL_ID 0xFC #define CONFIG_SUBMODEL_ID 0x00 @@ -38,20 +40,17 @@ #define BUILD_BIOS_SIZE 0x10000 // 32KB for shadow ram copying (works around emulator deficiencies) #define BUILD_BIOS_TMP_ADDR 0x30000 +#define BUILD_SMM_INIT_ADDR 0x38000 +#define BUILD_SMM_ADDR 0xa8000 +#define BUILD_SMM_SIZE 0x8000 #define BUILD_MAX_HIGHMEM 0xe0000000 #define BUILD_PCIMEM_START 0xe0000000 -#define BUILD_PCIMEM_SIZE (BUILD_PCIMEM_END - BUILD_PCIMEM_START) #define BUILD_PCIMEM_END 0xfec00000 /* IOAPIC is mapped at */ -#define BUILD_APIC_ADDR 0xfee00000 #define BUILD_IOAPIC_ADDR 0xfec00000 - -#define BUILD_SMM_INIT_ADDR 0x38000 -#define BUILD_SMM_ADDR 0xa8000 -#define BUILD_SMM_SIZE 0x8000 - -#define BUILD_MAX_SMBIOS_FSEG 600 +#define BUILD_HPET_ADDRESS 0xfed00000 +#define BUILD_APIC_ADDR 0xfee00000 // Important real-mode segments #define SEG_IVT 0x0000 |