#define ARM_PAGE_SIZE 4096 /* small page on ARM */
#define ARM_SECTION_SIZE (1024 * 1024) /* 1 MB section */
-#define ARM_BIG_PAGE_SIZE (ARM_SECTION_SIZE)
/* Page table specific flags. */
#define ARM_VM_PAGETABLE (1 << 1) /* Page table */
#define ARM_VM_SECTION_WT ((0x6 << 12) | ARM_VM_SECTION_CACHEABLE)
/* shareable device */
#define ARM_VM_SECTION_DEVICE (ARM_VM_SECTION_BUFFERABLE)
-#define ARM_VM_BIGPAGE (ARM_VM_SECTION) /* 1MB section */
/* Page directory specific flags. */
#define ARM_VM_PAGEDIR (1 << 0) /* Page directory */
* if that is less than the requested range.
*/
offset = linaddr & ARM_VM_OFFSET_MASK_1MB; /* Offset in 1MB window. */
- *bytes = MIN(*bytes, ARM_BIG_PAGE_SIZE - offset);
+ *bytes = MIN(*bytes, ARM_SECTION_SIZE - offset);
/* Return the linear address of the start of the new mapping. */
- return ARM_BIG_PAGE_SIZE*pde + offset;
+ return ARM_SECTION_SIZE*pde + offset;
}
/* We don't expect to ever see this.
* LSC Impossible with the previous test.
- if(pde_v & ARM_VM_BIGPAGE) {
+ if(pde_v & ARM_VM_SECTION) {
*physical = pde_v & ARM_VM_SECTION_MASK;
if(ptent) *ptent = pde_v;
*physical += virtual & ARM_VM_OFFSET_MASK_1MB;
u32_t flags = ARM_VM_SECTION
| ARM_VM_SECTION_USER
| ARM_VM_SECTION_DOMAIN;
- phys = i * ARM_BIG_PAGE_SIZE;
+ phys = i * ARM_SECTION_SIZE;
pagedir[i] = phys | flags;
}
}
int pde;
u32_t mapped = 0, kern_phys = kern_phys_start;
- assert(!(kern_vir_start % ARM_BIG_PAGE_SIZE));
- assert(!(kern_phys_start % ARM_BIG_PAGE_SIZE));
- pde = kern_vir_start / ARM_BIG_PAGE_SIZE; /* start pde */
+ assert(!(kern_vir_start % ARM_SECTION_SIZE));
+ assert(!(kern_phys_start % ARM_SECTION_SIZE));
+ pde = kern_vir_start / ARM_SECTION_SIZE; /* start pde */
while(mapped < kern_kernlen) {
pagedir[pde] = (kern_phys & ARM_VM_PDE_MASK) | ARM_VM_SECTION
| ARM_VM_SECTION_SUPER
| ARM_VM_SECTION_DOMAIN
| ARM_VM_SECTION_WT;
- mapped += ARM_BIG_PAGE_SIZE;
- kern_phys += ARM_BIG_PAGE_SIZE;
+ mapped += ARM_SECTION_SIZE;
+ kern_phys += ARM_SECTION_SIZE;
pde++;
}
return pde; /* free pde */
#define PTF_SHARE ARM_VM_PTE_SHAREABLE
#define ARCH_VM_DIR_ENTRIES ARM_VM_DIR_ENTRIES
-#define ARCH_BIG_PAGE_SIZE ARM_BIG_PAGE_SIZE
+#define ARCH_BIG_PAGE_SIZE ARM_SECTION_SIZE
#define ARCH_VM_ADDR_MASK ARM_VM_ADDR_MASK
#define ARCH_VM_PDE_MASK ARM_VM_PDE_MASK
#define ARCH_VM_PDE_PRESENT ARM_VM_PDE_PRESENT
#define ARCH_VM_PTE_USER ARM_VM_PTE_USER
#define ARCH_PAGEDIR_SIZE ARM_PAGEDIR_SIZE
#define ARCH_VM_PTE_RW ARM_VM_PTE_RW
-#define ARCH_VM_BIGPAGE ARM_VM_BIGPAGE
+#define ARCH_VM_BIGPAGE ARM_VM_SECTION
#define ARCH_VM_PT_ENTRIES ARM_VM_PT_ENTRIES
#define ARCH_VM_PTE_RO ARM_VM_PTE_RO