From: lars@metafoo.de (Lars-Peter Clausen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] Documentation: dmaengine: Add a documentation for the dma controller API
Date: Thu, 31 Jul 2014 14:44:56 +0200 [thread overview]
Message-ID: <53DA3A48.8070900@metafoo.de> (raw)
In-Reply-To: <20140731074440.GY3952@lukather>
On 07/31/2014 09:44 AM, Maxime Ripard wrote:
[...]
> - Having to set device_slave_caps or not?
Yes. This should in my opinion be mandatory for new drivers. One of the
issues with the DMAengine API is that it is really hard to write generic
drivers that do not already know about the capabilities of the DMA
controller. E.g. if you have a peripheral that is used on SoC A it assumes
that the DMA controller it is connected to has the capabilities of the DMA
controller in SoC A. If the same peripheral is now used on SoC B with a DMA
controller with different capabilities this often ends up with ugly ifdefery
in the peripheral driver. The peripheral driver shouldn't have to know which
specific DMA controller it is connected to (It's a bit as if a GPIO consumer
needed to know which GPIO controller is connected to). We got away with the
current approach since there is not that much diversity in the mixing of
peripherals and DMA controllers (each vendor pretty has their own DMA
controller which it uses for their own peripherals). But with more recent
code consolidation we are on a path to generic DMA support within subsystem
frameworks (there is generic DMA support for audio, there is generic DMA
support for SPI and I also have a (currently) out of tree patch for generic
DMA support for IIO). Also these generic drivers need to be able to discover
the capabilities of the DMA controller to be able to make the right decisions.
- Lars
next prev parent reply other threads:[~2014-07-31 12:44 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-30 16:03 [PATCH] Documentation: dmaengine: Add a documentation for the dma controller API Maxime Ripard
2014-07-30 16:06 ` Vinod Koul
2014-07-31 7:44 ` Maxime Ripard
2014-07-31 11:56 ` Vinod Koul
2014-07-31 16:23 ` Maxime Ripard
2014-08-01 17:13 ` Vinod Koul
2014-08-02 14:49 ` Maxime Ripard
2014-08-02 15:17 ` Russell King - ARM Linux
2014-08-02 19:06 ` Maxime Ripard
2014-08-05 16:25 ` Vinod Koul
2014-07-31 12:44 ` Lars-Peter Clausen [this message]
2014-07-31 16:13 ` Maxime Ripard
2014-07-31 16:54 ` Lars-Peter Clausen
2014-07-31 17:37 ` Maxime Ripard
2014-08-01 8:00 ` Lars-Peter Clausen
2014-08-01 8:57 ` Maxime Ripard
2014-08-01 17:15 ` Vinod Koul
2014-08-01 18:09 ` Lars-Peter Clausen
2014-08-02 15:13 ` Maxime Ripard
2014-08-04 7:16 ` Lars-Peter Clausen
2014-07-31 13:22 ` Russell King - ARM Linux
2014-07-31 16:41 ` Maxime Ripard
2014-08-01 14:53 ` Russell King - ARM Linux
2014-08-02 15:11 ` Maxime Ripard
2014-08-02 15:29 ` Russell King - ARM Linux
2014-08-02 19:05 ` Maxime Ripard
2014-08-01 17:22 ` Vinod Koul
2014-08-05 8:16 ` Geert Uytterhoeven
2014-08-14 8:53 ` Ludovic Desroches
2014-08-14 8:57 ` Russell King - ARM Linux
2014-08-19 13:45 ` Vinod Koul
2014-08-19 14:44 ` Russell King - ARM Linux
2014-08-19 14:57 ` Vinod Koul
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53DA3A48.8070900@metafoo.de \
--to=lars@metafoo.de \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).