Re: [Intel-gfx] [PATCH v5 00/46] pwm: add support for atomic update

2016-04-11 Thread Boris Brezillon
Hi Thierry,

On Wed, 30 Mar 2016 22:03:23 +0200
Boris Brezillon  wrote:

> Hello,
> 
> This series adds support for atomic PWM update, or IOW, the capability
> to update all the parameters of a PWM device (enabled/disabled, period,
> duty and polarity) in one go.
> 
> It also adds support for initial PWM state retrieval (or hardware readout),
> which should allow smooth handover between the bootloader and Linux. For
> example, critical PWM users (like critical regulators controlled by a PWM)
> can query the current PWM state, and adapt the PWM config without having
> to disable/enable the PWM, or abruptly change the period/dutycyle/polarity
> config.
> 
> Thierry, I hope this version meets your expectations, if that's not the
> case, could you let me know quickly so I can adjust the implementation
> accordingly (I'd really like to get most of those changes in 4.7).

Still haven't had a clear feedback from your side on this series (you
commented on a few details, but nothing on the general approach). Could
you please have at a quick look at it, and let me know if I should
adjust the implementation?

Note that I plan to send a new version  addressing comments made by
other maintainers/developers by the end of the week. In the meantime,
could you have a look at the first set of patches (patch 1 to 4 are
completely independent), and apply them if you're happy with it.

As you can see, I now have a lot of patches. This helps in showing the
big picture, but also annoys people when I send this 50+ patchset. So,
if you don't mind, I'd like to drop the changes touching PWM user
drivers (to make them use the atomic API) until we get the other parts
applied.

Thanks,

Boris

-- 
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v5 00/46] pwm: add support for atomic update

2016-03-30 Thread Boris Brezillon
+Doug (sorry, I forgot to add you in to the recipient list)

On Wed, 30 Mar 2016 22:03:23 +0200
Boris Brezillon  wrote:

> Hello,
> 
> This series adds support for atomic PWM update, or IOW, the capability
> to update all the parameters of a PWM device (enabled/disabled, period,
> duty and polarity) in one go.
> 
> It also adds support for initial PWM state retrieval (or hardware readout),
> which should allow smooth handover between the bootloader and Linux. For
> example, critical PWM users (like critical regulators controlled by a PWM)
> can query the current PWM state, and adapt the PWM config without having
> to disable/enable the PWM, or abruptly change the period/dutycyle/polarity
> config.
> 
> Thierry, I hope this version meets your expectations, if that's not the
> case, could you let me know quickly so I can adjust the implementation
> accordingly (I'd really like to get most of those changes in 4.7).

Oh, I forgot to mention that I'm not necessarily expecting all those
patches to be taken in one go. We only need patches 1 to 31 for the
problem exposed by Doug. Patch 32 is deprecating the non-atomic APIs and
patches 33 to 46 are switching all PWM users to the atomic APIs to avoid
compilation warnings.
It's up to you to decide which you'd like to take.

> 
> Best Regards,
> 
> Boris
> 
> Changes since v4:
> - introduce pwm_args to expose per-board/platform config
> - deprecate non-atomic APIs
> - implement non-atomic functions as wrappers around atomic ones
> - patch all PWM users to use the atomic API
> - rename the ->reset_state() hook into ->get_state()
> - drop most acks
> - rework PWM config in the pwm-regulator driver
> - patch sun4i and sti PWM drivers to support HW readout
> 
> Changes since v3:
> - rebased on pwm/for-next after pulling 4.4-rc1
> - replace direct access to pwm fields by pwm_get/set_xxx() helpers, thus
>   fixing some build errors
> - split changes to allow each maintainer to review/ack or take the
>   modification through its subsystem
> 
> Changes since v2:
> - rebased on top of 4.3-rc2
> - reintroduced pwm-regulator patches
> 
> Changes since v1:
> - dropped applied patches
> - squashed Heiko's fixes into the rockchip driver changes
> - made a few cosmetic changes
> - added kerneldoc comments
> - added Heiko's patch to display more information in debugfs
> - dropped pwm-regulator patches (should be submitted separately)
> 
> *** BLURB HERE ***
> 
> Boris Brezillon (45):
>   pwm: rcar: make use of pwm_is_enabled()
>   backlight: pwm_bl: remove useless call to pwm_set_period()
>   backlight: lm3630a_bl: stop messing with the pwm->period field
>   pwm: get rid of pwm->lock
>   pwm: introduce the pwm_args concept
>   pwm: use pwm_get/set_xxx() helpers where appropriate
>   clk: pwm: use pwm_get_args() where appropriate
>   hwmon: pwm-fan: use pwm_get_args() where appropriate
>   misc: max77693-haptic: use pwm_get_args() where appropriate
>   leds: pwm: use pwm_get_args() where appropriate
>   regulator: pwm: use pwm_get_args() where appropriate
>   fbdev: ssd1307fb: use pwm_get_args() where appropriate
>   backlight: pwm_bl: use pwm_get_args() where appropriate
>   pwm: keep PWM state in sync with hardware state
>   pwm: introduce the pwm_state concept
>   pwm: move the enabled/disabled info into pwm_state
>   pwm: add the PWM initial state retrieval infra
>   pwm: add the core infrastructure to allow atomic update
>   pwm: switch to the atomic API
>   pwm: rockchip: add initial state retrieval
>   pwm: rockchip: avoid glitches on already running PWMs
>   pwm: rockchip: add support for atomic update
>   pwm: sti: add support for initial state retrieval
>   pwm: sti: avoid glitches on already running PWMs
>   pwm: sun4i: implement hardware readout
>   regulator: pwm: adjust PWM config at probe time
>   regulator: pwm: swith to the atomic PWM API
>   regulator: pwm: properly initialize the ->state field
>   regulator: pwm: retrieve correct voltage
>   pwm: update documentation
>   pwm: deprecate pwm_config(), pwm_enable() and pwm_disable()
>   pwm: replace pwm_disable() by pwm_apply_state()
>   clk: pwm: switch to the atomic API
>   hwmon: pwm-fan: switch to the atomic API
>   input: misc: max77693: switch to the atomic API
>   input: misc: max8997: switch to the atomic PWM API
>   input: misc: pwm-beeper: switch to the atomic PWM API
>   leds: pwm: switch to the atomic PWM API
>   backlight: lm3630a: switch to the atomic PWM API
>   backlight: lp855x: switch to the atomic PWM API
>   backlight: lp8788: switch to the atomic PWM API
>   backlight: pwm_bl: switch to the atomic PWM API
>   video: ssd1307fb: switch to the atomic PWM API
>   drm: i915: switch to the atomic PWM API
>   ARM: s3c24xx: rx1950: switch to the atomic PWM API
> 
> Heiko Stübner (1):
>   pwm: add information about polarity, duty cycle and period to debugfs
> 
>  Documentation/pwm.txt|  27 +++-
>  arch/arm/mach-s3c24xx/mach-rx1950.c  |  17 +-
>