linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RESEND] drivers: qcom: rpmh: avoid sending sleep/wake sets immediately
@ 2018-10-23 17:29 Raju P.L.S.S.S.N
  2018-10-24 15:50 ` Evan Green
  2018-10-24 17:04 ` Lina Iyer
  0 siblings, 2 replies; 3+ messages in thread
From: Raju P.L.S.S.S.N @ 2018-10-23 17:29 UTC (permalink / raw)
  To: andy.gross, david.brown, linux-arm-msm, linux-soc
  Cc: rnayak, bjorn.andersson, linux-kernel, linux-pm, sboyd, evgreen,
	dianders, mka, ilina, Raju P.L.S.S.S.N

Fix the redundant call being made to send the sleep and wake requests
immediately to the controller.

As per the patch[1], the sleep and wake request votes are cached in rpmh
controller and sent during rpmh_flush(). These requests needs to be sent
only during entry of deeper system low power modes or suspend.

[1]https://patchwork.kernel.org/patch/10477533/

Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
Reviewed-by: Lina Iyer <ilina@codeaurora.org>
---
 drivers/soc/qcom/rpmh.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/soc/qcom/rpmh.c b/drivers/soc/qcom/rpmh.c
index e6e98d4..877fe78 100644
--- a/drivers/soc/qcom/rpmh.c
+++ b/drivers/soc/qcom/rpmh.c
@@ -228,9 +228,8 @@ static int __rpmh_write(const struct device *dev, enum rpmh_state state,
 		WARN_ON(irqs_disabled());
 		ret = rpmh_rsc_send_data(ctrlr_to_drv(ctrlr), &rpm_msg->msg);
 	} else {
-		ret = rpmh_rsc_write_ctrl_data(ctrlr_to_drv(ctrlr),
-				&rpm_msg->msg);
 		/* Clean up our call by spoofing tx_done */
+		ret = 0;
 		rpmh_tx_done(&rpm_msg->msg, ret);
 	}
 
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of the Code Aurora Forum, hosted by The Linux Foundation.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH RESEND] drivers: qcom: rpmh: avoid sending sleep/wake sets immediately
  2018-10-23 17:29 [PATCH RESEND] drivers: qcom: rpmh: avoid sending sleep/wake sets immediately Raju P.L.S.S.S.N
@ 2018-10-24 15:50 ` Evan Green
  2018-10-24 17:04 ` Lina Iyer
  1 sibling, 0 replies; 3+ messages in thread
From: Evan Green @ 2018-10-24 15:50 UTC (permalink / raw)
  To: rplsssn
  Cc: Andy Gross, David Brown, linux-arm-msm, linux-soc,
	Rajendra Nayak, Bjorn Andersson, linux-kernel, linux-pm, sboyd,
	Doug Anderson, mka, Lina Iyer

On Tue, Oct 23, 2018 at 10:29 AM Raju P.L.S.S.S.N
<rplsssn@codeaurora.org> wrote:
>
> Fix the redundant call being made to send the sleep and wake requests
> immediately to the controller.
>
> As per the patch[1], the sleep and wake request votes are cached in rpmh
> controller and sent during rpmh_flush(). These requests needs to be sent
> only during entry of deeper system low power modes or suspend.
>
> [1]https://patchwork.kernel.org/patch/10477533/
>
> Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
> Reviewed-by: Lina Iyer <ilina@codeaurora.org>
> ---
>  drivers/soc/qcom/rpmh.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/soc/qcom/rpmh.c b/drivers/soc/qcom/rpmh.c
> index e6e98d4..877fe78 100644
> --- a/drivers/soc/qcom/rpmh.c
> +++ b/drivers/soc/qcom/rpmh.c
> @@ -228,9 +228,8 @@ static int __rpmh_write(const struct device *dev, enum rpmh_state state,
>                 WARN_ON(irqs_disabled());
>                 ret = rpmh_rsc_send_data(ctrlr_to_drv(ctrlr), &rpm_msg->msg);
>         } else {
> -               ret = rpmh_rsc_write_ctrl_data(ctrlr_to_drv(ctrlr),
> -                               &rpm_msg->msg);
>                 /* Clean up our call by spoofing tx_done */
> +               ret = 0;
>                 rpmh_tx_done(&rpm_msg->msg, ret);
>         }
>
> --
> QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> of the Code Aurora Forum, hosted by The Linux Foundation.
>

I think this makes sense to me, though the paths through here can be a
little winding.

Reviewed-by: Evan Green <evgreen@chromium.org>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH RESEND] drivers: qcom: rpmh: avoid sending sleep/wake sets immediately
  2018-10-23 17:29 [PATCH RESEND] drivers: qcom: rpmh: avoid sending sleep/wake sets immediately Raju P.L.S.S.S.N
  2018-10-24 15:50 ` Evan Green
@ 2018-10-24 17:04 ` Lina Iyer
  1 sibling, 0 replies; 3+ messages in thread
From: Lina Iyer @ 2018-10-24 17:04 UTC (permalink / raw)
  To: Raju P.L.S.S.S.N
  Cc: andy.gross, david.brown, linux-arm-msm, linux-soc, rnayak,
	bjorn.andersson, linux-kernel, linux-pm, sboyd, evgreen,
	dianders, mka

On Tue, Oct 23 2018 at 11:29 -0600, Raju P.L.S.S.S.N wrote:
>Fix the redundant call being made to send the sleep and wake requests
>immediately to the controller.
>
>As per the patch[1], the sleep and wake request votes are cached in rpmh
>controller and sent during rpmh_flush(). These requests needs to be sent
>only during entry of deeper system low power modes or suspend.
>
>[1]https://patchwork.kernel.org/patch/10477533/
>
nit: [1] https://
>Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
>Reviewed-by: Lina Iyer <ilina@codeaurora.org>
>---
> drivers/soc/qcom/rpmh.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
>diff --git a/drivers/soc/qcom/rpmh.c b/drivers/soc/qcom/rpmh.c
>index e6e98d4..877fe78 100644
>--- a/drivers/soc/qcom/rpmh.c
>+++ b/drivers/soc/qcom/rpmh.c
>@@ -228,9 +228,8 @@ static int __rpmh_write(const struct device *dev, enum rpmh_state state,
> 		WARN_ON(irqs_disabled());
> 		ret = rpmh_rsc_send_data(ctrlr_to_drv(ctrlr), &rpm_msg->msg);
> 	} else {
>-		ret = rpmh_rsc_write_ctrl_data(ctrlr_to_drv(ctrlr),
>-				&rpm_msg->msg);
> 		/* Clean up our call by spoofing tx_done */
>+		ret = 0;
> 		rpmh_tx_done(&rpm_msg->msg, ret);
> 	}
>
>--
>QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
>of the Code Aurora Forum, hosted by The Linux Foundation.
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-10-24 17:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-23 17:29 [PATCH RESEND] drivers: qcom: rpmh: avoid sending sleep/wake sets immediately Raju P.L.S.S.S.N
2018-10-24 15:50 ` Evan Green
2018-10-24 17:04 ` Lina Iyer

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).