diff --git a/src/system/kernel/arch/arm/paging/32bit/ARMPagingStructures32Bit.cpp b/src/system/kernel/arch/arm/paging/32bit/ARMPagingStructures32Bit.cpp index 59513ebfb9..43a55f4a55 100644 --- a/src/system/kernel/arch/arm/paging/32bit/ARMPagingStructures32Bit.cpp +++ b/src/system/kernel/arch/arm/paging/32bit/ARMPagingStructures32Bit.cpp @@ -65,11 +65,10 @@ ARMPagingStructures32Bit::Init(page_directory_entry* virtualPageDir, pgdir_virt = virtualPageDir; pgdir_phys = physicalPageDir; -#if 0 // IRA: handle UART better; identity map of DEVICE_BASE from loader gets wiped here // zero out the bottom portion of the new pgdir memset(pgdir_virt + FIRST_USER_PGDIR_ENT, 0, NUM_USER_PGDIR_ENTS * sizeof(page_directory_entry)); -#endif + // insert this new map into the map list { int state = disable_interrupts(); diff --git a/src/system/kernel/arch/arm/paging/32bit/paging.h b/src/system/kernel/arch/arm/paging/32bit/paging.h index a0f05f88eb..b6479c2351 100644 --- a/src/system/kernel/arch/arm/paging/32bit/paging.h +++ b/src/system/kernel/arch/arm/paging/32bit/paging.h @@ -21,12 +21,12 @@ #define FIRST_USER_PGDIR_ENT (VADDR_TO_PDENT(USER_BASE)) #define NUM_USER_PGDIR_ENTS (VADDR_TO_PDENT(ROUNDUP(USER_SIZE, \ - B_PAGE_SIZE * 1024))) + B_PAGE_SIZE * ARM_MMU_L2_COARSE_ENTRY_COUNT))) #define FIRST_KERNEL_PGDIR_ENT (VADDR_TO_PDENT(KERNEL_BASE)) #define NUM_KERNEL_PGDIR_ENTS (VADDR_TO_PDENT(KERNEL_SIZE)) -static const size_t kPageTableAlignment = 1024 * B_PAGE_SIZE; +static const size_t kPageTableAlignment = ARM_MMU_L2_COARSE_ENTRY_COUNT * B_PAGE_SIZE; typedef uint32 page_table_entry;