AnsweredAssumed Answered

How can I get more vmalloc/ioremap space?

Question asked by Cary O'Brien on Sep 23, 2014
Latest reply on Sep 24, 2014 by Scott Wood

I have a P1022 board with 256MB of NOR Flash and 2GB of DDR.

 

I need to map all of the flash, as well as several other devices, and I"m running

out of vmalloc/ioremap space.

Here's what the kernel says at startup:

 

[    0.000000] Kernel virtual memory layout:
[    0.000000]   * 0xfffbf000..0xfffff000  : fixmap
[    0.000000]   * 0xff800000..0xffc00000  : highmem PTEs
[    0.000000]   * 0xff7fd000..0xff800000  : early ioremap
[    0.000000]   * 0xf1000000..0xff7fd000  : vmalloc & ioremap

 

So I have less than 256MB.  I can map some of flash by cutting

down the defined size in the dtb, but we may need the space.

If I try to define the whole flash the cfi probe routine can't

vmalloc() the space for the flash and nothing is accessible.

 

I tried using vmalloc=1024m and it did nothing

I tried adjusting CONFIG_KERNEL_PHYSICAL_START and

that didn't seem to do anything.

 

Any guidance on how to adjust these parameters?  I'd rather

have a plan than start changing things without understanding

the consequences.

 

Thanks,

 

Cary O'Brien

Outcomes