Skip to contentSkip to conversation

ioremap() >= 128Mb (was: Memory problem with bttv driver)

DISCUSSION Kevin Hilman 2 participants 2 messages Apr 10, 2002 – Apr 11, 2002

lore
Share & tools
lore
#0 lore raw

I followed the 'Memory problem with bttv driver' thread from the archives and was curious if there was any resolution.

The basic problem is that I have a machine with 1G physical memory and a device with an 128Mb of on-board memory that I would like to ioremap(). Of course, since VMALLOC_RESERVE is 128Mb this will always fail if there have been any previous calls to vmalloc() or ioremap() (which is aways true when the driver loads as a module.)

So far I have a few workarounds, but no good long term solution.
- boot the kernel with less than 1G on cmdline: mem=768M
- hack VMALLOC_RESERVE

Is it reasonable to make VMALLOC_RESERVE be configurable at boot-time instead of compile time?

Or, is there a better way to get memory-mapped access to all of the devices on-board memory?

Thanks.

Signature · 1 line
Kevin Hilman <[email protected]>
#1 lore raw
Quoted 4 lines

The basic problem is that I have a machine with 1G physical memory and a device with an 128Mb of on-board memory that I would like to ioremap(). Of course, since VMALLOC_RESERVE is 128Mb this will always fail if there have been any previous calls to vmalloc() or ioremap()

Or even if there have been no previous calls, since other things (fixmap, kmap, etc) come out of that space too.

M.