From 058569262fa624b06e7f388f37bcc0f18ba68e88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Tue, 30 Nov 2004 17:33:46 +0000 Subject: [PATCH] get_memory_map() is now silent when TRACE_MMU is not defined. When the 0xe820 memory map method doesn't work for whatever reason (broken BIOS), it currently just assumes to have 32 MB - it now also prints out a warning when it does so. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10298 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kernel/boot/platform/bios_ia32/mmu.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/kernel/boot/platform/bios_ia32/mmu.cpp b/src/kernel/boot/platform/bios_ia32/mmu.cpp index 386ae2a17d..ea43d66829 100644 --- a/src/kernel/boot/platform/bios_ia32/mmu.cpp +++ b/src/kernel/boot/platform/bios_ia32/mmu.cpp @@ -189,6 +189,8 @@ get_memory_map(extended_memory **_extendedMemory) bios_regs regs = { 0, 0, sizeof(extended_memory), 0, 0, (uint32)block, 0, 0}; uint32 count = 0; + TRACE(("get_memory_map()\n")); + do { regs.eax = 0xe820; regs.edx = 'SMAP'; @@ -203,11 +205,13 @@ get_memory_map(extended_memory **_extendedMemory) *_extendedMemory = block; +#ifdef TRACE_MMU dprintf("extended memory info (from 0xe820):\n"); for (uint32 i = 0; i < count; i++) { dprintf(" base 0x%Lx, len 0x%Lx, type %lu\n", block[i].base_addr, block[i].length, block[i].type); } +#endif return count; } @@ -507,6 +511,7 @@ mmu_init(void) } } else { // ToDo: for now! + dprintf("No extended memory block - using 32 MB (fix me!)\n"); uint32 memSize = 32 * 1024 * 1024; // we dont have an extended map, assume memory is contiguously mapped at 0x0