[PATCH 3/9] ARM: edma: Add function to manually trigger an EDMA channel
nsekhar at ti.com
Wed Jul 31 01:23:42 EDT 2013
On Wednesday 31 July 2013 10:00 AM, Joel Fernandes wrote:
> On 07/30/2013 12:18 AM, Sekhar Nori wrote:
>> On Monday 29 July 2013 06:59 PM, Joel Fernandes wrote:
>>> Manual trigger for events missed as a result of splitting a
>>> scatter gather list and DMA'ing it in batches. Add a helper
>>> function to trigger a channel incase any such events are missed.
>>> Signed-off-by: Joel Fernandes <joelf at ti.com>
>>> arch/arm/common/edma.c | 21 +++++++++++++++++++++
>>> include/linux/platform_data/edma.h | 2 ++
>>> 2 files changed, 23 insertions(+)
>>> diff --git a/arch/arm/common/edma.c b/arch/arm/common/edma.c
>>> index 3567ba1..10995b2 100644
>>> --- a/arch/arm/common/edma.c
>>> +++ b/arch/arm/common/edma.c
>>> @@ -1236,6 +1236,27 @@ void edma_resume(unsigned channel)
>>> +int edma_manual_trigger(unsigned channel)
>> edma_trigger_channel() maybe? Brings consistency with
>> edma_alloc_channel() edma_free_channel() etc.
> Ok, sure.
>>> + unsigned ctlr;
>>> + int j;
>>> + unsigned int mask;
>>> + ctlr = EDMA_CTLR(channel);
>>> + channel = EDMA_CHAN_SLOT(channel);
>>> + mask = BIT(channel & 0x1f);
>>> + j = channel >> 5;
>>> + /* EDMA channels without event association */
>> May be actually check for no-event association before you trigger in
>> software? You can do that by looking at unused channel list, no?
> But, we want to trigger whether there is event association or not in
> this function. For ex, MMC has event associated but still this function
> is used to trigger event for it.
Okay, just drop the misleading comment then.
More information about the linux-arm-kernel