From: "Dwivedi, Avaneesh Kumar (avani)" <akdwived@codeaurora.org>
To: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: sboyd@codeaurora.org, agross@codeaurora.org,
linux-arm-msm@vger.kernel.org
Subject: Re: [RESEND PATCH v4 4/7] remoteproc: qcom: Modify clock enable and disable routine
Date: Mon, 12 Dec 2016 13:53:38 +0530 [thread overview]
Message-ID: <3cf7f66b-c416-a5b0-6252-cd05a9d083cd@codeaurora.org> (raw)
In-Reply-To: <20161209025726.GR30492@tuxbot>
On 12/9/2016 8:27 AM, Bjorn Andersson wrote:
> On Thu 24 Nov 02:00 PST 2016, Avaneesh Kumar Dwivedi wrote:
>
>> Clock handling is made generic than earlier way to add new clock
>> every time when required to support new hexagon version. Also
>> clock disable interface is separated out into two separate routine
>> to unvote proxy clock alone when handover interrupt is arrived.
>>
>> Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
>> ---
>> drivers/remoteproc/qcom_q6v5_pil.c | 93 ++++++++++++++++++++++++++------------
>> 1 file changed, 65 insertions(+), 28 deletions(-)
>>
>> diff --git a/drivers/remoteproc/qcom_q6v5_pil.c b/drivers/remoteproc/qcom_q6v5_pil.c
>> index 06d5bb2..c55dc9a 100644
>> --- a/drivers/remoteproc/qcom_q6v5_pil.c
>> +++ b/drivers/remoteproc/qcom_q6v5_pil.c
>> @@ -126,10 +126,6 @@ struct q6v5 {
>> struct qcom_smem_state *state;
>> unsigned stop_bit;
>>
>> -
>> - struct clk *ahb_clk;
>> - struct clk *axi_clk;
>> - struct clk *rom_clk;
>> struct clk *active_clks[8];
>> struct clk *proxy_clks[4];
>> struct reg_info active_regs[1];
>> @@ -284,6 +280,51 @@ static void q6v5_regulator_disable(struct q6v5 *qproc)
>> q6v5_active_regulator_disable(qproc);
>> }
>>
>> +static int q6v5_clk_enable(struct device *dev, struct clk **clks,
>> + int clk_count)
>> +{
>> + int rc = 0;
> No need to initialize to 0.
OK.
>
>> + int i;
>> +
>> + for (i = 0; i < clk_count; i++) {
>> + rc = clk_prepare_enable(clks[i]);
>> + if (rc) {
>> + dev_err(dev, "Clock enable failed\n");
>> + goto err;
>> + }
>> + }
>> +
>> + return 0;
>> +err:
>> + for (i--; i >= 0; i--)
>> + clk_disable_unprepare(clks[i]);
>> +
>> + return rc;
>> +}
>> +
>> +static void q6v5_proxy_clk_disable(struct q6v5 *qproc)
> Please make these follow the enable case, by taking the clock list and
> size as parameters.
OK.
>
>> +{
>> + int i;
>> + struct clk **clks = qproc->proxy_clks;
>> +
>> + for (i = 0; i < qproc->proxy_clk_count; i++)
>> + clk_disable_unprepare(clks[i]);
>> +}
>> +
>> +static void q6v5_active_clk_disable(struct q6v5 *qproc)
>> +{
>> + int i;
>> + struct clk **clks = qproc->proxy_clks;
>> +
>> + for (i = 0; i < qproc->proxy_clk_count; i++)
>> + clk_disable_unprepare(clks[i]);
>> +}
>> +
>> +static void q6v5_clk_disable(struct q6v5 *qproc)
>> +{
>> + q6v5_proxy_clk_disable(qproc);
>> + q6v5_active_clk_disable(qproc);
>> +}
> Just inline the two disable calls where you need them, rather than
> having this wrapper.
OK.
>
> Regards,
> Bjorn
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.
next prev parent reply other threads:[~2016-12-12 8:23 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-24 10:00 [RESEND PATCH v4 0/7]remoteproc: qcom: Add support to hexagon v56 1.5.0 in qcom hexagon rproc driver Avaneesh Kumar Dwivedi
2016-11-24 10:00 ` [RESEND PATCH v4 1/7] remoteproc: qcom: Add and initialize private data for hexagon dsp Avaneesh Kumar Dwivedi
2016-12-08 21:37 ` Bjorn Andersson
2016-12-09 11:42 ` Dwivedi, Avaneesh Kumar (avani)
2016-12-09 19:32 ` Bjorn Andersson
2016-11-24 10:00 ` [RESEND PATCH v4 2/7] remoteproc: qcom: Initialize proxy and active clock's and regulator's Avaneesh Kumar Dwivedi
2016-12-09 2:36 ` Bjorn Andersson
2016-12-09 15:53 ` Dwivedi, Avaneesh Kumar (avani)
2016-11-24 10:00 ` [RESEND PATCH v4 3/7] remoteproc: qcom: Modify regulator enable and disable interface Avaneesh Kumar Dwivedi
2016-12-09 2:44 ` Bjorn Andersson
2016-12-12 8:21 ` Dwivedi, Avaneesh Kumar (avani)
2016-11-24 10:00 ` [RESEND PATCH v4 4/7] remoteproc: qcom: Modify clock enable and disable routine Avaneesh Kumar Dwivedi
2016-12-09 2:57 ` Bjorn Andersson
2016-12-12 8:23 ` Dwivedi, Avaneesh Kumar (avani) [this message]
2016-11-24 10:00 ` [RESEND PATCH v4 5/7] remoteproc: qcom: Modify reset sequence for hexagon to support v56 1.5.0 Avaneesh Kumar Dwivedi
2016-12-09 4:35 ` Bjorn Andersson
2016-12-12 12:45 ` Dwivedi, Avaneesh Kumar (avani)
2016-12-13 18:09 ` Bjorn Andersson
2016-12-13 19:45 ` Dwivedi, Avaneesh Kumar (avani)
2016-12-13 22:07 ` Bjorn Andersson
2016-12-14 15:50 ` Dwivedi, Avaneesh Kumar (avani)
2016-12-14 20:13 ` Bjorn Andersson
2016-11-24 10:00 ` [RESEND PATCH v4 6/7] remoteproc: qcom: Modify stop routine to limit MX current for v56 1.5 Avaneesh Kumar Dwivedi
2016-12-09 4:42 ` Bjorn Andersson
2016-12-12 13:04 ` Dwivedi, Avaneesh Kumar (avani)
2016-11-24 10:00 ` [RESEND PATCH v4 7/7] clk: qcom: Add GCC_MSS_RESET support to reset MSS in v56 1.5.0 Avaneesh Kumar Dwivedi
2016-12-08 19:51 ` Bjorn Andersson
2016-12-12 13:05 ` Dwivedi, Avaneesh Kumar (avani)
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=3cf7f66b-c416-a5b0-6252-cd05a9d083cd@codeaurora.org \
--to=akdwived@codeaurora.org \
--cc=agross@codeaurora.org \
--cc=bjorn.andersson@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=sboyd@codeaurora.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).