From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757980AbcCaSzE (ORCPT ); Thu, 31 Mar 2016 14:55:04 -0400 Received: from down.free-electrons.com ([37.187.137.238]:54442 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751243AbcCaSzA (ORCPT ); Thu, 31 Mar 2016 14:55:00 -0400 Date: Thu, 31 Mar 2016 20:54:54 +0200 From: Boris Brezillon To: Dmitry Torokhov Cc: Thierry Reding , linux-pwm@vger.kernel.org, Mike Turquette , Stephen Boyd , linux-clk@vger.kernel.org, Mark Brown , Liam Girdwood , Kamil Debski , lm-sensors@lm-sensors.org, Jean Delvare , Guenter Roeck , linux-input@vger.kernel.org, Bryan Wu , Richard Purdie , Jacek Anaszewski , linux-leds@vger.kernel.org, Maxime Ripard , Chen-Yu Tsai , linux-sunxi@googlegroups.com, Joachim Eastwood , Thomas Petazzoni , Heiko Stuebner , linux-rockchip@lists.infradead.org, Jingoo Han , Lee Jones , linux-fbdev@vger.kernel.org, Jean-Christophe Plagniol-Villard , Tomi Valkeinen , Robert Jarzmik , Alexandre Belloni , Kukjin Kim , Krzysztof Kozlowski , linux-samsung-soc@vger.kernel.org, intel-gfx@lists.freedesktop.org, Daniel Vetter , Jani Nikula , Jonathan Corbet , linux-doc@vger.kernel.org, David Airlie , Daniel Vetter , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Hartley Sweeten , Ryan Mallon , Alexander Shiyan , Milo Kim Subject: Re: [PATCH v5 32/46] pwm: deprecate pwm_config(), pwm_enable() and pwm_disable() Message-ID: <20160331205454.630734ab@bbrezillon> In-Reply-To: <20160331173858.GB39098@dtor-ws> References: <1459368249-13241-1-git-send-email-boris.brezillon@free-electrons.com> <1459368249-13241-33-git-send-email-boris.brezillon@free-electrons.com> <20160331173858.GB39098@dtor-ws> X-Mailer: Claws Mail 3.12.0 (GTK+ 2.24.28; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Dmitry, On Thu, 31 Mar 2016 10:38:58 -0700 Dmitry Torokhov wrote: > Hi Boris, > > On Wed, Mar 30, 2016 at 10:03:55PM +0200, Boris Brezillon wrote: > > Prefix those function as deprecated to encourage all existing users to > > switch to pwm_apply_state(). > > Why not keep at least some of them as wrappers where we do not need to > chnage several parameters at once? It is much easier to have a driver > do: > > error = pwm_enable(pwm); > if (error) > ... > > rather than declaring the state variable, fectch it, adjust and then > apply. True. Actually deprecating the non-atomic API was not my primary goal. Thierry would you mind if we keep both APIs around? > > > > > Signed-off-by: Boris Brezillon > > --- > > include/linux/pwm.h | 24 ++++++++++++------------ > > 1 file changed, 12 insertions(+), 12 deletions(-) > > > > diff --git a/include/linux/pwm.h b/include/linux/pwm.h > > index 4aad4eb..9bac10f 100644 > > --- a/include/linux/pwm.h > > +++ b/include/linux/pwm.h > > @@ -225,8 +225,8 @@ int pwm_apply_state(struct pwm_device *pwm, struct pwm_state *state); > > * > > * Returns: 0 on success or a negative error code on failure. > > */ > > -static inline int pwm_config(struct pwm_device *pwm, int duty_ns, > > - int period_ns) > > +static inline int __deprecated pwm_config(struct pwm_device *pwm, int duty_ns, > > + int period_ns) > > { > > struct pwm_state pstate; > > > > @@ -252,8 +252,8 @@ static inline int pwm_config(struct pwm_device *pwm, int duty_ns, > > * > > * Returns: 0 on success or a negative error code on failure. > > */ > > -static inline int pwm_set_polarity(struct pwm_device *pwm, > > - enum pwm_polarity polarity) > > +static inline int __deprecated pwm_set_polarity(struct pwm_device *pwm, > > + enum pwm_polarity polarity) > > { > > struct pwm_state pstate; > > > > @@ -284,7 +284,7 @@ static inline int pwm_set_polarity(struct pwm_device *pwm, > > * > > * Returns: 0 on success or a negative error code on failure. > > */ > > -static inline int pwm_enable(struct pwm_device *pwm) > > +static inline int __deprecated pwm_enable(struct pwm_device *pwm) > > { > > struct pwm_state pstate; > > > > @@ -303,7 +303,7 @@ static inline int pwm_enable(struct pwm_device *pwm) > > * pwm_disable() - stop a PWM output toggling > > * @pwm: PWM device > > */ > > -static inline void pwm_disable(struct pwm_device *pwm) > > +static inline void __deprecated pwm_disable(struct pwm_device *pwm) > > { > > struct pwm_state pstate; > > > > @@ -360,24 +360,24 @@ static inline int pwm_apply_state(struct pwm_device *pwm, > > return -ENOTSUPP; > > } > > > > -static inline int pwm_config(struct pwm_device *pwm, int duty_ns, > > - int period_ns) > > +static inline int __deprecated pwm_config(struct pwm_device *pwm, int duty_ns, > > + int period_ns) > > { > > return -EINVAL; > > } > > > > -static inline int pwm_set_polarity(struct pwm_device *pwm, > > - enum pwm_polarity polarity) > > +static inline int __deprecated pwm_set_polarity(struct pwm_device *pwm, > > + enum pwm_polarity polarity) > > { > > return -ENOTSUPP; > > } > > > > -static inline int pwm_enable(struct pwm_device *pwm) > > +static inline int __deprecated pwm_enable(struct pwm_device *pwm) > > { > > return -EINVAL; > > } > > > > -static inline void pwm_disable(struct pwm_device *pwm) > > +static inline void __deprecated pwm_disable(struct pwm_device *pwm) > > { > > } > > > > -- > > 2.5.0 > > > -- Boris Brezillon, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com