<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/dma/ste_dma40.c, branch linux-3.5.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.5.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.5.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-05-11T06:34:38Z</updated>
<entry>
<title>dmaengine: Use dma_sg_len(sg) instead of sg-&gt;length</title>
<updated>2012-05-11T06:34:38Z</updated>
<author>
<name>Lars-Peter Clausen</name>
</author>
<published>2012-04-25T18:50:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fdaf9c4b22247a6cc6cda9459be3e52764c14d95'/>
<id>urn:sha1:fdaf9c4b22247a6cc6cda9459be3e52764c14d95</id>
<content type='text'>
sg-&gt;length may or may not contain the length of the dma region to transfer,
depending on the architecture - dma_sg_len(sg) always will though. For the
architectures which use the drivers modified by this patch it probably is the
case that sg-&gt;length contains the dma transfer length. But to be consistent and
future proof change them to use dma_sg_len.

To quote Russel King:
	sg-&gt;length is meaningless to something performing DMA.

	In cases where sg_dma_len(sg) and sg-&gt;length are the same storage, then
	there's no problem. But scatterlists _can_ (and one some architectures) do
	split them - especially when you have an IOMMU which can allow you to
	combine a scatterlist into fewer entries.

	So, anything using sg-&gt;length for the size of a scatterlist's DMA transfer
	_after_ a call to dma_map_sg() is almost certainly buggy.

The patch has been generated using the following coccinelle patch:
&lt;smpl&gt;
@@
struct scatterlist *sg;
expression X;
@@
-sg[X].length
+sg_dma_len(&amp;sg[X])
@@
struct scatterlist *sg;
@@
-sg-&gt;length
+sg_dma_len(sg)
&lt;/smpl&gt;

Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dma/ste_dma40: fix erroneous comparison</title>
<updated>2012-04-23T12:37:05Z</updated>
<author>
<name>Linus Walleij</name>
</author>
<published>2012-04-12T16:12:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7e426da823fc7cd428b82ff2cf3615da24c73352'/>
<id>urn:sha1:7e426da823fc7cd428b82ff2cf3615da24c73352</id>
<content type='text'>
A small fallout from Vinod's conversions to dma_transfer_direction,
this small comparison was done with a dma_data_direction instead.
Fix it by comparing against the correct enum.

Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dma/ste_dma40: explicitly include regulator consumer header</title>
<updated>2012-04-23T12:37:05Z</updated>
<author>
<name>Linus Walleij</name>
</author>
<published>2012-04-12T16:12:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=15e4b78d7338a41b020d29dab7ac13a234ebe833'/>
<id>urn:sha1:15e4b78d7338a41b020d29dab7ac13a234ebe833</id>
<content type='text'>
The patch "ARM: amba: Remove AMBA level regulator support" breaks
the DMA40 driver since the &lt;linux/amba/bus.h&gt; header implicitly
included the regulator consumer header. So include it explicitly
and fix the build error.

Cc: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dma40: Improve the logic of stopping logical chan</title>
<updated>2012-04-23T12:26:17Z</updated>
<author>
<name>Narayanan G</name>
</author>
<published>2012-02-09T07:11:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1bdae6f49c52af3a58998cdb051dbd5b942f9273'/>
<id>urn:sha1:1bdae6f49c52af3a58998cdb051dbd5b942f9273</id>
<content type='text'>
can be directly stopped by issuing a SUSPEND_REQ on the EE
bits. There is no need to suspend the physical channel and
restart it.

Also, the support for pre-V2 hw is discontinued.

EE bits for writing:

00: disable only if AS=11 or AS=00
01: enable
10: suspend_req only if AS=01 &amp; EE=01 or EE=11
11: round / no change for writing

Signed-off-by: Narayanan G &lt;narayanan.gopalakrishnan@stericsson.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dmaengine: add context parameter to prep_slave_sg and prep_dma_cyclic</title>
<updated>2012-03-21T13:50:23Z</updated>
<author>
<name>Alexandre Bounine</name>
</author>
<published>2012-03-08T20:35:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=185ecb5f4fd43911c35956d4cc7d94a1da30417f'/>
<id>urn:sha1:185ecb5f4fd43911c35956d4cc7d94a1da30417f</id>
<content type='text'>
Add context parameter to device_prep_slave_sg() and device_prep_dma_cyclic()
interfaces to allow passing client/target specific information associated
with the data transfer.
Modify all affected DMA engine drivers.

Signed-off-by: Alexandre Bounine &lt;alexandre.bounine@idt.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dmaengine: consolidate initialization of cookies</title>
<updated>2012-03-13T06:07:22Z</updated>
<author>
<name>Russell King - ARM Linux</name>
</author>
<published>2012-03-06T22:35:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d3ee98cdcd6198ea1cf75c603178acc8a805b69b'/>
<id>urn:sha1:d3ee98cdcd6198ea1cf75c603178acc8a805b69b</id>
<content type='text'>
Provide a common function to initialize a channels cookie values.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Tested-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Jassi Brar &lt;jassisinghbrar@gmail.com&gt;
[imx-sdma.c &amp; mxs-dma.c]
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dmaengine: consolidate tx_status functions</title>
<updated>2012-03-13T06:07:14Z</updated>
<author>
<name>Russell King - ARM Linux</name>
</author>
<published>2012-03-06T22:35:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=96a2af41c78b1fbb1f567a3486bdc63f7b31c5fd'/>
<id>urn:sha1:96a2af41c78b1fbb1f567a3486bdc63f7b31c5fd</id>
<content type='text'>
Now that we have the completed cookie in the dma_chan structure, we
can consolidate the tx_status functions by providing a function to set
the txstate structure and returning the DMA status.  We also provide
a separate helper to set the residue for cookies which are still in
progress.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Tested-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Jassi Brar &lt;jassisinghbrar@gmail.com&gt;
[imx-sdma.c &amp; mxs-dma.c]
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dmaengine: provide a common function for completing a dma descriptor</title>
<updated>2012-03-13T06:07:01Z</updated>
<author>
<name>Russell King - ARM Linux</name>
</author>
<published>2012-03-06T22:35:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7fbce07c6ce26a25b4e0cb5f241c361fde87901'/>
<id>urn:sha1:f7fbce07c6ce26a25b4e0cb5f241c361fde87901</id>
<content type='text'>
Provide a common function to do the cookie mechanics for completing
a DMA descriptor.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Tested-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Jassi Brar &lt;jassisinghbrar@gmail.com&gt;
[imx-sdma.c &amp; mxs-dma.c]
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dmaengine: consolidate assignment of DMA cookies</title>
<updated>2012-03-13T06:06:52Z</updated>
<author>
<name>Russell King - ARM Linux</name>
</author>
<published>2012-03-06T22:34:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=884485e1f12dcd39390f042e772cdbefc9ebb750'/>
<id>urn:sha1:884485e1f12dcd39390f042e772cdbefc9ebb750</id>
<content type='text'>
Everyone deals with assigning DMA cookies in the same way (it's part of
the API so they should be), so lets consolidate the common code into a
helper function to avoid this duplication.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Tested-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Jassi Brar &lt;jassisinghbrar@gmail.com&gt;
[imx-sdma.c &amp; mxs-dma.c]
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dmaengine: add private header file</title>
<updated>2012-03-13T06:06:44Z</updated>
<author>
<name>Russell King - ARM Linux</name>
</author>
<published>2012-03-06T22:34:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d2ebfb335b0426deb1a4fb14e4e926d81ecd8235'/>
<id>urn:sha1:d2ebfb335b0426deb1a4fb14e4e926d81ecd8235</id>
<content type='text'>
Add a local private header file to contain definitions and declarations
which should only be used by DMA engine drivers.

We also fix linux/dmaengine.h to use LINUX_DMAENGINE_H to guard against
multiple inclusion.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Tested-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Jassi Brar &lt;jassisinghbrar@gmail.com&gt;
[imx-sdma.c &amp; mxs-dma.c]
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@linux.intel.com&gt;
</content>
</entry>
</feed>
