Thread (29 messages) 29 messages, 4 authors, 2012-09-26

[PATCH 10/10] ARM: msm: Migrate to common clock framework

From: Stephen Boyd <hidden>
Date: 2012-09-26 18:50:51
Also in: linux-arm-msm, lkml

On 09/26/12 11:47, Pankaj Jangra wrote:
Hi Stephen,

On Fri, Sep 21, 2012 at 7:56 AM, Stephen Boyd [off-list ref] wrote:
quoted
-static int pc_clk_set_rate(unsigned id, unsigned rate)
+static int pc_clk_set_rate(struct clk_hw *hw, unsigned long new_rate,
+                          unsigned long p_rate)
 {
-       /* The rate _might_ be rounded off to the nearest KHz value by the
+       struct clk_pcom *p = to_clk_pcom(hw);
+       unsigned id = p->id, rate = new_rate;
+       int rc;
+
+       /*
+        * The rate _might_ be rounded off to the nearest KHz value by the
         * remote function. So a return value of 0 doesn't necessarily mean
         * that the exact rate was set successfully.
         */
-       int rc = msm_proc_comm(PCOM_CLKCTL_RPC_SET_RATE, &id, &rate);
-       if (rc < 0)
-               return rc;
-       else
-               return (int)id < 0 ? -EINVAL : 0;
-}
-
-static int pc_clk_set_min_rate(unsigned id, unsigned rate)
-{
-       int rc = msm_proc_comm(PCOM_CLKCTL_RPC_MIN_RATE, &id, &rate);
-       if (rc < 0)
-               return rc;
+       if (p->flags & CLKFLAG_MIN)
+               rc = msm_proc_comm(PCOM_CLKCTL_RPC_MIN_RATE, &id, &rate);
You are missing if condition here checking the rc ?
quoted
        else
-               return (int)id < 0 ? -EINVAL : 0;
-}
-
-static int pc_clk_set_max_rate(unsigned id, unsigned rate)
-{
-       int rc = msm_proc_comm(PCOM_CLKCTL_RPC_MAX_RATE, &id, &rate);
and else here i think for the MIN_FLAG if check.
quoted
+               rc = msm_proc_comm(PCOM_CLKCTL_RPC_SET_RATE, &id, &rate);
        if (rc < 0)
                return rc;
        else
                return (int)id < 0 ? -EINVAL : 0;
 }
This is the resulting code:

        if (p->flags & CLKFLAG_MIN)
                rc = msm_proc_comm(PCOM_CLKCTL_RPC_MIN_RATE, &id, &rate);
        else
                rc = msm_proc_comm(PCOM_CLKCTL_RPC_SET_RATE, &id, &rate);
        if (rc < 0)
                return rc;
        else
                return (int)id < 0 ? -EINVAL : 0;

So we check the rc for both cases in the same if condition. Is there
anything wrong?

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help