Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit add8462a authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'pwm/for-5.1-rc1' of...

Merge tag 'pwm/for-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm

Pull pwm updates from Thierry Reding:
 "The changes for this cycle are across the board.

  The bulk of it is cleanups, but there's also new device support in
  some drivers as well as more conversions to the atomic API"

* tag 'pwm/for-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (24 commits)
  pwm: atmel: Remove useless symbolic definitions
  pwm: bcm-kona: Update macros to remove braces around numbers
  pwm: imx27: Only enable the clocks once in .get_state()
  pwm: rcar: Improve calculation of divider
  pwm: rcar: Remove legacy APIs
  pwm: rcar: Use "atomic" API on rcar_pwm_resume()
  pwm: rcar: Add support "atomic" API
  pwm: atmel: Add support for SAM9X60's PWM controller
  pwm: atmel: Add PWM binding for SAM9X60
  pwm: atmel: Rename objects of type atmel_pwm_data
  pwm: atmel: Add support for controllers with 32 bit counters
  pwm: atmel: Add struct atmel_pwm_data
  pwm: Add MediaTek MT8183 display PWM driver support
  pwm: hibvt: Add hi3559v100 support
  dt-bindings: pwm: hibvt: Add hi3559v100 support
  pwm: hibvt: Use individual struct per of-data
  pwm: imx: Signedness bug in imx_pwm_get_state()
  pwm: imx: Split into two drivers
  pwm: imx: Don't print an error on -EPROBE_DEFER
  pwm: imx: Set driver data earlier simplifying the end of ->probe()
  ...
parents 3a186d38 d7d96312
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ Required properties:
    - "atmel,at91sam9rl-pwm"
    - "atmel,sama5d3-pwm"
    - "atmel,sama5d2-pwm"
    - "microchip,sam9x60-pwm"
  - reg: physical base address and length of the controller's registers
  - #pwm-cells: Should be 3. See pwm.txt in this directory for a
    description of the cells format.
+2 −0
Original line number Diff line number Diff line
@@ -5,6 +5,8 @@ Required properties:
 The SoC specific strings supported including:
	"hisilicon,hi3516cv300-pwm"
	"hisilicon,hi3519v100-pwm"
	"hisilicon,hi3559v100-shub-pwm"
	"hisilicon,hi3559v100-pwm
- reg: physical base address and length of the controller's registers.
- clocks: phandle and clock specifier of the PWM reference clock.
- resets: phandle and reset specifier for the PWM controller reset.
+13 −4
Original line number Diff line number Diff line
@@ -192,14 +192,23 @@ config PWM_IMG
	  To compile this driver as a module, choose M here: the module
	  will be called pwm-img

config PWM_IMX
	tristate "i.MX PWM support"
config PWM_IMX1
	tristate "i.MX1 PWM support"
	depends on ARCH_MXC
	help
	  Generic PWM framework driver for i.MX.
	  Generic PWM framework driver for i.MX1 and i.MX21

	  To compile this driver as a module, choose M here: the module
	  will be called pwm-imx.
	  will be called pwm-imx1.

config PWM_IMX27
	tristate "i.MX27 PWM support"
	depends on ARCH_MXC
	help
	  Generic PWM framework driver for i.MX27 and later i.MX SoCs.

	  To compile this driver as a module, choose M here: the module
	  will be called pwm-imx27.

config PWM_JZ4740
	tristate "Ingenic JZ47xx PWM support"
+2 −1
Original line number Diff line number Diff line
@@ -17,7 +17,8 @@ obj-$(CONFIG_PWM_EP93XX) += pwm-ep93xx.o
obj-$(CONFIG_PWM_FSL_FTM)	+= pwm-fsl-ftm.o
obj-$(CONFIG_PWM_HIBVT)		+= pwm-hibvt.o
obj-$(CONFIG_PWM_IMG)		+= pwm-img.o
obj-$(CONFIG_PWM_IMX)		+= pwm-imx.o
obj-$(CONFIG_PWM_IMX1)		+= pwm-imx1.o
obj-$(CONFIG_PWM_IMX27)		+= pwm-imx27.o
obj-$(CONFIG_PWM_JZ4740)	+= pwm-jz4740.o
obj-$(CONFIG_PWM_LP3943)	+= pwm-lp3943.o
obj-$(CONFIG_PWM_LPC18XX_SCT)	+= pwm-lpc18xx-sct.o
+5 −5
Original line number Diff line number Diff line
@@ -472,7 +472,10 @@ int pwm_apply_state(struct pwm_device *pwm, struct pwm_state *state)
	    state->duty_cycle > state->period)
		return -EINVAL;

	if (!memcmp(state, &pwm->state, sizeof(*state)))
	if (state->period == pwm->state.period &&
	    state->duty_cycle == pwm->state.duty_cycle &&
	    state->polarity == pwm->state.polarity &&
	    state->enabled == pwm->state.enabled)
		return 0;

	if (pwm->chip->ops->apply) {
@@ -1033,9 +1036,6 @@ static int pwm_seq_show(struct seq_file *s, void *v)
		   dev_name(chip->dev), chip->npwm,
		   (chip->npwm != 1) ? "s" : "");

	if (chip->ops->dbg_show)
		chip->ops->dbg_show(chip, s);
	else
	pwm_dbg_show(chip, s);

	return 0;
Loading