Messages in this thread | | | Subject | Re: Ping-Pong Compatible DMA buffer chaining | From | Alan Cox <> | Date | Tue, 03 Jan 2006 01:08:40 +0000 |
| |
On Llu, 2005-12-26 at 11:35 +0530, Deven Balani wrote: > 1) The SATA Host Controller supports a DMA Logic which has Ping Pong Buffers. > How Can I allocate a linear contiguous buffer and give it to the > Buffer Descriptors of the Host Controller. I believe consistent alloc > would help me in this regard. But How could I do a chaining of Buffers > in a Ping Pong Scenario which has Buffer Descriptors.
Depends entirely on your hardware.
> 2) The libata is using Scatter-Gather List to send Device Identify > Command. Is it necessary to have a Scatter-Gather List for non-PCI ARM > platforms. Can I bypass this mechanism.
It is neccessary as the user space virtual memory will be fragmented in physical space (unless you are using MMUless Linux when it will be far less fragmented).
If the platform is an MMUless one then you can fill in the host structure and indicate that you support a maximum scatter gather list size of one. This will break up I/O's when neccessary to keep within that limit but this will hurt your performance by causing a lot more requests on a non MMUless system.
Alan
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |