xref: /openbmc/linux/drivers/pwm/Kconfig (revision af0ba001)
10c2498f1SSascha Hauermenuconfig PWM
2b817bf5cSThierry Reding	bool "Pulse-Width Modulation (PWM) Support"
30c2498f1SSascha Hauer	help
4b817bf5cSThierry Reding	  Generic Pulse-Width Modulation (PWM) support.
50c2498f1SSascha Hauer
6b817bf5cSThierry Reding	  In Pulse-Width Modulation, a variation of the width of pulses
7b817bf5cSThierry Reding	  in a rectangular pulse signal is used as a means to alter the
8b817bf5cSThierry Reding	  average power of the signal. Applications include efficient
9b817bf5cSThierry Reding	  power delivery and voltage regulation. In computer systems,
10b817bf5cSThierry Reding	  PWMs are commonly used to control fans or the brightness of
11b817bf5cSThierry Reding	  display backlights.
12b817bf5cSThierry Reding
13b817bf5cSThierry Reding	  This framework provides a generic interface to PWM devices
14b817bf5cSThierry Reding	  within the Linux kernel. On the driver side it provides an API
15b817bf5cSThierry Reding	  to register and unregister a PWM chip, an abstraction of a PWM
16b817bf5cSThierry Reding	  controller, that supports one or more PWM devices. Client
17b817bf5cSThierry Reding	  drivers can request PWM devices and use the generic framework
18b817bf5cSThierry Reding	  to configure as well as enable and disable them.
19b817bf5cSThierry Reding
20b817bf5cSThierry Reding	  This generic framework replaces the legacy PWM framework which
21b817bf5cSThierry Reding	  allows only a single driver implementing the required API. Not
22b817bf5cSThierry Reding	  all legacy implementations have been ported to the framework
23b817bf5cSThierry Reding	  yet. The framework provides an API that is backward compatible
24b817bf5cSThierry Reding	  with the legacy framework so that existing client drivers
25b817bf5cSThierry Reding	  continue to work as expected.
26b817bf5cSThierry Reding
27b817bf5cSThierry Reding	  If unsure, say no.
280c2498f1SSascha Hauer
290c2498f1SSascha Hauerif PWM
300c2498f1SSascha Hauer
316173f8f4SThierry Redingconfig PWM_AB8500
326173f8f4SThierry Reding	tristate "AB8500 PWM support"
336173f8f4SThierry Reding	depends on AB8500_CORE && ARCH_U8500
346173f8f4SThierry Reding	help
356173f8f4SThierry Reding	  Generic PWM framework driver for Analog Baseband AB8500.
366173f8f4SThierry Reding
376173f8f4SThierry Reding	  To compile this driver as a module, choose M here: the module
386173f8f4SThierry Reding	  will be called pwm-ab8500.
396173f8f4SThierry Reding
40a4315e3cSThierry Redingconfig PWM_BFIN
41a4315e3cSThierry Reding	tristate "Blackfin PWM support"
42a4315e3cSThierry Reding	depends on BFIN_GPTIMERS
43a4315e3cSThierry Reding	help
44a4315e3cSThierry Reding	  Generic PWM framework driver for Blackfin.
45a4315e3cSThierry Reding
46a4315e3cSThierry Reding	  To compile this driver as a module, choose M here: the module
47a4315e3cSThierry Reding	  will be called pwm-bfin.
48a4315e3cSThierry Reding
4929693248SSascha Hauerconfig PWM_IMX
5029693248SSascha Hauer	tristate "i.MX pwm support"
5129693248SSascha Hauer	depends on ARCH_MXC
5229693248SSascha Hauer	help
5329693248SSascha Hauer	  Generic PWM framework driver for i.MX.
5429693248SSascha Hauer
5529693248SSascha Hauer	  To compile this driver as a module, choose M here: the module
5629693248SSascha Hauer	  will be called pwm-imx.
5729693248SSascha Hauer
58f6b8a570SThierry Redingconfig PWM_JZ4740
59f6b8a570SThierry Reding	tristate "Ingenic JZ4740 PWM support"
60f6b8a570SThierry Reding	depends on MACH_JZ4740
61f6b8a570SThierry Reding	help
62f6b8a570SThierry Reding	  Generic PWM framework driver for Ingenic JZ4740 based
63f6b8a570SThierry Reding	  machines.
64f6b8a570SThierry Reding
65f6b8a570SThierry Reding	  To compile this driver as a module, choose M here: the module
66f6b8a570SThierry Reding	  will be called pwm-jz4740.
67f6b8a570SThierry Reding
682132fa8dSAlexandre Pereira da Silvaconfig PWM_LPC32XX
692132fa8dSAlexandre Pereira da Silva	tristate "LPC32XX PWM support"
702132fa8dSAlexandre Pereira da Silva	depends on ARCH_LPC32XX
712132fa8dSAlexandre Pereira da Silva	help
722132fa8dSAlexandre Pereira da Silva	  Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
732132fa8dSAlexandre Pereira da Silva	  PWM controllers.
742132fa8dSAlexandre Pereira da Silva
752132fa8dSAlexandre Pereira da Silva	  To compile this driver as a module, choose M here: the module
762132fa8dSAlexandre Pereira da Silva	  will be called pwm-lpc32xx.
772132fa8dSAlexandre Pereira da Silva
784dce82c1SShawn Guoconfig PWM_MXS
794dce82c1SShawn Guo	tristate "Freescale MXS PWM support"
804dce82c1SShawn Guo	depends on ARCH_MXS && OF
8101bf32e9SShawn Guo	select STMP_DEVICE
824dce82c1SShawn Guo	help
834dce82c1SShawn Guo	  Generic PWM framework driver for Freescale MXS.
844dce82c1SShawn Guo
854dce82c1SShawn Guo	  To compile this driver as a module, choose M here: the module
864dce82c1SShawn Guo	  will be called pwm-mxs.
874dce82c1SShawn Guo
8879c11b6fSThierry Redingconfig PWM_PUV3
8979c11b6fSThierry Reding	tristate "PKUnity NetBook-0916 PWM support"
9079c11b6fSThierry Reding	depends on ARCH_PUV3
9179c11b6fSThierry Reding	help
9279c11b6fSThierry Reding	  Generic PWM framework driver for PKUnity NetBook-0916.
9379c11b6fSThierry Reding
9479c11b6fSThierry Reding	  To compile this driver as a module, choose M here: the module
9579c11b6fSThierry Reding	  will be called pwm-puv3.
9679c11b6fSThierry Reding
9717b2b478SThierry Redingconfig PWM_PXA
9817b2b478SThierry Reding	tristate "PXA PWM support"
9917b2b478SThierry Reding	depends on ARCH_PXA
10017b2b478SThierry Reding	help
10117b2b478SThierry Reding	  Generic PWM framework driver for PXA.
10217b2b478SThierry Reding
10317b2b478SThierry Reding	  To compile this driver as a module, choose M here: the module
10417b2b478SThierry Reding	  will be called pwm-pxa.
10517b2b478SThierry Reding
106215c29d3SSascha Hauerconfig PWM_SAMSUNG
107215c29d3SSascha Hauer	tristate "Samsung pwm support"
108215c29d3SSascha Hauer	depends on PLAT_SAMSUNG
109215c29d3SSascha Hauer	help
110215c29d3SSascha Hauer	  Generic PWM framework driver for Samsung.
111215c29d3SSascha Hauer
112215c29d3SSascha Hauer	  To compile this driver as a module, choose M here: the module
113215c29d3SSascha Hauer	  will be called pwm-samsung.
114215c29d3SSascha Hauer
115ce20364bSShiraz Hashimconfig PWM_SPEAR
116ce20364bSShiraz Hashim	tristate "STMicroelectronics SPEAr PWM support"
117ce20364bSShiraz Hashim	depends on PLAT_SPEAR
118ce20364bSShiraz Hashim	depends on OF
119ce20364bSShiraz Hashim	help
120ce20364bSShiraz Hashim	  Generic PWM framework driver for the PWM controller on ST
121ce20364bSShiraz Hashim	  SPEAr SoCs.
122ce20364bSShiraz Hashim
123ce20364bSShiraz Hashim	  To compile this driver as a module, choose M here: the module
124ce20364bSShiraz Hashim	  will be called pwm-spear.
125ce20364bSShiraz Hashim
1260134b932SThierry Redingconfig PWM_TEGRA
1270134b932SThierry Reding	tristate "NVIDIA Tegra PWM support"
1280134b932SThierry Reding	depends on ARCH_TEGRA
1290134b932SThierry Reding	help
1300134b932SThierry Reding	  Generic PWM framework driver for the PWFM controller found on NVIDIA
1310134b932SThierry Reding	  Tegra SoCs.
1320134b932SThierry Reding
1330134b932SThierry Reding	  To compile this driver as a module, choose M here: the module
1340134b932SThierry Reding	  will be called pwm-tegra.
1350134b932SThierry Reding
1368e0cb05bSPhilip, Avinashconfig  PWM_TIECAP
1378e0cb05bSPhilip, Avinash	tristate "ECAP PWM support"
1388e0cb05bSPhilip, Avinash	depends on SOC_AM33XX
139af0ba001SPhilip, Avinash	select PWM_TIPWMSS
1408e0cb05bSPhilip, Avinash	help
1418e0cb05bSPhilip, Avinash	  PWM driver support for the ECAP APWM controller found on AM33XX
1428e0cb05bSPhilip, Avinash	  TI SOC
1438e0cb05bSPhilip, Avinash
1448e0cb05bSPhilip, Avinash	  To compile this driver as a module, choose M here: the module
1458e0cb05bSPhilip, Avinash	  will be called pwm-tiecap.
1468e0cb05bSPhilip, Avinash
14719891b20SPhilip, Avinashconfig  PWM_TIEHRPWM
14819891b20SPhilip, Avinash	tristate "EHRPWM PWM support"
14919891b20SPhilip, Avinash	depends on SOC_AM33XX
150af0ba001SPhilip, Avinash	select PWM_TIPWMSS
15119891b20SPhilip, Avinash	help
15219891b20SPhilip, Avinash	  PWM driver support for the EHRPWM controller found on AM33XX
15319891b20SPhilip, Avinash	  TI SOC
15419891b20SPhilip, Avinash
15519891b20SPhilip, Avinash	  To compile this driver as a module, choose M here: the module
15619891b20SPhilip, Avinash	  will be called pwm-tiehrpwm.
15719891b20SPhilip, Avinash
158af0ba001SPhilip, Avinashconfig  PWM_TIPWMSS
159af0ba001SPhilip, Avinash	bool
160af0ba001SPhilip, Avinash	depends on SOC_AM33XX && (PWM_TIEHRPWM || PWM_TIECAP)
161af0ba001SPhilip, Avinash	help
162af0ba001SPhilip, Avinash	  PWM Subsystem driver support for AM33xx SOC.
163af0ba001SPhilip, Avinash
164af0ba001SPhilip, Avinash	  PWM submodules require PWM config space access from submodule
165af0ba001SPhilip, Avinash	  drivers and require common parent driver support.
166af0ba001SPhilip, Avinash
16748a364b7SThierry Redingconfig PWM_TWL6030
16848a364b7SThierry Reding	tristate "TWL6030 PWM support"
16948a364b7SThierry Reding	depends on TWL4030_CORE
17048a364b7SThierry Reding	help
17148a364b7SThierry Reding	  Generic PWM framework driver for TWL6030.
17248a364b7SThierry Reding
17348a364b7SThierry Reding	  To compile this driver as a module, choose M here: the module
17448a364b7SThierry Reding	  will be called pwm-twl6030.
17548a364b7SThierry Reding
176a245ccebSSascha Hauerconfig PWM_VT8500
177a245ccebSSascha Hauer	tristate "vt8500 pwm support"
178a245ccebSSascha Hauer	depends on ARCH_VT8500
179a245ccebSSascha Hauer	help
180a245ccebSSascha Hauer	  Generic PWM framework driver for vt8500.
181a245ccebSSascha Hauer
182a245ccebSSascha Hauer	  To compile this driver as a module, choose M here: the module
183a245ccebSSascha Hauer	  will be called pwm-vt8500.
184a245ccebSSascha Hauer
1850c2498f1SSascha Hauerendif
186