The Linux UIO drivers (at drivers/uio in the kernel tree) do not provide any facilities for the user-mode side to set up DMA buffers. What's needed is a way of allocating a chunk of physical memory, mapping it into the user-mode process' memory space and returning both the physical and the virtual address to the user-mode process.
This should be a straightforward job for someone with the requisite degree of experience with Linux kernel development.
Please post, with your bid, a brief outline as to how you'll implement this requirement and an example (probably needs to only be one line!) of how the user-mode program will call the driver.
I have 3 years of expiriens in developing Linux kernel modules (one of the my very first projects: [login to view URL]) and Mac OS X Kernel extensions. Please, see pm for details.