Merge branch 'for-3.6' of git://gitorious.org/linux-pwm/linux-pwm
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 30 Jul 2012 16:22:37 +0000 (09:22 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 30 Jul 2012 16:22:37 +0000 (09:22 -0700)
Pull PWM subsystem from Thierry Reding:
 "The new PWM subsystem aims at collecting all implementations of the
  legacy PWM API and to eventually replace it completely.

  The subsystem has been in development for over half a year now and
  many drivers have already been converted.  It has been in linux-next
  for a couple of weeks and there have been no major issues so I think
  it is ready for inclusion in your tree."

Arnd Bergmann <arnd@arndb.de>:
 "Very much Ack on the new subsystem.  It uses the interface
  declarations as the previously separate pwm drivers, so nothing
  changes for now in the drivers using it, although it enables us to
  change those more easily in the future if we want to.

  This work is also one of the missing pieces that are required to
  eventually build ARM kernels for multiple platforms, which is
  currently prohibited (amongs other things) by the fact that you cannot
  have more than one driver exporting the pwm functions."

Tested-and-acked-by: Alexandre Courbot <acourbot@nvidia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Philip, Avinash <avinashphilip@ti.com> # TI's AM33xx platforms
Acked-By: Alexandre Pereira da Silva <aletes.xgr@gmail.com> # LPC32XX
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Sachin Kamat <sachin.kamat@linaro.org>
Fix up trivial conflicts with other cleanups and DT updates.

* 'for-3.6' of git://gitorious.org/linux-pwm/linux-pwm: (36 commits)
  pwm: pwm-tiehrpwm: PWM driver support for EHRPWM
  pwm: pwm-tiecap: PWM driver support for ECAP APWM
  pwm: fix used-uninitialized warning in pwm_get()
  pwm: add lpc32xx PWM support
  pwm_backlight: pass correct brightness to callback
  pwm: Use pr_* functions in pwm-samsung.c file
  pwm: Convert pwm-samsung to use devm_* APIs
  pwm: Convert pwm-tegra to use devm_clk_get()
  pwm: pwm-mxs: Return proper error if pwmchip_remove() fails
  pwm: pwm-bfin: Return proper error if pwmchip_remove() fails
  pwm: pxa: Propagate pwmchip_remove() error
  pwm: Convert pwm-pxa to use devm_* APIs
  pwm: Convert pwm-vt8500 to use devm_* APIs
  pwm: Convert pwm-imx to use devm_* APIs
  pwm: Conflict with legacy PWM API
  pwm: pwm-mxs: add pinctrl support
  pwm: pwm-mxs: use devm_* managed functions
  pwm: pwm-mxs: use global reset function stmp_reset_block
  pwm: pwm-mxs: encode soc name in compatible string
  pwm: Take over maintainership of the PWM subsystem
  ...

14 files changed:
1  2 
MAINTAINERS
arch/arm/Kconfig
arch/arm/boot/dts/tegra20.dtsi
arch/arm/boot/dts/tegra30.dtsi
arch/arm/mach-tegra/board-dt-tegra20.c
arch/arm/mach-tegra/board-dt-tegra30.c
arch/arm/mach-vt8500/Makefile
arch/arm/plat-mxc/Makefile
arch/arm/plat-samsung/Makefile
arch/blackfin/Kconfig
drivers/mfd/Kconfig
drivers/misc/Kconfig
drivers/video/backlight/Kconfig
include/linux/of.h

diff --cc MAINTAINERS
Simple merge
Simple merge
index 9f1921634eb7b8ab19c671fc2de17f0d44a50fc4,846af573f64920f753857ab5b46372d0e2f912af..405d1673904e53805a11551693446b55cfa1831c
                reg = <0x70006400 0x100>;
                reg-shift = <2>;
                interrupts = <0 91 0x04>;
 -              status = "disable";
 +              status = "disabled";
        };
  
+       pwm {
+               compatible = "nvidia,tegra20-pwm";
+               reg = <0x7000a000 0x100>;
+               #pwm-cells = <2>;
+       };
        i2c@7000c000 {
                compatible = "nvidia,tegra20-i2c";
                reg = <0x7000c000 0x100>;
index da740191771f8493f1734636a88244869be5abff,f7f428e81e3a475889b5713255470a662d97eecd..3e4334d14efb4d70bdd88e46c44dc4b6af1e7cf2
                reg = <0x70006400 0x100>;
                reg-shift = <2>;
                interrupts = <0 91 0x04>;
 -              status = "disable";
 +              status = "disabled";
        };
  
+       pwm {
+               compatible = "nvidia,tegra30-pwm", "nvidia,tegra20-pwm";
+               reg = <0x7000a000 0x100>;
+               #pwm-cells = <2>;
+       };
        i2c@7000c000 {
                compatible =  "nvidia,tegra30-i2c", "nvidia,tegra20-i2c";
                reg = <0x7000c000 0x100>;
index d0de9c1192f78eae03b70a8c9d0c7b72e4bc4d0c,962f1a1b12e9b97b437551a2e090164eceafc02d..c0999633a9ab24054a2c5e2cc9d526c020320b8c
@@@ -64,7 -64,7 +64,8 @@@ struct of_dev_auxdata tegra20_auxdata_l
                       &tegra_ehci2_pdata),
        OF_DEV_AUXDATA("nvidia,tegra20-ehci", TEGRA_USB3_BASE, "tegra-ehci.2",
                       &tegra_ehci3_pdata),
-       OF_DEV_AUXDATA("nvidia,tegra20-apbdma", 0x6000a000, "tegra-apbdma", NULL),
++      OF_DEV_AUXDATA("nvidia,tegra20-apbdma", TEGRA_APB_DMA_BASE, "tegra-apbdma", NULL),
+       OF_DEV_AUXDATA("nvidia,tegra20-pwm", TEGRA_PWFM_BASE, "tegra-pwm", NULL),
        {}
  };
  
index ee48214bfd898ea86f2084dba182e85df96bbc58,ffc6cae3eb2cb23c3cf6c645716cebd60193e321..53bf60f1158044bf6ce12a3d05972f02b17bdfb1
@@@ -47,7 -54,7 +49,8 @@@ struct of_dev_auxdata tegra30_auxdata_l
        OF_DEV_AUXDATA("nvidia,tegra20-i2c", 0x7000C700, "tegra-i2c.3", NULL),
        OF_DEV_AUXDATA("nvidia,tegra20-i2c", 0x7000D000, "tegra-i2c.4", NULL),
        OF_DEV_AUXDATA("nvidia,tegra30-ahub", 0x70080000, "tegra30-ahub", NULL),
 +      OF_DEV_AUXDATA("nvidia,tegra30-apbdma", 0x6000a000, "tegra-apbdma", NULL),
+       OF_DEV_AUXDATA("nvidia,tegra30-pwm", TEGRA_PWFM_BASE, "tegra-pwm", NULL),
        {}
  };
  
Simple merge
Simple merge
index b78717496677fae8e17ba77392785aeea90e9ffd,96854721319c72a8ef79836c56c1bf74a9b8a7aa..9e40e8d007404b9f9533c56ad9ebc626c9870116
@@@ -59,7 -59,7 +59,3 @@@ obj-$(CONFIG_SAMSUNG_WAKEMASK)        += wakeu
  
  obj-$(CONFIG_S5P_PM)          += s5p-pm.o s5p-irq-pm.o
  obj-$(CONFIG_S5P_SLEEP)               += s5p-sleep.o
--
- # PWM support
 -# PD support
--
- obj-$(CONFIG_HAVE_PWM)                += pwm.o
 -obj-$(CONFIG_SAMSUNG_PD)      += pd.o
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge