xref: /openbmc/linux/drivers/pwm/Kconfig (revision 93f14468)
1menuconfig PWM
2	bool "Pulse-Width Modulation (PWM) Support"
3	help
4	  Generic Pulse-Width Modulation (PWM) support.
5
6	  In Pulse-Width Modulation, a variation of the width of pulses
7	  in a rectangular pulse signal is used as a means to alter the
8	  average power of the signal. Applications include efficient
9	  power delivery and voltage regulation. In computer systems,
10	  PWMs are commonly used to control fans or the brightness of
11	  display backlights.
12
13	  This framework provides a generic interface to PWM devices
14	  within the Linux kernel. On the driver side it provides an API
15	  to register and unregister a PWM chip, an abstraction of a PWM
16	  controller, that supports one or more PWM devices. Client
17	  drivers can request PWM devices and use the generic framework
18	  to configure as well as enable and disable them.
19
20	  This generic framework replaces the legacy PWM framework which
21	  allows only a single driver implementing the required API. Not
22	  all legacy implementations have been ported to the framework
23	  yet. The framework provides an API that is backward compatible
24	  with the legacy framework so that existing client drivers
25	  continue to work as expected.
26
27	  If unsure, say no.
28
29if PWM
30
31config PWM_AB8500
32	tristate "AB8500 PWM support"
33	depends on AB8500_CORE && ARCH_U8500
34	help
35	  Generic PWM framework driver for Analog Baseband AB8500.
36
37	  To compile this driver as a module, choose M here: the module
38	  will be called pwm-ab8500.
39
40config PWM_ATMEL_TCB
41	tristate "Atmel TC Block PWM support"
42	depends on ATMEL_TCLIB && OF
43	help
44	  Generic PWM framework driver for Atmel Timer Counter Block.
45
46	  A Timer Counter Block provides 6 PWM devices grouped by 2.
47	  Devices in a given group must have the same period.
48
49	  To compile this driver as a module, choose M here: the module
50	  will be called pwm-atmel-tcb.
51
52config PWM_BFIN
53	tristate "Blackfin PWM support"
54	depends on BFIN_GPTIMERS
55	help
56	  Generic PWM framework driver for Blackfin.
57
58	  To compile this driver as a module, choose M here: the module
59	  will be called pwm-bfin.
60
61config PWM_IMX
62	tristate "i.MX PWM support"
63	depends on ARCH_MXC
64	help
65	  Generic PWM framework driver for i.MX.
66
67	  To compile this driver as a module, choose M here: the module
68	  will be called pwm-imx.
69
70config PWM_JZ4740
71	tristate "Ingenic JZ4740 PWM support"
72	depends on MACH_JZ4740
73	help
74	  Generic PWM framework driver for Ingenic JZ4740 based
75	  machines.
76
77	  To compile this driver as a module, choose M here: the module
78	  will be called pwm-jz4740.
79
80config PWM_LPC32XX
81	tristate "LPC32XX PWM support"
82	depends on ARCH_LPC32XX
83	help
84	  Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
85	  PWM controllers.
86
87	  To compile this driver as a module, choose M here: the module
88	  will be called pwm-lpc32xx.
89
90config PWM_MXS
91	tristate "Freescale MXS PWM support"
92	depends on ARCH_MXS && OF
93	select STMP_DEVICE
94	help
95	  Generic PWM framework driver for Freescale MXS.
96
97	  To compile this driver as a module, choose M here: the module
98	  will be called pwm-mxs.
99
100config PWM_PUV3
101	tristate "PKUnity NetBook-0916 PWM support"
102	depends on ARCH_PUV3
103	help
104	  Generic PWM framework driver for PKUnity NetBook-0916.
105
106	  To compile this driver as a module, choose M here: the module
107	  will be called pwm-puv3.
108
109config PWM_PXA
110	tristate "PXA PWM support"
111	depends on ARCH_PXA
112	help
113	  Generic PWM framework driver for PXA.
114
115	  To compile this driver as a module, choose M here: the module
116	  will be called pwm-pxa.
117
118config PWM_SAMSUNG
119	tristate "Samsung PWM support"
120	depends on PLAT_SAMSUNG
121	help
122	  Generic PWM framework driver for Samsung.
123
124	  To compile this driver as a module, choose M here: the module
125	  will be called pwm-samsung.
126
127config PWM_SPEAR
128	tristate "STMicroelectronics SPEAr PWM support"
129	depends on PLAT_SPEAR
130	depends on OF
131	help
132	  Generic PWM framework driver for the PWM controller on ST
133	  SPEAr SoCs.
134
135	  To compile this driver as a module, choose M here: the module
136	  will be called pwm-spear.
137
138config PWM_TEGRA
139	tristate "NVIDIA Tegra PWM support"
140	depends on ARCH_TEGRA
141	help
142	  Generic PWM framework driver for the PWFM controller found on NVIDIA
143	  Tegra SoCs.
144
145	  To compile this driver as a module, choose M here: the module
146	  will be called pwm-tegra.
147
148config  PWM_TIECAP
149	tristate "ECAP PWM support"
150	depends on SOC_AM33XX || ARCH_DAVINCI_DA8XX
151	help
152	  PWM driver support for the ECAP APWM controller found on AM33XX
153	  TI SOC
154
155	  To compile this driver as a module, choose M here: the module
156	  will be called pwm-tiecap.
157
158config  PWM_TIEHRPWM
159	tristate "EHRPWM PWM support"
160	depends on SOC_AM33XX || ARCH_DAVINCI_DA8XX
161	help
162	  PWM driver support for the EHRPWM controller found on AM33XX
163	  TI SOC
164
165	  To compile this driver as a module, choose M here: the module
166	  will be called pwm-tiehrpwm.
167
168config  PWM_TIPWMSS
169	bool
170	default y if SOC_AM33XX && (PWM_TIECAP || PWM_TIEHRPWM)
171	help
172	  PWM Subsystem driver support for AM33xx SOC.
173
174	  PWM submodules require PWM config space access from submodule
175	  drivers and require common parent driver support.
176
177config PWM_TWL
178	tristate "TWL4030/6030 PWM support"
179	depends on TWL4030_CORE
180	help
181	  Generic PWM framework driver for TWL4030/6030.
182
183	  To compile this driver as a module, choose M here: the module
184	  will be called pwm-twl.
185
186config PWM_TWL_LED
187	tristate "TWL4030/6030 PWM support for LED drivers"
188	depends on TWL4030_CORE
189	help
190	  Generic PWM framework driver for TWL4030/6030 LED terminals.
191
192	  To compile this driver as a module, choose M here: the module
193	  will be called pwm-twl-led.
194
195config PWM_VT8500
196	tristate "vt8500 PWM support"
197	depends on ARCH_VT8500
198	help
199	  Generic PWM framework driver for vt8500.
200
201	  To compile this driver as a module, choose M here: the module
202	  will be called pwm-vt8500.
203
204endif
205