[GIT PULL] pwm: Changes for v5.13-rc1

From: Thierry Reding
Date: Wed May 05 2021 - 14:39:18 EST


Hi Linus,

The following changes since commit a38fd8748464831584a19438cbb3082b5a2dab15:

Linux 5.12-rc2 (2021-03-05 17:33:41 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm.git tags/pwm/for-5.13-rc1

for you to fetch changes up to a6efb35019d00f483a0e5f188747723371d659fe:

pwm: Reword docs about pwm_apply_state() (2021-04-26 08:49:48 +0200)

Thanks,
Thierry

----------------------------------------------------------------
pwm: Changes for v5.13-rc1

This set of changes adds support for the PWM controller found on Toshiba
Visconti SoCs and converts a couple of drivers to the atomic API.

There's also a bunch of cleanups and minor fixes across the board.

----------------------------------------------------------------
Clemens Gruber (3):
pwm: pca9685: Switch to atomic API
pwm: pca9685: Support hardware readout
pwm: pca9685: Improve runtime PM behavior

Fabio Estevam (1):
pwm: imx-tpm: Use a single line for error message

Jiapeng Chong (1):
pwm: mediatek: Remove unused function

Johan Jonker (4):
dt-bindings: pwm: Convert pwm-rockchip.txt to YAML
dt-bindings: pwm: rockchip: Add more compatible strings
ARM: dts: rockchip: Remove clock-names from PWM nodes
arm64: dts: rockchip: Remove clock-names from PWM nodes

Nobuhiro Iwamatsu (2):
dt-bindings: pwm: Add bindings for Toshiba Visconti PWM Controller
pwm: visconti: Add Toshiba Visconti SoC PWM support

Uwe Kleine-König (24):
pwm: bcm2835: Improve period and duty cycle calculation
pwm: ab8500: Implement .apply instead of .config, .enable and .disable
pwm: Always allocate PWM chip base ID dynamically
pwm: Return -EINVAL for old-style drivers without .set_polarity callback
pwm: atmel-tcb: Implement .apply callback
pwm: atmel-tcb: Only free resources after pwm_chip_remove() returned
pwm: sprd: Refuse requests with unsupported polarity
pwm: cros-ec: Refuse requests with unsupported polarity
pwm: bcm-kona: Use pwmchip_add() instead of pwmchip_add_with_polarity()
pwm: atmel-hlcdc: Use pwmchip_add() instead of pwmchip_add_with_polarity()
pwm: Drop function pwmchip_add_with_polarity()
pwm: Clarify which state pwm_get_state() returns
pwm: atmel: Free resources only after pwmchip_remove()
pwm: bcm-iproc: Free resources only after pwmchip_remove()
pwm: bcm2835: Free resources only after pwmchip_remove()
pwm: bcm-kona: Don't modify HW state in .remove callback
pwm: lpc18xx-sct: Free resources only after pwmchip_remove()
pwm: lpc3200: Don't modify HW state in .remove callback
pwm: sti: Don't modify HW state in .remove callback
pwm: sti: Free resources only after pwmchip_remove()
pwm: lpss: Don't modify HW state in .remove callback
pwm: atmel: Fix duty cycle calculation in .get_state()
pwm: atmel: Improve duty cycle calculation in .apply()
pwm: Reword docs about pwm_apply_state()

.../devicetree/bindings/pwm/pwm-rockchip.txt | 27 --
.../devicetree/bindings/pwm/pwm-rockchip.yaml | 100 +++++++
.../bindings/pwm/toshiba,pwm-visconti.yaml | 43 +++
Documentation/driver-api/pwm.rst | 6 +-
arch/arm/boot/dts/rk3036.dtsi | 4 -
arch/arm/boot/dts/rk3288.dtsi | 4 -
arch/arm64/boot/dts/rockchip/rk3368.dtsi | 4 -
arch/arm64/boot/dts/rockchip/rk3399.dtsi | 4 -
drivers/pwm/Kconfig | 9 +
drivers/pwm/Makefile | 1 +
drivers/pwm/core.c | 48 +---
drivers/pwm/pwm-ab8500.c | 54 ++--
drivers/pwm/pwm-atmel-hlcdc.c | 3 +-
drivers/pwm/pwm-atmel-tcb.c | 42 ++-
drivers/pwm/pwm-atmel.c | 30 +-
drivers/pwm/pwm-bcm-iproc.c | 5 +-
drivers/pwm/pwm-bcm-kona.c | 8 +-
drivers/pwm/pwm-bcm2835.c | 40 ++-
drivers/pwm/pwm-berlin.c | 1 -
drivers/pwm/pwm-brcmstb.c | 1 -
drivers/pwm/pwm-clps711x.c | 1 -
drivers/pwm/pwm-crc.c | 1 -
drivers/pwm/pwm-cros-ec.c | 4 +-
drivers/pwm/pwm-dwc.c | 1 -
drivers/pwm/pwm-ep93xx.c | 1 -
drivers/pwm/pwm-fsl-ftm.c | 1 -
drivers/pwm/pwm-hibvt.c | 1 -
drivers/pwm/pwm-img.c | 1 -
drivers/pwm/pwm-imx-tpm.c | 5 +-
drivers/pwm/pwm-imx1.c | 1 -
drivers/pwm/pwm-imx27.c | 1 -
drivers/pwm/pwm-intel-lgm.c | 1 -
drivers/pwm/pwm-iqs620a.c | 1 -
drivers/pwm/pwm-jz4740.c | 1 -
drivers/pwm/pwm-keembay.c | 1 -
drivers/pwm/pwm-lp3943.c | 1 -
drivers/pwm/pwm-lpc18xx-sct.c | 5 +-
drivers/pwm/pwm-lpc32xx.c | 5 -
drivers/pwm/pwm-lpss.c | 7 -
drivers/pwm/pwm-mediatek.c | 7 -
drivers/pwm/pwm-meson.c | 1 -
drivers/pwm/pwm-mtk-disp.c | 1 -
drivers/pwm/pwm-mxs.c | 1 -
drivers/pwm/pwm-omap-dmtimer.c | 1 -
drivers/pwm/pwm-pca9685.c | 303 +++++++++------------
drivers/pwm/pwm-pxa.c | 1 -
drivers/pwm/pwm-rcar.c | 1 -
drivers/pwm/pwm-renesas-tpu.c | 1 -
drivers/pwm/pwm-rockchip.c | 1 -
drivers/pwm/pwm-samsung.c | 1 -
drivers/pwm/pwm-sifive.c | 1 -
drivers/pwm/pwm-sl28cpld.c | 1 -
drivers/pwm/pwm-spear.c | 1 -
drivers/pwm/pwm-sprd.c | 4 +-
drivers/pwm/pwm-sti.c | 7 +-
drivers/pwm/pwm-stm32-lp.c | 1 -
drivers/pwm/pwm-stm32.c | 1 -
drivers/pwm/pwm-stmpe.c | 1 -
drivers/pwm/pwm-sun4i.c | 1 -
drivers/pwm/pwm-tegra.c | 1 -
drivers/pwm/pwm-tiecap.c | 1 -
drivers/pwm/pwm-tiehrpwm.c | 1 -
drivers/pwm/pwm-twl-led.c | 1 -
drivers/pwm/pwm-twl.c | 1 -
drivers/pwm/pwm-visconti.c | 190 +++++++++++++
drivers/pwm/pwm-vt8500.c | 1 -
include/linux/pwm.h | 7 +-
67 files changed, 619 insertions(+), 395 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/pwm/pwm-rockchip.txt
create mode 100644 Documentation/devicetree/bindings/pwm/pwm-rockchip.yaml
create mode 100644 Documentation/devicetree/bindings/pwm/toshiba,pwm-visconti.yaml
create mode 100644 drivers/pwm/pwm-visconti.c