Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1367634

Re: [PATCH v5 34/46] clk: pwm: switch to the atomic API

From Stephen Boyd <sboyd@codeaurora.org>
Newsgroups linux.kernel
Subject Re: [PATCH v5 34/46] clk: pwm: switch to the atomic API
Date 2016-03-31 00:10 +0200
Message-ID <riwtk-3p2-7@gated-at.bofh.it> (permalink)
References <riuBc-28V-5@gated-at.bofh.it> <riuKS-2cZ-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 03/30, Boris Brezillon wrote:
> diff --git a/drivers/clk/clk-pwm.c b/drivers/clk/clk-pwm.c
> index ebcd738..49ec5b1 100644
> --- a/drivers/clk/clk-pwm.c
> +++ b/drivers/clk/clk-pwm.c
> @@ -28,15 +28,29 @@ static inline struct clk_pwm *to_clk_pwm(struct clk_hw *hw)
>  static int clk_pwm_prepare(struct clk_hw *hw)
>  {
>  	struct clk_pwm *clk_pwm = to_clk_pwm(hw);
> +	struct pwm_state pstate;
>  
> -	return pwm_enable(clk_pwm->pwm);
> +	pwm_get_state(clk_pwm->pwm, &pstate);
> +	if (pstate.enabled)
> +		return 0;
> +
> +	pstate.enabled = true;
> +
> +	return pwm_apply_state(clk_pwm->pwm, &pstate);

This doesn't seem atomic anymore if we're checking the state and
then not calling apply_state if it's already enabled. But I
assume this doesn't matter because we "own" the pwm here?
Otherwise I would think this would be unconditional apply state
and duplicates would be ignored in the pwm framework.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v5 34/46] clk: pwm: switch to the atomic API Boris Brezillon <boris.brezillon@free-electrons.com> - 2016-03-30 22:20 +0200
  Re: [PATCH v5 34/46] clk: pwm: switch to the atomic API Stephen Boyd <sboyd@codeaurora.org> - 2016-03-31 00:10 +0200
    Re: [PATCH v5 34/46] clk: pwm: switch to the atomic API Boris Brezillon <boris.brezillon@free-electrons.com> - 2016-03-31 09:00 +0200

csiph-web