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

Commit 34b20e6d authored by Linus Torvalds's avatar Linus Torvalds
Browse files

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

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

Pull pwm changes from Thierry Reding:
 "The set of changes for this merge window contains two new drivers: one
  for Rockchip SoCs and another for STMicroelectronics STiH4xx SoCs.

  The remainder of the changes are the usual small cleanups such as
  removing redundant OOM messages, signalling that a PWM chip's
  operations can sleep and removing an unneeded dependency"

* tag 'pwm/for-3.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
  pwm: rockchip: Added to support for RK3288 SoC
  pwm: rockchip: document RK3288 SoC compatible
  pwm: sti: Remove PWM period table
  pwm: sti: Sync between enable/disable calls
  pwm: sti: Ensure same period values for all channels
  pwm: sti: Fix PWM prescaler handling
  pwm: sti: Supply Device Tree binding documentation for ST's PWM IP
  pwm: sti: Add new driver for ST's PWM IP
  pwm: imx: set can_sleep flag for imx_pwm
  pwm: lpss: remove dependency on clk framework
  pwm: pwm-tipwmss: remove unnecessary OOM messages
  pwm: rockchip: document device tree bindings
  pwm: add Rockchip SoC PWM support
parents 06b49ea4 f6306299
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
Rockchip PWM controller

Required properties:
 - compatible: should be "rockchip,<name>-pwm"
   "rockchip,rk2928-pwm": found on RK29XX,RK3066 and RK3188 SoCs
   "rockchip,rk3288-pwm": found on RK3288 SoC
   "rockchip,vop-pwm": found integrated in VOP on RK3288 SoC
 - reg: physical base address and length of the controller's registers
 - clocks: phandle and clock specifier of the PWM reference clock
 - #pwm-cells: should be 2. See pwm.txt in this directory for a
   description of the cell format.

Example:

	pwm0: pwm@20030000 {
		compatible = "rockchip,rk2928-pwm";
		reg = <0x20030000 0x10>;
		clocks = <&cru PCLK_PWM01>;
		#pwm-cells = <2>;
	};
+41 −0
Original line number Diff line number Diff line
STMicroelectronics PWM driver bindings
--------------------------------------

Required parameters:
- compatible :		"st,pwm"
- #pwm-cells : 		Number of cells used to specify a PWM. First cell
			specifies the per-chip index of the PWM to use and the
			second cell is the period in nanoseconds - fixed to 2
			for STiH41x.
- reg :			Physical base address and length of the controller's
			registers.
- pinctrl-names: 	Set to "default".
- pinctrl-0: 		List of phandles pointing to pin configuration nodes
			for PWM module.
			For Pinctrl properties, please refer to [1].
- clock-names: 		Set to "pwm".
- clocks: 		phandle of the clock used by the PWM module.
			For Clk properties, please refer to [2].

Optional properties:
- st,pwm-num-chan:	Number of available channels. If not passed, the driver
			will consider single channel by default.

[1] Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
[2] Documentation/devicetree/bindings/clock/clock-bindings.txt

Example:

pwm1: pwm@fe510000 {
	compatible = "st,pwm";
	reg = <0xfe510000 0x68>;
	#pwm-cells = <2>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pwm1_chan0_default
		     &pinctrl_pwm1_chan1_default
		     &pinctrl_pwm1_chan2_default
		     &pinctrl_pwm1_chan3_default>;
	clocks = <&clk_sysin>;
	clock-names = "pwm";
	st,pwm-num-chan = <4>;
};
+17 −0
Original line number Diff line number Diff line
@@ -206,6 +206,13 @@ config PWM_RENESAS_TPU
	  To compile this driver as a module, choose M here: the module
	  will be called pwm-renesas-tpu.

config PWM_ROCKCHIP
	tristate "Rockchip PWM support"
	depends on ARCH_ROCKCHIP
	help
	  Generic PWM framework driver for the PWM controller found on
	  Rockchip SoCs.

config PWM_SAMSUNG
	tristate "Samsung PWM support"
	depends on PLAT_SAMSUNG
@@ -226,6 +233,16 @@ config PWM_SPEAR
	  To compile this driver as a module, choose M here: the module
	  will be called pwm-spear.

config PWM_STI
	tristate "STiH4xx PWM support"
	depends on ARCH_STI
	depends on OF
	help
	  Generic PWM framework driver for STiH4xx SoCs.

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

config PWM_TEGRA
	tristate "NVIDIA Tegra PWM support"
	depends on ARCH_TEGRA
+2 −0
Original line number Diff line number Diff line
@@ -18,8 +18,10 @@ obj-$(CONFIG_PWM_PCA9685) += pwm-pca9685.o
obj-$(CONFIG_PWM_PUV3)		+= pwm-puv3.o
obj-$(CONFIG_PWM_PXA)		+= pwm-pxa.o
obj-$(CONFIG_PWM_RENESAS_TPU)	+= pwm-renesas-tpu.o
obj-$(CONFIG_PWM_ROCKCHIP)	+= pwm-rockchip.o
obj-$(CONFIG_PWM_SAMSUNG)	+= pwm-samsung.o
obj-$(CONFIG_PWM_SPEAR)		+= pwm-spear.o
obj-$(CONFIG_PWM_STI)		+= pwm-sti.o
obj-$(CONFIG_PWM_TEGRA)		+= pwm-tegra.o
obj-$(CONFIG_PWM_TIECAP)	+= pwm-tiecap.o
obj-$(CONFIG_PWM_TIEHRPWM)	+= pwm-tiehrpwm.o
+1 −0
Original line number Diff line number Diff line
@@ -262,6 +262,7 @@ static int imx_pwm_probe(struct platform_device *pdev)
	imx->chip.dev = &pdev->dev;
	imx->chip.base = -1;
	imx->chip.npwm = 1;
	imx->chip.can_sleep = true;

	r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
	imx->mmio_base = devm_ioremap_resource(&pdev->dev, r);
Loading