From: peter.ujfalusi@ti.com (Peter Ujfalusi)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 4/4] dmaengine: edma: Add support for DMA filter mapping to slave devices
Date: Tue, 8 Dec 2015 15:15:31 +0200 [thread overview]
Message-ID: <5666D7F3.4000708@ti.com> (raw)
In-Reply-To: <566063CA.20500@ti.com>
On 12/03/2015 05:46 PM, Peter Ujfalusi wrote:
> On 12/03/2015 05:38 PM, Arnd Bergmann wrote:
>> On Thursday 03 December 2015 16:33:12 Peter Ujfalusi wrote:
>>> diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
>>> index 0675e268d577..46b305ea0d21 100644
>>> --- a/drivers/dma/edma.c
>>> +++ b/drivers/dma/edma.c
>>> @@ -2297,6 +2297,12 @@ static int edma_probe(struct platform_device *pdev)
>>> edma_set_chmap(&ecc->slave_chans[i], ecc->dummy_slot);
>>> }
>>>
>>> + if (info->slave_map) {
>>> + ecc->dma_slave.filter_map.map = info->slave_map;
>>> + ecc->dma_slave.filter_map.mapcnt = info->slavecnt;
>>> + ecc->dma_slave.filter_map.filter_fn = edma_filter_fn;
>>> + }
>>> +
>>>
>>
>> Just a minor comment here: I think all three assignments can be done
>> unconditionally.
>
> True.
>
>> As I mentioned before, I'd also remove 'struct dma_filter'
>> and put the three members in struct dma_device directly. In fact, the
>> filter function can go with the other function pointers for consistency.
>
> I just like to keep things in one place ;)
> I don't have strong stand on keeping the intermediate 'struct dma_filter'
> Let's hear from Vinod regarding to this
One remaining design issue is on how and where to place the filter related
variables/pointers:
Keep it separated as it was in the RFC and v01 series:
struct dma_slave_map {
const char *devname;
const char *slave;
void *param;
};
struct dma_filter {
dma_filter_fn fn;
int mapcnt;
const struct dma_slave_map *map;
};
struct dma_device {
...
struct dma_filter filter;
...
};
Or to have them under the dma_device directly:
struct dma_device {
...
int filter_mapcnt;
const struct dma_slave_map *filter_map;
...
dma_filter_fn filter_fn;
...
};
Vinod: what is your preference for this?
Thanks,
P?ter
next prev parent reply other threads:[~2015-12-08 13:15 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-03 14:33 [PATCH 0/4] dmaengine: New 'universal' API for requesting channel Peter Ujfalusi
2015-12-03 14:33 ` [PATCH 1/4] dmaengine: core: Skip mask matching when it is not provided to private_candidate Peter Ujfalusi
2015-12-03 14:33 ` [PATCH 2/4] dmaengine: core: Move and merge the code paths using private_candidate Peter Ujfalusi
2015-12-03 14:33 ` [PATCH 3/4] dmaengine: core: Introduce new, universal API to request a channel Peter Ujfalusi
2015-12-03 15:32 ` Arnd Bergmann
2015-12-03 15:42 ` Peter Ujfalusi
2015-12-03 15:45 ` Arnd Bergmann
2015-12-03 16:30 ` Andy Shevchenko
2015-12-03 14:33 ` [PATCH 4/4] dmaengine: edma: Add support for DMA filter mapping to slave devices Peter Ujfalusi
2015-12-03 15:38 ` Arnd Bergmann
2015-12-03 15:46 ` Peter Ujfalusi
2015-12-08 13:15 ` Peter Ujfalusi [this message]
2015-12-03 16:32 ` [PATCH 0/4] dmaengine: New 'universal' API for requesting channel Andy Shevchenko
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=5666D7F3.4000708@ti.com \
--to=peter.ujfalusi@ti.com \
--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).