[PATCH 3/9] ARM: edma: Add function to manually trigger an EDMA channel
Fernandes, Joel
joelf at ti.com
Wed Jul 31 01:34:14 EDT 2013
On Jul 31, 2013, at 12:23 AM, "Nori, Sekhar" <nsekhar at ti.com> wrote:
> 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)
>>>> }
>>>> EXPORT_SYMBOL(edma_resume);
>>>>
>>>> +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.
Ok, will do.
Thanks,
-Joel
>
> Regards,
> Sekhar
More information about the linux-arm-kernel
mailing list