aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-11-16 15:21:40 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2013-11-16 15:21:40 -0500
commit0bde7294e2ada03d0f1cc61cec51274081d9a9cf (patch)
treeb1cf62a298b566d9bcc87d9f572f506b98809d66
parent449bf8d03c5b94f00cc014ff601c2fe2eebb5a6e (diff)
parent1b3f25ce991d528bd0d825b3f14a45904037a382 (diff)
Merge tag 'pwm/for-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
Pull pwm changes from Thierry Reding: "Mostly bug fixes and clean up. There is a new driver, which is actually moving a custom PWM driver from drivers/misc. The majority of the patches are enhancements to the device tree support in the pwm-backlight driver. Backlights can now additionally be powered using a regulator and enabled using a GPIO in addition to just the PWM input" * tag 'pwm/for-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (30 commits) Documentation/pwm: Update supported SoC name for pwm-samsung pwm: samsung: Fix kernel warning while unexporting a channel MAINTAINERS: Move PWM subsystem tree to kernel.org Documentation/pwm: Fix trivial typos pwm-backlight: Remove unused variable pwm_backlight: avoid short blank screen while doing hibernation pwm-backlight: Fix brightness adjustment pwm: add ep93xx PWM support pwm-backlight: Allow for non-increasing brightness levels pwm-backlight: Add power supply support pwm-backlight: Use new enable_gpio field unicore32: Initialize PWM backlight enable_gpio field ARM: shmobile: Initialize PWM backlight enable_gpio field ARM: SAMSUNG: Initialize PWM backlight enable_gpio field ARM: pxa: Initialize PWM backlight enable_gpio field ARM: OMAP: Initialize PWM backlight enable_gpio field pwm-backlight: Add optional enable GPIO pwm-backlight: Track enable state pwm-backlight: Refactor backlight power on/off pwm-backlight: Improve readability ...
-rw-r--r--Documentation/devicetree/bindings/pwm/pwm-samsung.txt2
-rw-r--r--Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt7
-rw-r--r--Documentation/pwm.txt4
-rw-r--r--MAINTAINERS3
-rw-r--r--arch/arm/mach-pxa/cm-x300.c1
-rw-r--r--arch/arm/mach-pxa/colibri-pxa270-income.c1
-rw-r--r--arch/arm/mach-pxa/ezx.c1
-rw-r--r--arch/arm/mach-pxa/hx4700.c1
-rw-r--r--arch/arm/mach-pxa/lpd270.c1
-rw-r--r--arch/arm/mach-pxa/magician.c1
-rw-r--r--arch/arm/mach-pxa/mainstone.c1
-rw-r--r--arch/arm/mach-pxa/mioa701.c1
-rw-r--r--arch/arm/mach-pxa/palm27x.c1
-rw-r--r--arch/arm/mach-pxa/palmtc.c35
-rw-r--r--arch/arm/mach-pxa/palmte2.c1
-rw-r--r--arch/arm/mach-pxa/pcm990-baseboard.c1
-rw-r--r--arch/arm/mach-pxa/raumfeld.c1
-rw-r--r--arch/arm/mach-pxa/tavorevb.c2
-rw-r--r--arch/arm/mach-pxa/viper.c1
-rw-r--r--arch/arm/mach-pxa/z2.c2
-rw-r--r--arch/arm/mach-pxa/zylonite.c1
-rw-r--r--arch/arm/mach-s3c24xx/mach-h1940.c1
-rw-r--r--arch/arm/mach-s3c24xx/mach-rx1950.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-hmt.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6410.c1
-rw-r--r--arch/arm/mach-s5p64x0/mach-smdk6440.c1
-rw-r--r--arch/arm/mach-s5p64x0/mach-smdk6450.c1
-rw-r--r--arch/arm/mach-s5pc100/mach-smdkc100.c1
-rw-r--r--arch/arm/mach-s5pv210/mach-smdkv210.c1
-rw-r--r--arch/arm/mach-shmobile/board-armadillo800eva.c1
-rw-r--r--arch/arm/plat-samsung/dev-backlight.c5
-rw-r--r--arch/unicore32/kernel/puv3-nb0916.c1
-rw-r--r--drivers/misc/Kconfig13
-rw-r--r--drivers/misc/Makefile1
-rw-r--r--drivers/misc/ep93xx_pwm.c286
-rw-r--r--drivers/pwm/Kconfig9
-rw-r--r--drivers/pwm/Makefile1
-rw-r--r--drivers/pwm/pwm-atmel-tcb.c4
-rw-r--r--drivers/pwm/pwm-ep93xx.c230
-rw-r--r--drivers/pwm/pwm-imx.c3
-rw-r--r--drivers/pwm/pwm-lpc32xx.c2
-rw-r--r--drivers/pwm/pwm-mxs.c2
-rw-r--r--drivers/pwm/pwm-samsung.c3
-rw-r--r--drivers/pwm/pwm-tiecap.c6
-rw-r--r--drivers/pwm/pwm-tiehrpwm.c6
-rw-r--r--drivers/pwm/pwm-twl-led.c1
-rw-r--r--drivers/pwm/pwm-twl.c1
-rw-r--r--drivers/video/backlight/pwm_bl.c166
-rw-r--r--include/linux/pwm_backlight.h5
51 files changed, 433 insertions, 392 deletions
diff --git a/Documentation/devicetree/bindings/pwm/pwm-samsung.txt b/Documentation/devicetree/bindings/pwm/pwm-samsung.txt
index d61fccd40bad..5538de9c2007 100644
--- a/Documentation/devicetree/bindings/pwm/pwm-samsung.txt
+++ b/Documentation/devicetree/bindings/pwm/pwm-samsung.txt
@@ -15,7 +15,7 @@ Required properties:
15 samsung,s5pc100-pwm - for 32-bit timers present on S5PC100, S5PV210, 15 samsung,s5pc100-pwm - for 32-bit timers present on S5PC100, S5PV210,
16 Exynos4210 rev0 SoCs 16 Exynos4210 rev0 SoCs
17 samsung,exynos4210-pwm - for 32-bit timers present on Exynos4210, 17 samsung,exynos4210-pwm - for 32-bit timers present on Exynos4210,
18 Exynos4x12 and Exynos5250 SoCs 18 Exynos4x12, Exynos5250 and Exynos5420 SoCs
19- reg: base address and size of register area 19- reg: base address and size of register area
20- interrupts: list of timer interrupts (one interrupt per timer, starting at 20- interrupts: list of timer interrupts (one interrupt per timer, starting at
21 timer 0) 21 timer 0)
diff --git a/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt b/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt
index 1e4fc727f3b1..764db86d441a 100644
--- a/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt
+++ b/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt
@@ -10,12 +10,16 @@ Required properties:
10 last value in the array represents a 100% duty cycle (brightest). 10 last value in the array represents a 100% duty cycle (brightest).
11 - default-brightness-level: the default brightness level (index into the 11 - default-brightness-level: the default brightness level (index into the
12 array defined by the "brightness-levels" property) 12 array defined by the "brightness-levels" property)
13 - power-supply: regulator for supply voltage
13 14
14Optional properties: 15Optional properties:
15 - pwm-names: a list of names for the PWM devices specified in the 16 - pwm-names: a list of names for the PWM devices specified in the
16 "pwms" property (see PWM binding[0]) 17 "pwms" property (see PWM binding[0])
18 - enable-gpios: contains a single GPIO specifier for the GPIO which enables
19 and disables the backlight (see GPIO binding[1])
17 20
18[0]: Documentation/devicetree/bindings/pwm/pwm.txt 21[0]: Documentation/devicetree/bindings/pwm/pwm.txt
22[1]: Documentation/devicetree/bindings/gpio/gpio.txt
19 23
20Example: 24Example:
21 25
@@ -25,4 +29,7 @@ Example:
25 29
26 brightness-levels = <0 4 8 16 32 64 128 255>; 30 brightness-levels = <0 4 8 16 32 64 128 255>;
27 default-brightness-level = <6>; 31 default-brightness-level = <6>;
32
33 power-supply = <&vdd_bl_reg>;
34 enable-gpios = <&gpio 58 0>;
28 }; 35 };
diff --git a/Documentation/pwm.txt b/Documentation/pwm.txt
index 1039b68fe9c6..93cb97974986 100644
--- a/Documentation/pwm.txt
+++ b/Documentation/pwm.txt
@@ -39,7 +39,7 @@ New users should use the pwm_get() function and pass to it the consumer
39device or a consumer name. pwm_put() is used to free the PWM device. Managed 39device or a consumer name. pwm_put() is used to free the PWM device. Managed
40variants of these functions, devm_pwm_get() and devm_pwm_put(), also exist. 40variants of these functions, devm_pwm_get() and devm_pwm_put(), also exist.
41 41
42After being requested a PWM has to be configured using: 42After being requested, a PWM has to be configured using:
43 43
44int pwm_config(struct pwm_device *pwm, int duty_ns, int period_ns); 44int pwm_config(struct pwm_device *pwm, int duty_ns, int period_ns);
45 45
@@ -94,7 +94,7 @@ for new drivers to use the generic PWM framework.
94A new PWM controller/chip can be added using pwmchip_add() and removed 94A new PWM controller/chip can be added using pwmchip_add() and removed
95again with pwmchip_remove(). pwmchip_add() takes a filled in struct 95again with pwmchip_remove(). pwmchip_add() takes a filled in struct
96pwm_chip as argument which provides a description of the PWM chip, the 96pwm_chip as argument which provides a description of the PWM chip, the
97number of PWM devices provider by the chip and the chip-specific 97number of PWM devices provided by the chip and the chip-specific
98implementation of the supported PWM operations to the framework. 98implementation of the supported PWM operations to the framework.
99 99
100Locking 100Locking
diff --git a/MAINTAINERS b/MAINTAINERS
index aef332323256..88bc6edee262 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6785,8 +6785,7 @@ PWM SUBSYSTEM
6785M: Thierry Reding <thierry.reding@gmail.com> 6785M: Thierry Reding <thierry.reding@gmail.com>
6786L: linux-pwm@vger.kernel.org 6786L: linux-pwm@vger.kernel.org
6787S: Maintained 6787S: Maintained
6788W: http://gitorious.org/linux-pwm 6788T: git git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm.git
6789T: git git://gitorious.org/linux-pwm/linux-pwm.git
6790F: Documentation/pwm.txt 6789F: Documentation/pwm.txt
6791F: Documentation/devicetree/bindings/pwm/ 6790F: Documentation/devicetree/bindings/pwm/
6792F: include/linux/pwm.h 6791F: include/linux/pwm.h
diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
index f9423493ed36..584439bfa59f 100644
--- a/arch/arm/mach-pxa/cm-x300.c
+++ b/arch/arm/mach-pxa/cm-x300.c
@@ -310,6 +310,7 @@ static struct platform_pwm_backlight_data cm_x300_backlight_data = {
310 .max_brightness = 100, 310 .max_brightness = 100,
311 .dft_brightness = 100, 311 .dft_brightness = 100,
312 .pwm_period_ns = 10000, 312 .pwm_period_ns = 10000,
313 .enable_gpio = -1,
313}; 314};
314 315
315