summaryrefslogtreecommitdiffstats
path: root/sys/arm/xscale/i80321/ep80219_machdep.c
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2014-05-15 19:09:31 +0000
committerian <ian@FreeBSD.org>2014-05-15 19:09:31 +0000
commit24fc8c91c2a303dba31262f57dc8f84b411be5dd (patch)
tree2e4dfb68203c51cfd6406ba8d87578b7f5b99263 /sys/arm/xscale/i80321/ep80219_machdep.c
parentc287c5d5301219fe2fabc25222edae29e314c213 (diff)
downloadFreeBSD-src-24fc8c91c2a303dba31262f57dc8f84b411be5dd.zip
FreeBSD-src-24fc8c91c2a303dba31262f57dc8f84b411be5dd.tar.gz
MFC r257549, r261642
Don't create a distinct free page pool for segregating allocations that are accessed through the direct map unless the kernel configuration actually includes a direct map. Only a few configurations do, and for the rest the unnecessary free page pool is a small pessimization. Remove the ARM_USE_SMALL_ALLOC option and code related to it.
Diffstat (limited to 'sys/arm/xscale/i80321/ep80219_machdep.c')
-rw-r--r--sys/arm/xscale/i80321/ep80219_machdep.c35
1 files changed, 0 insertions, 35 deletions
diff --git a/sys/arm/xscale/i80321/ep80219_machdep.c b/sys/arm/xscale/i80321/ep80219_machdep.c
index 4857fcd..c5e9141 100644
--- a/sys/arm/xscale/i80321/ep80219_machdep.c
+++ b/sys/arm/xscale/i80321/ep80219_machdep.c
@@ -231,21 +231,6 @@ initarm(struct arm_boot_params *abp)
valloc_pages(kernelstack, KSTACK_PAGES);
alloc_pages(minidataclean.pv_pa, 1);
valloc_pages(msgbufpv, round_page(msgbufsize) / PAGE_SIZE);
-#ifdef ARM_USE_SMALL_ALLOC
- freemempos -= PAGE_SIZE;
- freemem_pt = trunc_page(freemem_pt);
- freemem_after = freemempos - ((freemem_pt - 0xa0100000) /
- PAGE_SIZE) * sizeof(struct arm_small_page);
- arm_add_smallalloc_pages((void *)(freemem_after + 0x20000000),
- (void *)0xc0100000, freemem_pt - 0xa0100000, 1);
- freemem_after -= ((freemem_after - 0xa0001000) / PAGE_SIZE) *
- sizeof(struct arm_small_page);
- arm_add_smallalloc_pages((void *)(freemem_after + 0x20000000),
- (void *)0xc0001000, trunc_page(freemem_after) - 0xa0001000, 0);
-
- freemempos = trunc_page(freemem_after);
- freemempos -= PAGE_SIZE;
-#endif
/*
* Allocate memory for the l1 and l2 page tables. The scheme to avoid
* wasting memory by allocating the l1pt on the first 16k memory was
@@ -285,15 +270,6 @@ initarm(struct arm_boot_params *abp)
VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
-#ifdef ARM_USE_SMALL_ALLOC
- if ((freemem_after + 2 * PAGE_SIZE) <= afterkern) {
- arm_add_smallalloc_pages((void *)(freemem_after),
- (void*)(freemem_after + PAGE_SIZE),
- afterkern - (freemem_after + PAGE_SIZE), 0);
-
- }
-#endif
-
/* Map the Mini-Data cache clean area. */
xscale_setup_minidata(l1pagetable, afterkern,
minidataclean.pv_pa);
@@ -359,10 +335,6 @@ initarm(struct arm_boot_params *abp)
arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL);
pmap_curmaxkvaddr = afterkern + PAGE_SIZE;
- /*
- * ARM_USE_SMALL_ALLOC uses dump_avail, so it must be filled before
- * calling pmap_bootstrap.
- */
dump_avail[0] = 0xa0000000;
dump_avail[1] = 0xa0000000 + memsize;
dump_avail[2] = 0;
@@ -375,13 +347,6 @@ initarm(struct arm_boot_params *abp)
mutex_init();
i = 0;
-#ifdef ARM_USE_SMALL_ALLOC
- phys_avail[i++] = 0xa0000000;
- phys_avail[i++] = 0xa0001000; /*
- *XXX: Gross hack to get our
- * pages in the vm_page_array
- . */
-#endif
phys_avail[i++] = round_page(virtual_avail - KERNBASE + IQ80321_SDRAM_START);
phys_avail[i++] = trunc_page(0xa0000000 + memsize - 1);
phys_avail[i++] = 0;
OpenPOWER on IntegriCloud