Changes in kernel/arch/arm32/src/mm/page.c [9d58539:8f9d70b] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/src/mm/page.c
r9d58539 r8f9d70b 52 52 void page_arch_init(void) 53 53 { 54 int flags = PAGE_CACHEABLE ;54 int flags = PAGE_CACHEABLE | PAGE_EXEC; 55 55 page_mapping_operations = &pt_mapping_operations; 56 56 57 #ifdef PROCESSOR_ARCH_armv6 58 /* Select ARMv6 and ARMv7 memory model */ 59 SCTLR_write(SCTLR_read() | SCTLR_EXTENDED_PT_EN_FLAG); 60 #endif 57 61 page_table_lock(AS_KERNEL, true); 58 62 59 uintptr_t cur;60 61 63 /* Kernel identity mapping */ 62 for (cur = PHYSMEM_START_ADDR; 63 cur < min(config.identity_size, config.physmem_end); 64 //FIXME: We need to consider the possibility that 65 //identity_base > identity_size and physmem_end. 66 //This might lead to overflow if identity_size is too big. 67 for (uintptr_t cur = PHYSMEM_START_ADDR; 68 cur < min(KA2PA(config.identity_base) + 69 config.identity_size, config.physmem_end); 64 70 cur += FRAME_SIZE) 65 71 page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, flags);
Note:
See TracChangeset
for help on using the changeset viewer.