Hi, On Thu, Sep 27, 2012 at 12:20 AM, Stephen Boyd <sboyd@xxxxxxxxxxxxxx> wrote: > On 09/26/12 11:47, Pankaj Jangra wrote: >> Hi Stephen, >> >> On Fri, Sep 21, 2012 at 7:56 AM, Stephen Boyd <sboyd@xxxxxxxxxxxxxx> wrote: >> >>> -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 ? >> >>> 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. >> >>> + 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? My mistake. I overlooked a line. Sorry for spam. Thanks -- Pankaj Jangra -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html