Messages in this thread | | | Date | Mon, 24 Jan 2000 19:26:18 -0800 | From | William Waddington <> | Subject | DMA to/from user buffers |
| |
Hello,
I think I finally understand that fa.linux.kernel is a read-only shadow of this list. Of course, it is possible that my post there went unanswered because it was an inappropriate post, or old news, or maybe just dumb news. This subject falls somewhere between drivers and kernel, but fiddling with page tables probably puts it in the kernel camp (please advise). It is another question entirely, whether someone who has been posting to a read-only NG deserves to be read at all........
I do hardware design and driver writing for a small company that builds interfaces to large format/high speed plotters and DR11-W devices. I have ported drivers to 2.0.x and 2.2.x ( thank you Mr. Rubini) from Solaris and HPUX.
The drivers use a read/write interface, and the boards can do scatter-gather DMA. With Solaris and HPUX, I can pin and map user buffers for DMA. With Linux, I am resorting to copying to a kernel buffer. At the plotter's data rates, it isn't a big performance hit, but it is not optimum. The DR11s cause a bigger hit ~10MB/Sec. It also seems less than perfect to reserve kernel memory for the life of the driver (usually from system on to power failure).
I understand that Mr. T. doesn't want drivers walking the page tables, and prefers kernel buffers made available to applications. Unfortunately, our customers have lots of legacy application code that expects a read/write interface. Inclusion of physio()-like capability would facilitate their conversion to Linux.
Any chance of Robert Kaiser's user DMA kernel patch, or something like it, getting included in the "official" kernel? IMHO, there is potential for improvement in performance and memory use efficiency.
Sorry for the long post, and thanks to all. Bill
BTW ... we have always posted our (clunky) source with our (simple) drivers.
--------------------------------------- Bill Waddington Bainbridge Island, WA, USA csbwaddington@worldnet.att.net ikoncorp@worldnet.att.net ---------------------------------------
- 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/
| |