diff options
| author | Warner Losh <imp@FreeBSD.org> | 2006-06-20 23:40:04 +0000 |
|---|---|---|
| committer | Warner Losh <imp@FreeBSD.org> | 2006-06-20 23:40:04 +0000 |
| commit | c0386612b8ea5da91eacc2f7bf93d4083fe687ad (patch) | |
| tree | f1eeb0773cacb45650e0db8cb508f3ac4da8286e /sys/arm | |
| parent | e94bb9b26e25c4046b6683851ff45036d142166c (diff) | |
Notes
Diffstat (limited to 'sys/arm')
| -rw-r--r-- | sys/arm/at91/kb920x_machdep.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/arm/at91/kb920x_machdep.c b/sys/arm/at91/kb920x_machdep.c index da6c6a6365fd..42ce0f8139c7 100644 --- a/sys/arm/at91/kb920x_machdep.c +++ b/sys/arm/at91/kb920x_machdep.c @@ -182,10 +182,9 @@ static const struct pmap_devmap kb920x_devmap[] = { extern vm_offset_t ksym_start, ksym_end; #endif -static int +static long board_init(void) { - uint32_t memsize; uint32_t *SDRAMC = (uint32_t *)(AT91RM92_BASE + AT91RM92_SDRAMC_BASE); uint32_t cr, mr; int banks, rows, cols, bw; /* log2 size */ @@ -196,8 +195,7 @@ board_init(void) banks = (cr & AT91RM92_SDRAMC_CR_NB_4) ? 2 : 1; rows = ((cr & AT91RM92_SDRAMC_CR_NR_MASK) >> 2) + 11; cols = (cr & AT91RM92_SDRAMC_CR_NC_MASK) + 8; - memsize = 1 << (cols + rows + banks + bw); - return (memsize); + return (1 << (cols + rows + banks + bw)); } void * @@ -360,6 +358,8 @@ initarm(void *arg, void *arg2) cpu_domains(DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)); cninit(); memsize = board_init(); + physmem = memsize / PAGE_SIZE; + /* * Pages were allocated during the secondary bootstrap for the * stacks for different CPU modes. @@ -428,7 +428,7 @@ initarm(void *arg, void *arg2) phys_avail[3] = 0; /* Do basic tuning, hz etc */ init_param1(); - init_param2(memsize / PAGE_SIZE); + init_param2(physmem); avail_end = KERNPHYSADDR + memsize - 1; kdb_init(); return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP - |
