blob: e019db18b6ca75f13d7a6cd74369e947cac51891 [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Sascha Hauer0c2498f2011-01-28 09:40:40 +01002menuconfig PWM
Thierry Redingb817bf52012-08-16 08:01:21 +02003 bool "Pulse-Width Modulation (PWM) Support"
Sascha Hauer0c2498f2011-01-28 09:40:40 +01004 help
Thierry Redingb817bf52012-08-16 08:01:21 +02005 Generic Pulse-Width Modulation (PWM) support.
Sascha Hauer0c2498f2011-01-28 09:40:40 +01006
Thierry Redingb817bf52012-08-16 08:01:21 +02007 In Pulse-Width Modulation, a variation of the width of pulses
8 in a rectangular pulse signal is used as a means to alter the
9 average power of the signal. Applications include efficient
10 power delivery and voltage regulation. In computer systems,
11 PWMs are commonly used to control fans or the brightness of
12 display backlights.
13
14 This framework provides a generic interface to PWM devices
15 within the Linux kernel. On the driver side it provides an API
16 to register and unregister a PWM chip, an abstraction of a PWM
17 controller, that supports one or more PWM devices. Client
18 drivers can request PWM devices and use the generic framework
19 to configure as well as enable and disable them.
20
21 This generic framework replaces the legacy PWM framework which
22 allows only a single driver implementing the required API. Not
23 all legacy implementations have been ported to the framework
24 yet. The framework provides an API that is backward compatible
25 with the legacy framework so that existing client drivers
26 continue to work as expected.
27
28 If unsure, say no.
Sascha Hauer0c2498f2011-01-28 09:40:40 +010029
30if PWM
31
H Hartley Sweeten76abbdde2013-06-11 10:38:59 -070032config PWM_SYSFS
33 bool
34 default y if SYSFS
35
Uwe Kleine-König3ad1f3a2020-02-10 22:35:18 +010036config PWM_DEBUG
37 bool "PWM lowlevel drivers additional checks and debug messages"
38 depends on DEBUG_KERNEL
39 help
40 This option enables some additional checks to help lowlevel driver
41 authors to get their callbacks implemented correctly.
42 It is expected to introduce some runtime overhead and diagnostic
43 output to the kernel log, so only enable while working on a driver.
44
Thierry Reding6173f8f2012-08-31 11:46:24 +020045config PWM_AB8500
46 tristate "AB8500 PWM support"
47 depends on AB8500_CORE && ARCH_U8500
48 help
49 Generic PWM framework driver for Analog Baseband AB8500.
50
51 To compile this driver as a module, choose M here: the module
52 will be called pwm-ab8500.
53
Bo Shen32b16d42013-12-13 14:41:49 +080054config PWM_ATMEL
55 tristate "Atmel PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +010056 depends on OF
57 depends on ARCH_AT91 || COMPILE_TEST
Bo Shen32b16d42013-12-13 14:41:49 +080058 help
59 Generic PWM framework driver for Atmel SoC.
60
61 To compile this driver as a module, choose M here: the module
62 will be called pwm-atmel.
63
Boris Brezillon2b4984b2014-10-07 15:38:14 +020064config PWM_ATMEL_HLCDC_PWM
65 tristate "Atmel HLCDC PWM support"
66 depends on MFD_ATMEL_HLCDC
Thierry Redingd2048c42014-12-18 10:09:42 +010067 depends on HAVE_CLK
Boris Brezillon2b4984b2014-10-07 15:38:14 +020068 help
69 Generic PWM framework driver for the PWM output of the HLCDC
70 (Atmel High-end LCD Controller). This PWM output is mainly used
71 to control the LCD backlight.
72
73 To compile this driver as a module, choose M here: the module
74 will be called pwm-atmel-hlcdc.
75
Boris BREZILLON9421bad2013-01-08 16:36:42 +010076config PWM_ATMEL_TCB
Thierry Redingb133d2a2013-01-30 09:19:55 +010077 tristate "Atmel TC Block PWM support"
Alexandre Belloni061f8572020-10-30 19:36:56 +010078 depends on OF
79 select REGMAP_MMIO
Boris BREZILLON9421bad2013-01-08 16:36:42 +010080 help
81 Generic PWM framework driver for Atmel Timer Counter Block.
82
83 A Timer Counter Block provides 6 PWM devices grouped by 2.
84 Devices in a given group must have the same period.
85
86 To compile this driver as a module, choose M here: the module
87 will be called pwm-atmel-tcb.
88
Yendapally Reddy Dhananjaya Reddydaa5abc2016-07-05 02:00:25 -040089config PWM_BCM_IPROC
90 tristate "iProc PWM support"
Scott Branden5bf22ff2016-10-08 13:54:05 -070091 depends on ARCH_BCM_IPROC || COMPILE_TEST
92 depends on COMMON_CLK
93 default ARCH_BCM_IPROC
Yendapally Reddy Dhananjaya Reddydaa5abc2016-07-05 02:00:25 -040094 help
95 Generic PWM framework driver for Broadcom iProc PWM block. This
96 block is used in Broadcom iProc SoC's.
97
98 To compile this driver as a module, choose M here: the module
99 will be called pwm-bcm-iproc.
100
Tim Kryger6a4e4bf2014-04-25 11:31:12 -0700101config PWM_BCM_KONA
102 tristate "Kona PWM support"
Clément Péron88a053d2018-11-23 10:35:59 +0100103 depends on ARCH_BCM_MOBILE || ARCH_BCM_CYGNUS || COMPILE_TEST
104 depends on HAVE_CLK && HAS_IOMEM
105 default ARCH_BCM_MOBILE || ARCH_BCM_CYGNUS
Tim Kryger6a4e4bf2014-04-25 11:31:12 -0700106 help
107 Generic PWM framework driver for Broadcom Kona PWM block.
108
109 To compile this driver as a module, choose M here: the module
110 will be called pwm-bcm-kona.
111
Bart Tanghee5a06dc2014-10-08 12:14:32 +0200112config PWM_BCM2835
113 tristate "BCM2835 PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100114 depends on ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST
Bart Tanghee5a06dc2014-10-08 12:14:32 +0200115 help
116 PWM framework driver for BCM2835 controller (Raspberry Pi)
117
118 To compile this driver as a module, choose M here: the module
119 will be called pwm-bcm2835.
120
Antoine Ténart59d5c8b2015-10-02 16:59:47 +0200121config PWM_BERLIN
122 tristate "Marvell Berlin PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100123 depends on ARCH_BERLIN || COMPILE_TEST
Antoine Ténart59d5c8b2015-10-02 16:59:47 +0200124 help
125 PWM framework driver for Marvell Berlin SoCs.
126
127 To compile this driver as a module, choose M here: the module
128 will be called pwm-berlin.
129
Florian Fainelli3a9f5952015-09-14 16:47:06 -0700130config PWM_BRCMSTB
131 tristate "Broadcom STB PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100132 depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
Florian Fainelli3a9f5952015-09-14 16:47:06 -0700133 help
134 Generic PWM framework driver for the Broadcom Set-top-Box
135 SoCs (BCM7xxx).
136
137 To compile this driver as a module, choose M Here: the module
138 will be called pwm-brcmstb.c.
139
Alexander Shiyan7eb3f6f2014-03-12 19:53:05 +0400140config PWM_CLPS711X
141 tristate "CLPS711X PWM support"
142 depends on ARCH_CLPS711X || COMPILE_TEST
Chen Gangdec02f92014-10-04 17:48:42 +0800143 depends on HAS_IOMEM
Alexander Shiyan7eb3f6f2014-03-12 19:53:05 +0400144 help
145 Generic PWM framework driver for Cirrus Logic CLPS711X.
146
147 To compile this driver as a module, choose M here: the module
148 will be called pwm-clps711x.
149
Shobhit Kumara3f37a12015-06-26 14:32:08 +0530150config PWM_CRC
151 bool "Intel Crystalcove (CRC) PWM support"
152 depends on X86 && INTEL_SOC_PMIC
153 help
154 Generic PWM framework driver for Crystalcove (CRC) PMIC based PWM
155 control.
156
Brian Norris1f0d3bb2016-07-15 16:28:44 -0700157config PWM_CROS_EC
158 tristate "ChromeOS EC PWM driver"
Enric Balletbo i Serra47f11e02019-09-02 11:53:01 +0200159 depends on CROS_EC
Brian Norris1f0d3bb2016-07-15 16:28:44 -0700160 help
161 PWM driver for exposing a PWM attached to the ChromeOS Embedded
162 Controller.
163
H Hartley Sweetena2308692013-10-15 18:40:03 -0700164config PWM_EP93XX
165 tristate "Cirrus Logic EP93xx PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100166 depends on ARCH_EP93XX || COMPILE_TEST
H Hartley Sweetena2308692013-10-15 18:40:03 -0700167 help
168 Generic PWM framework driver for Cirrus Logic EP93xx.
169
170 To compile this driver as a module, choose M here: the module
171 will be called pwm-ep93xx.
172
Xiubo Lib5051832014-02-27 17:39:49 +0800173config PWM_FSL_FTM
174 tristate "Freescale FlexTimer Module (FTM) PWM support"
Vegard Nossum36d5be42016-01-02 14:02:07 +0100175 depends on HAS_IOMEM
Xiubo Lib5051832014-02-27 17:39:49 +0800176 depends on OF
Fabio Estevam00018a82014-08-21 20:50:25 -0300177 select REGMAP_MMIO
Xiubo Lib5051832014-02-27 17:39:49 +0800178 help
179 Generic FTM PWM framework driver for Freescale VF610 and
180 Layerscape LS-1 SoCs.
181
182 To compile this driver as a module, choose M here: the module
183 will be called pwm-fsl-ftm.
184
yuanjiand09f0082016-11-28 17:42:46 +0800185config PWM_HIBVT
186 tristate "HiSilicon BVT PWM support"
187 depends on ARCH_HISI || COMPILE_TEST
188 help
189 Generic PWM framework driver for HiSilicon BVT SoCs.
190
191 To compile this driver as a module, choose M here: the module
192 will be called pwm-hibvt.
193
Naidu Tellapati277bb6a2015-01-09 14:54:47 -0300194config PWM_IMG
195 tristate "Imagination Technologies PWM driver"
196 depends on HAS_IOMEM
197 depends on MFD_SYSCON
198 depends on COMMON_CLK
199 depends on MIPS || COMPILE_TEST
200 help
201 Generic PWM framework driver for Imagination Technologies
202 PWM block which supports 4 channels.
203
204 To compile this driver as a module, choose M here: the module
205 will be called pwm-img
206
Uwe Kleine-Königd80f8202019-01-07 20:53:52 +0100207config PWM_IMX1
208 tristate "i.MX1 PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100209 depends on ARCH_MXC || COMPILE_TEST
Sascha Hauer29693242012-03-15 10:04:35 +0100210 help
Uwe Kleine-Königd80f8202019-01-07 20:53:52 +0100211 Generic PWM framework driver for i.MX1 and i.MX21
Sascha Hauer29693242012-03-15 10:04:35 +0100212
213 To compile this driver as a module, choose M here: the module
Uwe Kleine-Königd80f8202019-01-07 20:53:52 +0100214 will be called pwm-imx1.
215
216config PWM_IMX27
217 tristate "i.MX27 PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100218 depends on ARCH_MXC || COMPILE_TEST
Uwe Kleine-Königd80f8202019-01-07 20:53:52 +0100219 help
220 Generic PWM framework driver for i.MX27 and later i.MX SoCs.
221
222 To compile this driver as a module, choose M here: the module
223 will be called pwm-imx27.
Sascha Hauer29693242012-03-15 10:04:35 +0100224
Anson Huang738a1cf2019-05-09 13:29:29 +0000225config PWM_IMX_TPM
226 tristate "i.MX TPM PWM support"
227 depends on ARCH_MXC || COMPILE_TEST
228 depends on HAVE_CLK && HAS_IOMEM
229 help
230 Generic PWM framework driver for i.MX7ULP TPM module, TPM's full
231 name is Low Power Timer/Pulse Width Modulation Module.
232
233 To compile this driver as a module, choose M here: the module
234 will be called pwm-imx-tpm.
235
Jeff LaBundy6f0841a2020-04-12 21:15:16 -0500236config PWM_IQS620A
237 tristate "Azoteq IQS620A PWM support"
238 depends on MFD_IQS62X || COMPILE_TEST
239 help
240 Generic PWM framework driver for the Azoteq IQS620A multi-function
241 sensor.
242
243 To compile this driver as a module, choose M here: the module will
244 be called pwm-iqs620a.
245
Thierry Redingf6b8a572012-08-22 10:01:24 +0200246config PWM_JZ4740
Paul Cercueilb4190062018-01-06 17:58:43 +0100247 tristate "Ingenic JZ47xx PWM support"
Paul Cercueilb48d49e2020-05-27 13:52:22 +0200248 depends on MIPS
Paul Cercueilce1f9ce2020-03-23 15:24:18 +0100249 depends on COMMON_CLK
Paul Cercueilc2693512020-03-23 15:24:20 +0100250 select MFD_SYSCON
Thierry Redingf6b8a572012-08-22 10:01:24 +0200251 help
Paul Cercueilb4190062018-01-06 17:58:43 +0100252 Generic PWM framework driver for Ingenic JZ47xx based
Thierry Redingf6b8a572012-08-22 10:01:24 +0200253 machines.
254
255 To compile this driver as a module, choose M here: the module
256 will be called pwm-jz4740.
257
Vijayakannan Ayyathuraibd899ce2020-10-22 15:14:46 +0800258config PWM_KEEMBAY
259 tristate "Intel Keem Bay PWM driver"
260 depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST)
261 help
262 The platform driver for Intel Keem Bay PWM controller.
263
264 To compile this driver as a module, choose M here: the module
265 will be called pwm-keembay.
266
Milo Kimaf66b3c2013-12-06 11:18:43 +0900267config PWM_LP3943
268 tristate "TI/National Semiconductor LP3943 PWM support"
269 depends on MFD_LP3943
270 help
271 Generic PWM framework driver for LP3943 which supports two PWM
272 channels.
273
274 To compile this driver as a module, choose M here: the module
275 will be called pwm-lp3943.
276
Ariel D'Alessandro841e6f92015-08-05 23:31:46 -0300277config PWM_LPC18XX_SCT
278 tristate "LPC18xx/43xx PWM/SCT support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100279 depends on ARCH_LPC18XX || COMPILE_TEST
Ariel D'Alessandro841e6f92015-08-05 23:31:46 -0300280 help
281 Generic PWM framework driver for NXP LPC18xx PWM/SCT which
282 supports 16 channels.
283 A maximum of 15 channels can be requested simultaneously and
284 must have the same period.
285
286 To compile this driver as a module, choose M here: the module
287 will be called pwm-lpc18xx-sct.
288
Alexandre Pereira da Silva2132fa82012-07-10 11:38:10 -0300289config PWM_LPC32XX
290 tristate "LPC32XX PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100291 depends on ARCH_LPC32XX || COMPILE_TEST
Alexandre Pereira da Silva2132fa82012-07-10 11:38:10 -0300292 help
293 Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
294 PWM controllers.
295
296 To compile this driver as a module, choose M here: the module
297 will be called pwm-lpc32xx.
298
Mika Westerbergd16a5aa2014-03-20 22:04:23 +0800299config PWM_LPSS
Andy Shevchenko6f90a002015-11-18 13:25:17 +0200300 tristate
Mika Westerbergd16a5aa2014-03-20 22:04:23 +0800301
Andy Shevchenkoc558e392014-08-19 19:17:35 +0300302config PWM_LPSS_PCI
303 tristate "Intel LPSS PWM PCI driver"
Andy Shevchenko6f90a002015-11-18 13:25:17 +0200304 depends on X86 && PCI
305 select PWM_LPSS
Andy Shevchenkoc558e392014-08-19 19:17:35 +0300306 help
307 The PCI driver for Intel Low Power Subsystem PWM controller.
308
309 To compile this driver as a module, choose M here: the module
310 will be called pwm-lpss-pci.
311
312config PWM_LPSS_PLATFORM
313 tristate "Intel LPSS PWM platform driver"
Andy Shevchenko6f90a002015-11-18 13:25:17 +0200314 depends on X86 && ACPI
315 select PWM_LPSS
Andy Shevchenkoc558e392014-08-19 19:17:35 +0300316 help
317 The platform driver for Intel Low Power Subsystem PWM controller.
318
319 To compile this driver as a module, choose M here: the module
320 will be called pwm-lpss-platform.
321
Neil Armstrong211ed632016-08-22 17:36:30 +0200322config PWM_MESON
323 tristate "Amlogic Meson PWM driver"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100324 depends on ARCH_MESON || COMPILE_TEST
325 depends on COMMON_CLK
Neil Armstrong211ed632016-08-22 17:36:30 +0200326 help
327 The platform driver for Amlogic Meson PWM controller.
328
329 To compile this driver as a module, choose M here: the module
330 will be called pwm-meson.
331
YH Huang7e3b7dc2015-08-18 15:27:54 +0800332config PWM_MTK_DISP
333 tristate "MediaTek display PWM driver"
334 depends on ARCH_MEDIATEK || COMPILE_TEST
335 depends on HAS_IOMEM
336 help
337 Generic PWM framework driver for MediaTek disp-pwm device.
338 The PWM is used to control the backlight brightness for display.
339
340 To compile this driver as a module, choose M here: the module
341 will be called pwm-mtk-disp.
342
John Crispincaf065f2017-01-23 19:34:37 +0100343config PWM_MEDIATEK
344 tristate "MediaTek PWM support"
John Crispin8cdc43a2018-07-25 11:52:09 +0200345 depends on ARCH_MEDIATEK || RALINK || COMPILE_TEST
John Crispincaf065f2017-01-23 19:34:37 +0100346 help
347 Generic PWM framework driver for Mediatek ARM SoC.
348
349 To compile this driver as a module, choose M here: the module
Zhi Maoaa12d7a2017-06-30 14:05:16 +0800350 will be called pwm-mediatek.
John Crispincaf065f2017-01-23 19:34:37 +0100351
Shawn Guo4dce82c2012-04-04 10:50:52 +0800352config PWM_MXS
353 tristate "Freescale MXS PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100354 depends on OF
355 depends on ARCH_MXS || COMPILE_TEST
Shawn Guo01bf32e2012-06-26 16:58:09 +0800356 select STMP_DEVICE
Shawn Guo4dce82c2012-04-04 10:50:52 +0800357 help
358 Generic PWM framework driver for Freescale MXS.
359
360 To compile this driver as a module, choose M here: the module
361 will be called pwm-mxs.
362
Neil Armstrong6604c652015-11-02 12:14:21 +0100363config PWM_OMAP_DMTIMER
364 tristate "OMAP Dual-Mode Timer PWM support"
Uwe Kleine-König9f2919e2019-11-11 10:03:57 +0100365 depends on OF
366 depends on OMAP_DM_TIMER || COMPILE_TEST
Neil Armstrong6604c652015-11-02 12:14:21 +0100367 help
368 Generic PWM framework driver for OMAP Dual-Mode Timer PWM output
369
370 To compile this driver as a module, choose M here: the module
371 will be called pwm-omap-dmtimer
372
Steffen Trumtrar88b613e2013-05-30 09:50:12 +0200373config PWM_PCA9685
374 tristate "NXP PCA9685 PWM driver"
Andy Shevchenko912b8432015-10-07 13:18:49 +0300375 depends on I2C
Axel Lin2c80a492013-12-17 11:51:29 +0800376 select REGMAP_I2C
Steffen Trumtrar88b613e2013-05-30 09:50:12 +0200377 help
378 Generic PWM framework driver for NXP PCA9685 LED controller.
379
380 To compile this driver as a module, choose M here: the module
381 will be called pwm-pca9685.
382
Thierry Reding17b2b472012-01-02 21:22:38 +0100383config PWM_PXA
384 tristate "PXA PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100385 depends on ARCH_PXA || COMPILE_TEST
Thierry Reding17b2b472012-01-02 21:22:38 +0100386 help
387 Generic PWM framework driver for PXA.
388
389 To compile this driver as a module, choose M here: the module
390 will be called pwm-pxa.
391
Yoshihiro Shimodaed6c1472015-09-30 17:47:53 +0900392config PWM_RCAR
393 tristate "Renesas R-Car PWM support"
Ryo Kodama48169982016-03-31 13:39:11 +0200394 depends on ARCH_RENESAS || COMPILE_TEST
Yoshihiro Shimodaed6c1472015-09-30 17:47:53 +0900395 depends on HAS_IOMEM
396 help
397 This driver exposes the PWM Timer controller found in Renesas
398 R-Car chips through the PWM API.
399
400 To compile this driver as a module, choose M here: the module
401 will be called pwm-rcar.
402
Laurent Pinchart99b82ab2013-06-13 18:54:44 +0200403config PWM_RENESAS_TPU
404 tristate "Renesas TPU PWM support"
Simon Horman03d99532016-02-25 10:03:23 +0900405 depends on ARCH_RENESAS || COMPILE_TEST
Richard Weinberger2974b092014-01-31 13:45:18 +0100406 depends on HAS_IOMEM
Laurent Pinchart99b82ab2013-06-13 18:54:44 +0200407 help
408 This driver exposes the Timer Pulse Unit (TPU) PWM controller found
409 in Renesas chips through the PWM API.
410
411 To compile this driver as a module, choose M here: the module
412 will be called pwm-renesas-tpu.
413
Beniamino Galvani101353c2014-06-21 16:22:06 +0200414config PWM_ROCKCHIP
415 tristate "Rockchip PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100416 depends on ARCH_ROCKCHIP || COMPILE_TEST
Beniamino Galvani101353c2014-06-21 16:22:06 +0200417 help
418 Generic PWM framework driver for the PWM controller found on
419 Rockchip SoCs.
420
Sascha Hauer215c29d2012-03-15 10:04:36 +0100421config PWM_SAMSUNG
Thierry Redingb133d2a2013-01-30 09:19:55 +0100422 tristate "Samsung PWM support"
Arnd Bergmanndb8230d2020-08-06 20:20:35 +0200423 depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
Sascha Hauer215c29d2012-03-15 10:04:36 +0100424 help
425 Generic PWM framework driver for Samsung.
426
427 To compile this driver as a module, choose M here: the module
428 will be called pwm-samsung.
429
Yash Shah9e37a532019-06-11 11:14:44 +0530430config PWM_SIFIVE
431 tristate "SiFive PWM support"
432 depends on OF
433 depends on COMMON_CLK
434 depends on RISCV || COMPILE_TEST
435 help
436 Generic PWM framework driver for SiFive SoCs.
437
438 To compile this driver as a module, choose M here: the module
439 will be called pwm-sifive.
440
Michael Walle9db33d22020-09-14 23:43:34 +0200441config PWM_SL28CPLD
442 tristate "Kontron sl28cpld PWM support"
443 depends on MFD_SL28CPLD || COMPILE_TEST
444 help
445 Generic PWM framework driver for board management controller
446 found on the Kontron sl28 CPLD.
447
448 To compile this driver as a module, choose M here: the module
449 will be called pwm-sl28cpld.
450
Shiraz Hashimce203642012-10-25 09:39:13 +0530451config PWM_SPEAR
452 tristate "STMicroelectronics SPEAr PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100453 depends on PLAT_SPEAR || COMPILE_TEST
Shiraz Hashimce203642012-10-25 09:39:13 +0530454 depends on OF
455 help
456 Generic PWM framework driver for the PWM controller on ST
457 SPEAr SoCs.
458
459 To compile this driver as a module, choose M here: the module
460 will be called pwm-spear.
461
Baolin Wang8aae4b02019-08-14 20:46:11 +0800462config PWM_SPRD
463 tristate "Spreadtrum PWM support"
464 depends on ARCH_SPRD || COMPILE_TEST
465 depends on HAS_IOMEM
466 help
467 Generic PWM framework driver for the PWM controller on
468 Spreadtrum SoCs.
469
470 To compile this driver as a module, choose M here: the module
471 will be called pwm-sprd.
472
Lee Jones378fe112014-07-14 15:33:27 +0100473config PWM_STI
474 tristate "STiH4xx PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100475 depends on ARCH_STI || COMPILE_TEST
Lee Jones378fe112014-07-14 15:33:27 +0100476 depends on OF
477 help
478 Generic PWM framework driver for STiH4xx SoCs.
479
480 To compile this driver as a module, choose M here: the module
481 will be called pwm-sti.
482
Benjamin Gaignard7edf7362017-01-20 10:15:05 +0100483config PWM_STM32
484 tristate "STMicroelectronics STM32 PWM"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100485 depends on MFD_STM32_TIMERS || COMPILE_TEST
Benjamin Gaignard7edf7362017-01-20 10:15:05 +0100486 help
487 Generic PWM framework driver for STM32 SoCs.
488
489 To compile this driver as a module, choose M here: the module
490 will be called pwm-stm32.
491
Fabrice Gasniere70a5402017-08-28 12:04:09 +0200492config PWM_STM32_LP
493 tristate "STMicroelectronics STM32 PWM LP"
494 depends on MFD_STM32_LPTIMER || COMPILE_TEST
495 help
496 Generic PWM framework driver for STMicroelectronics STM32 SoCs
497 with Low-Power Timer (LPTIM).
498
499 To compile this driver as a module, choose M here: the module
500 will be called pwm-stm32-lp.
501
Linus Walleijef1f09e2016-04-05 23:22:37 +0200502config PWM_STMPE
503 bool "STMPE expander PWM export"
504 depends on MFD_STMPE
505 help
506 This enables support for the PWMs found in the STMPE I/O
507 expanders.
508
Alexandre Belloni09853ce2014-12-17 22:15:39 +0100509config PWM_SUN4I
510 tristate "Allwinner PWM support"
511 depends on ARCH_SUNXI || COMPILE_TEST
512 depends on HAS_IOMEM && COMMON_CLK
513 help
514 Generic PWM framework driver for Allwinner SoCs.
515
516 To compile this driver as a module, choose M here: the module
517 will be called pwm-sun4i.
518
Thierry Reding0134b932011-12-21 07:47:07 +0100519config PWM_TEGRA
520 tristate "NVIDIA Tegra PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100521 depends on ARCH_TEGRA || COMPILE_TEST
Thierry Reding0134b932011-12-21 07:47:07 +0100522 help
523 Generic PWM framework driver for the PWFM controller found on NVIDIA
524 Tegra SoCs.
525
526 To compile this driver as a module, choose M here: the module
527 will be called pwm-tegra.
528
Krzysztof Kozlowskif24e5642019-12-30 18:21:12 +0100529config PWM_TIECAP
Philip, Avinash8e0cb05b2012-07-25 16:58:18 +0530530 tristate "ECAP PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100531 depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
Philip, Avinash8e0cb05b2012-07-25 16:58:18 +0530532 help
Vignesh R6f377092018-10-16 11:34:02 +0530533 PWM driver support for the ECAP APWM controller found on TI SOCs
Philip, Avinash8e0cb05b2012-07-25 16:58:18 +0530534
535 To compile this driver as a module, choose M here: the module
536 will be called pwm-tiecap.
537
Krzysztof Kozlowskif24e5642019-12-30 18:21:12 +0100538config PWM_TIEHRPWM
Philip, Avinash19891b22012-07-25 16:58:19 +0530539 tristate "EHRPWM PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100540 depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_K3 || COMPILE_TEST
Philip, Avinash19891b22012-07-25 16:58:19 +0530541 help
Vignesh Raghavendraefc80fb32019-03-12 14:46:29 +0530542 PWM driver support for the EHRPWM controller found on TI SOCs
Philip, Avinash19891b22012-07-25 16:58:19 +0530543
544 To compile this driver as a module, choose M here: the module
545 will be called pwm-tiehrpwm.
546
Peter Ujfalusi3744c262012-11-27 11:09:57 +0100547config PWM_TWL
548 tristate "TWL4030/6030 PWM support"
549 depends on TWL4030_CORE
550 help
551 Generic PWM framework driver for TWL4030/6030.
552
553 To compile this driver as a module, choose M here: the module
554 will be called pwm-twl.
555
Peter Ujfalusiaa765642012-11-27 11:09:58 +0100556config PWM_TWL_LED
557 tristate "TWL4030/6030 PWM support for LED drivers"
558 depends on TWL4030_CORE
559 help
560 Generic PWM framework driver for TWL4030/6030 LED terminals.
561
562 To compile this driver as a module, choose M here: the module
563 will be called pwm-twl-led.
564
Sascha Hauera245cce2012-03-15 10:04:37 +0100565config PWM_VT8500
Thierry Redingb133d2a2013-01-30 09:19:55 +0100566 tristate "vt8500 PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100567 depends on ARCH_VT8500 || COMPILE_TEST
Sascha Hauera245cce2012-03-15 10:04:37 +0100568 help
569 Generic PWM framework driver for vt8500.
570
571 To compile this driver as a module, choose M here: the module
572 will be called pwm-vt8500.
573
Shawn Guo48361932017-07-27 16:23:37 +0800574config PWM_ZX
575 tristate "ZTE ZX PWM support"
Krzysztof Kozlowskie96c0ff2020-03-03 21:24:47 +0100576 depends on ARCH_ZX || COMPILE_TEST
Shawn Guo48361932017-07-27 16:23:37 +0800577 help
578 Generic PWM framework driver for ZTE ZX family SoCs.
579
580 To compile this driver as a module, choose M here: the module
581 will be called pwm-zx.
582
Sascha Hauer0c2498f2011-01-28 09:40:40 +0100583endif