<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/dma/ste_dma40_ll.c, branch v4.16</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>dmaengine: ste_dma40_ll: make d40_width_to_bits static</title>
<updated>2016-06-08T03:29:55+00:00</updated>
<author>
<name>Ben Dooks</name>
<email>ben.dooks@codethink.co.uk</email>
</author>
<published>2016-06-07T15:50:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0161df13250035e7599f3cce6039bd046b7647dc'/>
<id>0161df13250035e7599f3cce6039bd046b7647dc</id>
<content type='text'>
Fix warning due to d40_width_to_bits() not being used outside
this file. Fixes:

drivers/dma/ste_dma40_ll.c:13:4: warning: symbol 'd40_width_to_bits' was not declared. Should it be static?

Signed-off-by: Ben Dooks &lt;ben.dooks@codethink.co.uk&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix warning due to d40_width_to_bits() not being used outside
this file. Fixes:

drivers/dma/ste_dma40_ll.c:13:4: warning: symbol 'd40_width_to_bits' was not declared. Should it be static?

Signed-off-by: Ben Dooks &lt;ben.dooks@codethink.co.uk&gt;
Signed-off-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40_ll: Replace meaningless register set with comment</title>
<updated>2013-06-04T09:12:10+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-15T09:51:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8cc5af1255966ed82117249a64fe8b13edabc8c5'/>
<id>8cc5af1255966ed82117249a64fe8b13edabc8c5</id>
<content type='text'>
Unsure of the author's intentions, rather than just removing the nop,
we're replacing it with a comment containing the possible intention
of the statement OR:ing with 0.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Unsure of the author's intentions, rather than just removing the nop,
we're replacing it with a comment containing the possible intention
of the statement OR:ing with 0.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: Convert data_width from register bit format to value</title>
<updated>2013-06-04T09:12:09+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-15T09:51:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=43f2e1a3be5d83004f09bcb53c46f273e7473a00'/>
<id>43f2e1a3be5d83004f09bcb53c46f273e7473a00</id>
<content type='text'>
When a DMA client requests and configures a DMA channel, it requests
data_width in Bytes. The DMA40 driver then swiftly converts it over to
the necessary register bit value. Unfortunately, for any subsequent
calculations we have to shift '1' by the bit pattern (1 &lt;&lt; data_width)
times to make any sense of it.

This patch flips the semantics on its head and only converts the value
to its respective register bit pattern when writing to registers. This
way we can use the true data_width (in Bytes) value.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a DMA client requests and configures a DMA channel, it requests
data_width in Bytes. The DMA40 driver then swiftly converts it over to
the necessary register bit value. Unfortunately, for any subsequent
calculations we have to shift '1' by the bit pattern (1 &lt;&lt; data_width)
times to make any sense of it.

This patch flips the semantics on its head and only converts the value
to its respective register bit pattern when writing to registers. This
way we can use the true data_width (in Bytes) value.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40_ll: Use the BIT macro to replace ugly '(1 &lt;&lt; x)'s</title>
<updated>2013-06-04T09:12:09+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-15T09:51:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=16db3411ebd4777b0b1b7207b10730b726fb751c'/>
<id>16db3411ebd4777b0b1b7207b10730b726fb751c</id>
<content type='text'>
The aim is to make the code that little more readable.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The aim is to make the code that little more readable.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: Replace ST-E's home-brew DMA direction defs with generic ones</title>
<updated>2013-06-04T09:12:08+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-15T09:51:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2c2b62d5d911da10c0fc37c31458baf4047d531c'/>
<id>2c2b62d5d911da10c0fc37c31458baf4047d531c</id>
<content type='text'>
STEDMA40_*_TO_* direction definitions are identical in all but name to
the pre-defined generic DMA_*_TO_* ones. Let's make things easy by not
duplicating such things.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
STEDMA40_*_TO_* direction definitions are identical in all but name to
the pre-defined generic DMA_*_TO_* ones. Let's make things easy by not
duplicating such things.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: Remove unnecessary call to d40_phy_cfg()</title>
<updated>2013-05-23T19:13:19+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-15T09:51:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=57e65ad77fef1b026f5bdf1cd417bb6346b24fdf'/>
<id>57e65ad77fef1b026f5bdf1cd417bb6346b24fdf</id>
<content type='text'>
The majority of configuration done in d40_phy_config() pertains
to physical channels. Move the call over to runtime config which
has different code paths for physical and logical channels already,
and make it an exclusive physical channel config function as the
name implies, and drop the is_log argument.

Since we moved the call to runtime_config() it only gets called
for device transfers, so encode the small snippet of configuration
pertaining to memcpy channels into the d40_config_memcpy()
function.

Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
[rewrote the commit message]
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The majority of configuration done in d40_phy_config() pertains
to physical channels. Move the call over to runtime config which
has different code paths for physical and logical channels already,
and make it an exclusive physical channel config function as the
name implies, and drop the is_log argument.

Since we moved the call to runtime_config() it only gets called
for device transfers, so encode the small snippet of configuration
pertaining to memcpy channels into the d40_config_memcpy()
function.

Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
[rewrote the commit message]
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: Separate Logical Global Interrupt Mask (GIM) unmasking</title>
<updated>2013-05-23T19:13:16+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-15T09:51:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9778256b9810d2c758a7537a43825b7d81b5765f'/>
<id>9778256b9810d2c758a7537a43825b7d81b5765f</id>
<content type='text'>
During the initial setup of a logical channel, it is necessary to unmask
the GIM in order to receive generated terminal count and error interrupts.
We're separating out this required code so it will be possible to move
the remaining code in d40_phy_cfg(), which is mostly runtime configuration
into the runtime_config() routine.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During the initial setup of a logical channel, it is necessary to unmask
the GIM in order to receive generated terminal count and error interrupts.
We're separating out this required code so it will be possible to move
the remaining code in d40_phy_cfg(), which is mostly runtime configuration
into the runtime_config() routine.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: Amalgamate DMA source and destination channel numbers</title>
<updated>2013-05-23T19:11:51+00:00</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2013-05-03T14:31:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=26955c07dcf3c36b6427e52fec0f725300ca079e'/>
<id>26955c07dcf3c36b6427e52fec0f725300ca079e</id>
<content type='text'>
Devices which utilise DMA use the same device numbers for transmitting
and receiving. In this patch we encode the source and destination
information into one single attribute. We can subsequently exploit the
direction attribute to see which of the transfer directions are being
described. This also lessens the burden on platform data.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Devices which utilise DMA use the same device numbers for transmitting
and receiving. In this patch we encode the source and destination
information into one single attribute. We can subsequently exploit the
direction attribute to see which of the transfer directions are being
described. This also lessens the burden on platform data.

Cc: Dan Williams &lt;djbw@fb.com&gt;
Cc: Per Forlin &lt;per.forlin@stericsson.com&gt;
Cc: Rabin Vincent &lt;rabin@rab.in&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: minor cosmetic fixes</title>
<updated>2013-01-14T09:51:01+00:00</updated>
<author>
<name>Fabio Baltieri</name>
<email>fabio.baltieri@linaro.org</email>
</author>
<published>2012-12-13T16:12:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f26e03ad2b50be50c98f8ecb1fd9dbdf94db91ab'/>
<id>f26e03ad2b50be50c98f8ecb1fd9dbdf94db91ab</id>
<content type='text'>
This patch contains various non functional cosmetic fixes.

Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Fabio Baltieri &lt;fabio.baltieri@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch contains various non functional cosmetic fixes.

Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Fabio Baltieri &lt;fabio.baltieri@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dmaengine: ste_dma40: use writel_relaxed for lcxa</title>
<updated>2013-01-14T09:50:15+00:00</updated>
<author>
<name>Per Forlin</name>
<email>per.forlin@stericsson.com</email>
</author>
<published>2011-09-28T07:32:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8a5d2039ab9050a8a2e649eaf3ca4e372a7709f1'/>
<id>8a5d2039ab9050a8a2e649eaf3ca4e372a7709f1</id>
<content type='text'>
lcpa and lcla are written often and the cache_sync() overhead in writel
is costly, especially for wlan where every single network packet (in RX
mode) corresponds to a separate DMA transfer.

Signed-off-by: Per Forlin &lt;per.forlin@stericsson.com&gt;
Reviewed-by: Narayanan Gopalakrishnan &lt;narayanan.gopalakrishnan@stericsson.com&gt;
Reviewed-by: Rabin Vincent &lt;rabin.vincent@stericsson.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Fabio Baltieri &lt;fabio.baltieri@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
lcpa and lcla are written often and the cache_sync() overhead in writel
is costly, especially for wlan where every single network packet (in RX
mode) corresponds to a separate DMA transfer.

Signed-off-by: Per Forlin &lt;per.forlin@stericsson.com&gt;
Reviewed-by: Narayanan Gopalakrishnan &lt;narayanan.gopalakrishnan@stericsson.com&gt;
Reviewed-by: Rabin Vincent &lt;rabin.vincent@stericsson.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Vinod Koul &lt;vinod.koul@intel.com&gt;
Signed-off-by: Fabio Baltieri &lt;fabio.baltieri@linaro.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
