Its very nasty (get the ATM release and read mmuio.c. But dont do it too
soon after lunch).
> What kind of kernel memory can you mmap() into user space?
Any of it
> kmalloc()'d? Has it to be GFP_DMA? vmalloc()'d? Static?
All of the above.
> The CCD has 768*516 pixels with 16 bit each (792.576 bytes). So
> kmalloc() doesn't cut it. If you want to mmap() something, it has to
> be continuous, right?
No. Your kernel driver can map arbitary pages into the map. If you want
you can have a /dev/kmembackwards device for example that maps the kernel
pages in reverse order.