From: Joel Fernandes <joelf@ti.com>
To: Daniel Mack <zonque@gmail.com>
Cc: balajitk@ti.com, nsekhar@ti.com, s.neumann@raumfeld.com,
gururaja.hebbar@ti.com, Russ.Dill@ti.com,
linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v4] ARM: omap: edma: add suspend suspend/resume hooks
Date: Thu, 7 Nov 2013 10:49:16 -0600 [thread overview]
Message-ID: <527BC48C.9020907@ti.com> (raw)
In-Reply-To: <527BC118.1050609@ti.com>
On 11/07/2013 10:34 AM, Joel Fernandes wrote:
> Hi Daniel,
>
> Thanks for your followup patch on this. It looks much better now using existing
> functions to save/restore the state.
>
> On 10/30/2013 03:21 PM, Daniel Mack wrote:
>> This patch makes the edma driver resume correctly after suspend. Tested
>> on an AM33xx platform with cyclic audio streams and omap_hsmmc.
>>
>> All information can be reconstructed by already known runtime
>> information.
>>
>> As we now use some functions that were previously only used from __init
>> context, annotations had to be dropped.
>>
>> Signed-off-by: Daniel Mack <zonque@gmail.com>
>> ---
>> There was actually only a v3 ever, I made a mistake when formating the
>> first version of this patch. To prevent confusion though, I named this
>> one v4.
>>
>> v3 -> v4:
>> * dropped extra allocations, and reconstruct register values
>> from already known driver states.
>>
>>
>>
>> Hi Joel, Gururaja, Balaji,
>>
>> thanks a lot for your feedback. I successfully tested this version with
>> davinci mcasp as well as omap_hsmmc. I'd appreciate another round of
>> reviews :)
>>
>>
>> Thanks,
>> Daniel
>>
>> arch/arm/common/edma.c | 82 ++++++++++++++++++++++++++++++++++++++++++++++++--
>> 1 file changed, 79 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm/common/edma.c b/arch/arm/common/edma.c
> [..]
>> +static int edma_pm_resume(struct device *dev)
>> +{
>> + int i, j;
>> +
>> + pm_runtime_get_sync(dev);
>> +
>> + for (j = 0; j < arch_num_cc; j++) {
>> + struct edma *cc = edma_cc[j];
>> +
>> + s8 (*queue_priority_mapping)[2];
>> + s8 (*queue_tc_mapping)[2];
>> +
>> + queue_tc_mapping = cc->info->queue_tc_mapping;
>> + queue_priority_mapping = cc->info->queue_priority_mapping;
>> +
>> + /* Event queue to TC mapping */
>> + for (i = 0; queue_tc_mapping[i][0] != -1; i++)
>> + map_queue_tc(j, queue_tc_mapping[i][0],
>> + queue_tc_mapping[i][1]);
>> +
>> + /* Event queue priority mapping */
>> + for (i = 0; queue_priority_mapping[i][0] != -1; i++)
>> + assign_priority_to_queue(j,
>> + queue_priority_mapping[i][0],
>> + queue_priority_mapping[i][1]);
>
> I know ti,edma-regions property is not currently being used, but we should
> future proof this by setting up DRAE for like done in probe:
>
> for (i = 0; i < info[j]->n_region; i++) {
> edma_write_array2(j, EDMA_DRAE, i, 0, 0x0);
> edma_write_array2(j, EDMA_DRAE, i, 1, 0x0);
> edma_write_array(j, EDMA_QRAE, i, 0x0);
> }
Please ignore this comment I posted earlier. That is not all required to do.
Should've looked closer. Sorry about it.
cheers,
-Joel
WARNING: multiple messages have this Message-ID (diff)
From: joelf@ti.com (Joel Fernandes)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4] ARM: omap: edma: add suspend suspend/resume hooks
Date: Thu, 7 Nov 2013 10:49:16 -0600 [thread overview]
Message-ID: <527BC48C.9020907@ti.com> (raw)
In-Reply-To: <527BC118.1050609@ti.com>
On 11/07/2013 10:34 AM, Joel Fernandes wrote:
> Hi Daniel,
>
> Thanks for your followup patch on this. It looks much better now using existing
> functions to save/restore the state.
>
> On 10/30/2013 03:21 PM, Daniel Mack wrote:
>> This patch makes the edma driver resume correctly after suspend. Tested
>> on an AM33xx platform with cyclic audio streams and omap_hsmmc.
>>
>> All information can be reconstructed by already known runtime
>> information.
>>
>> As we now use some functions that were previously only used from __init
>> context, annotations had to be dropped.
>>
>> Signed-off-by: Daniel Mack <zonque@gmail.com>
>> ---
>> There was actually only a v3 ever, I made a mistake when formating the
>> first version of this patch. To prevent confusion though, I named this
>> one v4.
>>
>> v3 -> v4:
>> * dropped extra allocations, and reconstruct register values
>> from already known driver states.
>>
>>
>>
>> Hi Joel, Gururaja, Balaji,
>>
>> thanks a lot for your feedback. I successfully tested this version with
>> davinci mcasp as well as omap_hsmmc. I'd appreciate another round of
>> reviews :)
>>
>>
>> Thanks,
>> Daniel
>>
>> arch/arm/common/edma.c | 82 ++++++++++++++++++++++++++++++++++++++++++++++++--
>> 1 file changed, 79 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm/common/edma.c b/arch/arm/common/edma.c
> [..]
>> +static int edma_pm_resume(struct device *dev)
>> +{
>> + int i, j;
>> +
>> + pm_runtime_get_sync(dev);
>> +
>> + for (j = 0; j < arch_num_cc; j++) {
>> + struct edma *cc = edma_cc[j];
>> +
>> + s8 (*queue_priority_mapping)[2];
>> + s8 (*queue_tc_mapping)[2];
>> +
>> + queue_tc_mapping = cc->info->queue_tc_mapping;
>> + queue_priority_mapping = cc->info->queue_priority_mapping;
>> +
>> + /* Event queue to TC mapping */
>> + for (i = 0; queue_tc_mapping[i][0] != -1; i++)
>> + map_queue_tc(j, queue_tc_mapping[i][0],
>> + queue_tc_mapping[i][1]);
>> +
>> + /* Event queue priority mapping */
>> + for (i = 0; queue_priority_mapping[i][0] != -1; i++)
>> + assign_priority_to_queue(j,
>> + queue_priority_mapping[i][0],
>> + queue_priority_mapping[i][1]);
>
> I know ti,edma-regions property is not currently being used, but we should
> future proof this by setting up DRAE for like done in probe:
>
> for (i = 0; i < info[j]->n_region; i++) {
> edma_write_array2(j, EDMA_DRAE, i, 0, 0x0);
> edma_write_array2(j, EDMA_DRAE, i, 1, 0x0);
> edma_write_array(j, EDMA_QRAE, i, 0x0);
> }
Please ignore this comment I posted earlier. That is not all required to do.
Should've looked closer. Sorry about it.
cheers,
-Joel
next prev parent reply other threads:[~2013-11-07 16:49 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-30 20:21 [PATCH v4] ARM: omap: edma: add suspend suspend/resume hooks Daniel Mack
2013-10-30 20:21 ` Daniel Mack
2013-10-31 22:25 ` Vaibhav Bedia
2013-10-31 22:25 ` Vaibhav Bedia
2013-11-06 17:36 ` Joel Fernandes
2013-11-06 17:36 ` Joel Fernandes
2013-11-07 13:30 ` Gururaja Hebbar
2013-11-07 13:30 ` Gururaja Hebbar
2013-11-07 13:32 ` Daniel Mack
2013-11-07 13:32 ` Daniel Mack
2013-11-07 15:18 ` Nishanth Menon
2013-11-07 15:18 ` Nishanth Menon
2013-11-07 15:36 ` Daniel Mack
2013-11-07 15:36 ` Daniel Mack
2013-11-07 15:48 ` Nishanth Menon
2013-11-07 15:48 ` Nishanth Menon
2013-11-07 20:42 ` Vaibhav Bedia
2013-11-07 20:42 ` Vaibhav Bedia
2013-11-15 14:39 ` Nishanth Menon
2013-11-15 14:39 ` Nishanth Menon
2013-11-17 22:09 ` Daniel Mack
2013-11-17 22:09 ` Daniel Mack
2013-11-07 20:34 ` Vaibhav Bedia
2013-11-07 20:34 ` Vaibhav Bedia
2013-11-07 15:34 ` Nishanth Menon
2013-11-07 15:34 ` Nishanth Menon
2013-11-07 16:27 ` Grygorii Strashko
2013-11-07 16:27 ` Grygorii Strashko
2013-11-07 20:46 ` Vaibhav Bedia
2013-11-07 20:46 ` Vaibhav Bedia
2013-11-07 16:34 ` Joel Fernandes
2013-11-07 16:34 ` Joel Fernandes
2013-11-07 16:49 ` Joel Fernandes [this message]
2013-11-07 16:49 ` Joel Fernandes
2013-11-07 17:37 ` Daniel Mack
2013-11-07 17:37 ` Daniel Mack
2013-11-07 21:39 ` Joel Fernandes
2013-11-07 21:39 ` Joel Fernandes
2013-11-08 4:07 ` Gururaja Hebbar
2013-11-08 4:07 ` Gururaja Hebbar
2013-11-08 7:51 ` Daniel Mack
2013-11-08 7:51 ` Daniel Mack
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=527BC48C.9020907@ti.com \
--to=joelf@ti.com \
--cc=Russ.Dill@ti.com \
--cc=balajitk@ti.com \
--cc=gururaja.hebbar@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=nsekhar@ti.com \
--cc=s.neumann@raumfeld.com \
--cc=zonque@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.