Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
cubietruck boot panic
I'm getting a panic in arm32_kernel_vm_init() on a cubietruck with a
current kernel loaded using u-boot.
awin_bootstrap: cpu status: 0=0x1 1=0
awin_bootstrap: 2 cpus present
sdram_config = 0x30e3, memsize = 512MB
arm32_bootmem_init: memstart=0x40000000, memsize=0x20000000,
kernelstart=0x80000000
arm32_bootmem_init: kernelend=0x80518000
arm32_bootmem_init: adding 458100 free pages: [0x80518000..0x5fffffff] (VA
0x80518000)
arm32_bootmem_init: adding 131072 free pages: [0x40000000..0x7fffffff] (VA
0x80000000)
arm32_kernel_vm_init: 0 L2 pages are needed to map 0x54a000 kernel bytes
[snip]
Listing Chunks
arm32_kernel_vm_init: pv 0x804fabb4: chunk VA 0x80000000..0x8053bfff (PA
0x80000000, prot 3, cache 1)
Mapping Chunks
arm32_kernel_vm_init: mapping chunk VA 0x80000000..0xbfffffff (PA 0x40000000,
prot 3, cache 1)
pmap_map_chunk: pa=0x40000000 va=0x80000000 size=0x40000000 resid=0x40000000
prot=0x3 cache=1
t 3, cache 1)
pmap_map_chunk: pa=0x80000000 va=0x80000000 size=0x53c000 resid=0x53c000
prot=0x3 cache=1
SSSSSpanic: pmap_map_chunk: no L2 table for VA 0x80500000
This looks to me to be because the mapallmem_p parameter is true:
/*
* Now we know how many L2 pages it will take. If we've mapped
* all of memory, then it won't take any.
*/
const size_t KERNEL_L2PT_KERNEL_NUM = mapallmem_p
? 0 : round_page(kernel_size + L2_S_SEGSIZE - 1) / L2_S_SEGSIZE;
#ifdef VERBOSE_INIT_ARM
printf("%s: %zu L2 pages are needed to map %#zx kernel bytes\n",
__func__, KERNEL_L2PT_KERNEL_NUM, kernel_size);
#endif
The memsize value looks wrong too.
Robert Swindells
Home |
Main Index |
Thread Index |
Old Index