That is probably the most efficient approach. If its PCI you dont need to
pull DMA pages. You can also grab a chunk of pages if your board can do
scatter gather pulls from them.
Using mmap() means you can map the same memory into the address space of
the user app and the kernel. That is probably as good as you get for small
stuff.
> Basically, I'm looking for a fast way for software running on our
> mediaprocessor to stream in data from the host. The applications
> being audio/video/imaging codecs that are running on the
> mediaprocessor would get their input data from the linux host.
With 2.3.x you can use kiovecs and the routines with them to lock down user
pages and get a list of addresses. So you can
foo_write
get kiovec
lock pages
translate addresses and send message to media processor
returning irq
unlock pages
return done
Alan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/