clk qcom rpmh fixes
Subsystems (3)
Stephen Boyd
maintainercover clk qcom rpmh fixes
I had to read this driver today so I'm reworking it a little to ease readability. Based upon patches I've applied to clk-qcom in clk.git
Stephen Boyd (2):
clk: qcom: rpmh: Simplify clk_rpmh_bcm_send_cmd()
clk: qcom: rpmh: Drop unnecessary semicolons
drivers/clk/qcom/clk-rpmh.c | 41 ++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 23 deletions(-)
base-commit: cd5d5d8dec5e08e3e6ded9fa8366750a203b1d2a
Signature · 1 line
Sent by a computer, using git, on the internet
Stephen Boyd
maintainerPATCH 1/2 clk: qcom: rpmh: Simplify clk_rpmh_bcm_send_cmd()
This function has some duplication in unlocking a mutex and returns in a few different places. Let's use some if statements to consolidate code and make this a bit easier to read.
--- drivers/clk/qcom/clk-rpmh.c | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-)
drivers/clk/qcom/clk-rpmh.c +14 -19
@@ -259,38 +259,33 @@ static int clk_rpmh_bcm_send_cmd(struct clk_rpmh *c, bool enable) {struct tcs_cmd cmd = {0 };u32 cmd_state; -int ret; +int ret =0 ;mutex_lock (&rpmh_clk_lock); - - cmd_state =0 ;if (enable) { cmd_state =1 ;if (c->aggr_state) cmd_state = c->aggr_state; + }else { + cmd_state =0 ; } -if (c->last_sent_aggr_state == cmd_state) { -mutex_unlock (&rpmh_clk_lock); -return 0 ; - } - - cmd.addr = c->res_addr; - cmd.data =BCM_TCS_CMD (1 , enable,0 , cmd_state); +if (c->last_sent_aggr_state != cmd_state) { + cmd.addr = c->res_addr; + cmd.data =BCM_TCS_CMD (1 , enable,0 , cmd_state); - ret =clk_rpmh_send (c,RPMH_ACTIVE_ONLY_STATE , &cmd, enable); -if (ret) { -dev_err (c->dev,"set active state of %s failed: (%d)\n" , - c->res_name, ret); -mutex_unlock (&rpmh_clk_lock); -return ret; + ret =clk_rpmh_send (c,RPMH_ACTIVE_ONLY_STATE , &cmd, enable); +if (ret) { +dev_err (c->dev,"set active state of %s failed: (%d)\n" , + c->res_name, ret); + }else { + c->last_sent_aggr_state = cmd_state; + } } - c->last_sent_aggr_state = cmd_state; -mutex_unlock (&rpmh_clk_lock); -return 0 ; +return ret; }static int clk_rpmh_bcm_prepare (struct clk_hw *hw)
Signature · 1 line
Sent by a computer, using git, on the internet
Re: [PATCH 1/2] clk: qcom: rpmh: Simplify clk_rpmh_bcm_send_cmd()
Quoting Stephen Boyd (2020-03-09 15:12:31)
Quoted 8 lines
This function has some duplication in unlocking a mutex and returns in a few different places. Let's use some if statements to consolidate code and make this a bit easier to read.
Cc Bjorn Andersson <[email protected]>CC Taniya Das <[email protected]>Signed-off-by Stephen Boyd <[email protected]>---
Applied to clk-next
Stephen Boyd
maintainerPATCH 2/2 clk: qcom: rpmh: Drop unnecessary semicolons
In reply to Stephen BoydSome functions end in }; which is just bad style. Remove the extra semicolon.
--- drivers/clk/qcom/clk-rpmh.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/clk/qcom/clk-rpmh.c +4 -4
@@ -227,7 +227,7 @@ static int clk_rpmh_prepare(struct clk_hw *hw)mutex_unlock (&rpmh_clk_lock);return ret; -}; +}static void clk_rpmh_unprepare (struct clk_hw *hw) {
@@ -293,14 +293,14 @@ static int clk_rpmh_bcm_prepare(struct clk_hw *hw)struct clk_rpmh *c =to_clk_rpmh (hw);return clk_rpmh_bcm_send_cmd (c, true); -}; +}static void clk_rpmh_bcm_unprepare (struct clk_hw *hw) {struct clk_rpmh *c =to_clk_rpmh (hw);clk_rpmh_bcm_send_cmd (c, false); -}; +}static int clk_rpmh_bcm_set_rate (struct clk_hw *hw,unsigned long rate,unsigned long parent_rate)
@@ -316,7 +316,7 @@ static int clk_rpmh_bcm_set_rate(struct clk_hw *hw, unsigned long rate,clk_rpmh_bcm_send_cmd (c, true);return 0 ; -}; +}static long clk_rpmh_round_rate (struct clk_hw *hw,unsigned long rate,unsigned long *parent_rate)
Signature · 1 line
Sent by a computer, using git, on the internet
Re: [PATCH 2/2] clk: qcom: rpmh: Drop unnecessary semicolons
Quoting Stephen Boyd (2020-03-09 15:12:32)
Quoted 7 lines
Some functions end in }; which is just bad style. Remove the extra semicolon.
Cc Bjorn Andersson <[email protected]>Cc Taniya Das <[email protected]>Signed-off-by Stephen Boyd <[email protected]>---
Applied to clk-next