Thread (52 messages) 52 messages, 9 authors, 2012-10-09

Re: [RFC PATCH 08/13] mmc: omap_hsmmc: limit max_segs with the EDMA DMAC

From: Matt Porter <hidden>
Date: 2012-09-21 19:01:30
Also in: linux-arm-kernel, linux-mmc, linux-omap, linux-spi, lkml

On Fri, Sep 21, 2012 at 07:47:21PM +0100, Russell King wrote:
On Fri, Sep 21, 2012 at 10:45:29PM +0530, S, Venkatraman wrote:
quoted
On Thu, Sep 20, 2012 at 8:13 PM, Matt Porter [off-list ref] wrote:
quoted
The EDMA DMAC has a hardware limitation that prevents supporting
scatter gather lists with any number of segments. Since the EDMA
DMA Engine driver sets the maximum segments to 16, we do the
same.

Note: this can be removed once the DMA Engine API supports an
API to query the DMAC's segment limitations.
I wouldn't want to bind the properties of EDMA to omap_hsmmc as this patch
suggests. Why don't we have a max_segs property, which when explicitly specified
in DT, will override the default ?
Why not have a generic way that DMA engine can export these kinds of
properties?
That's exactly what my note above is suggesting...

Something along the lines of:

	struct slave_sg_caps
	{
		int max_segs;	/* <0 is no limit */
	}

	struct slave_sg_cap *
	dmaengine_get_slave_sg_caps(struct dma_chan *chan);

I'm sure there are or will be other characteristics worth providing to
slave drivers.

-Matt

------------------------------------------------------------------------------
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219671;13503038;y?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help