xref: /linux/drivers/pwm/Kconfig (revision a06c3fad49a50d5d5eb078f93e70f4d3eca5d5a5)
1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig PWM
3	bool "Pulse-Width Modulation (PWM) Support"
4	help
5	  Generic Pulse-Width Modulation (PWM) support.
6
7	  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.
29
30if PWM
31
32config PWM_DEBUG
33	bool "PWM lowlevel drivers additional checks and debug messages"
34	depends on DEBUG_KERNEL
35	help
36	  This option enables some additional checks to help lowlevel driver
37	  authors to get their callbacks implemented correctly.
38	  It is expected to introduce some runtime overhead and diagnostic
39	  output to the kernel log, so only enable while working on a driver.
40
41config PWM_AB8500
42	tristate "AB8500 PWM support"
43	depends on AB8500_CORE && ARCH_U8500
44	help
45	  Generic PWM framework driver for Analog Baseband AB8500.
46
47	  To compile this driver as a module, choose M here: the module
48	  will be called pwm-ab8500.
49
50config PWM_APPLE
51	tristate "Apple SoC PWM support"
52	depends on ARCH_APPLE || COMPILE_TEST
53	help
54	  Generic PWM framework driver for PWM controller present on
55	  Apple SoCs
56
57	  Say Y here if you have an ARM Apple laptop, otherwise say N
58
59	  To compile this driver as a module, choose M here: the module
60	  will be called pwm-apple.
61
62config PWM_ATMEL
63	tristate "Atmel PWM support"
64	depends on ARCH_AT91 || COMPILE_TEST
65	depends on HAS_IOMEM && OF
66	help
67	  Generic PWM framework driver for Atmel SoC.
68
69	  To compile this driver as a module, choose M here: the module
70	  will be called pwm-atmel.
71
72config PWM_ATMEL_HLCDC_PWM
73	tristate "Atmel HLCDC PWM support"
74	depends on MFD_ATMEL_HLCDC
75	depends on HAVE_CLK
76	help
77	  Generic PWM framework driver for the PWM output of the HLCDC
78	  (Atmel High-end LCD Controller). This PWM output is mainly used
79	  to control the LCD backlight.
80
81	  To compile this driver as a module, choose M here: the module
82	  will be called pwm-atmel-hlcdc.
83
84config PWM_ATMEL_TCB
85	tristate "Atmel TC Block PWM support"
86	depends on OF
87	select REGMAP_MMIO
88	help
89	  Generic PWM framework driver for Atmel Timer Counter Block.
90
91	  A Timer Counter Block provides 6 PWM devices grouped by 2.
92	  Devices in a given group must have the same period.
93
94	  To compile this driver as a module, choose M here: the module
95	  will be called pwm-atmel-tcb.
96
97config PWM_AXI_PWMGEN
98	tristate "Analog Devices AXI PWM generator"
99	depends on MICROBLAZE || NIOS2 || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_INTEL_SOCFPGA || COMPILE_TEST
100	select REGMAP_MMIO
101	help
102	  This enables support for the Analog Devices AXI PWM generator.
103
104	  This is a configurable PWM generator with variable pulse width and
105	  period.
106
107	  To compile this driver as a module, choose M here: the module will be
108	  called pwm-axi-pwmgen.
109
110config PWM_BCM_IPROC
111	tristate "iProc PWM support"
112	depends on ARCH_BCM_IPROC || COMPILE_TEST
113	depends on COMMON_CLK && HAS_IOMEM
114	default ARCH_BCM_IPROC
115	help
116	  Generic PWM framework driver for Broadcom iProc PWM block. This
117	  block is used in Broadcom iProc SoC's.
118
119	  To compile this driver as a module, choose M here: the module
120	  will be called pwm-bcm-iproc.
121
122config PWM_BCM_KONA
123	tristate "Kona PWM support"
124	depends on ARCH_BCM_MOBILE || ARCH_BCM_CYGNUS || COMPILE_TEST
125	depends on HAVE_CLK && HAS_IOMEM
126	default ARCH_BCM_MOBILE || ARCH_BCM_CYGNUS
127	help
128	  Generic PWM framework driver for Broadcom Kona PWM block.
129
130	  To compile this driver as a module, choose M here: the module
131	  will be called pwm-bcm-kona.
132
133config PWM_BCM2835
134	tristate "BCM2835 PWM support"
135	depends on ARCH_BCM2835 || ARCH_BRCMSTB || COMPILE_TEST
136	depends on HAS_IOMEM
137	help
138	  PWM framework driver for BCM2835 controller (Raspberry Pi)
139
140	  To compile this driver as a module, choose M here: the module
141	  will be called pwm-bcm2835.
142
143config PWM_BERLIN
144	tristate "Marvell Berlin PWM support"
145	depends on ARCH_BERLIN || COMPILE_TEST
146	depends on HAS_IOMEM
147	help
148	  PWM framework driver for Marvell Berlin SoCs.
149
150	  To compile this driver as a module, choose M here: the module
151	  will be called pwm-berlin.
152
153config PWM_BRCMSTB
154	tristate "Broadcom STB PWM support"
155	depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
156	depends on HAS_IOMEM
157	help
158	  Generic PWM framework driver for the Broadcom Set-top-Box
159	  SoCs (BCM7xxx).
160
161	  To compile this driver as a module, choose M Here: the module
162	  will be called pwm-brcmstb.c.
163
164config PWM_CLK
165	tristate "Clock based PWM support"
166	depends on HAVE_CLK || COMPILE_TEST
167	help
168	  Generic PWM framework driver for outputs that can be
169	  muxed to clocks.
170
171	  To compile this driver as a module, choose M here: the module
172	  will be called pwm-clk.
173
174config PWM_CLPS711X
175	tristate "CLPS711X PWM support"
176	depends on ARCH_CLPS711X || COMPILE_TEST
177	depends on HAS_IOMEM
178	help
179	  Generic PWM framework driver for Cirrus Logic CLPS711X.
180
181	  To compile this driver as a module, choose M here: the module
182	  will be called pwm-clps711x.
183
184config PWM_CRC
185	tristate "Intel Crystalcove (CRC) PWM support"
186	depends on INTEL_SOC_PMIC
187	help
188	  Generic PWM framework driver for Crystalcove (CRC) PMIC based PWM
189	  control.
190
191config PWM_CROS_EC
192	tristate "ChromeOS EC PWM driver"
193	depends on CROS_EC
194	help
195	  PWM driver for exposing a PWM attached to the ChromeOS Embedded
196	  Controller.
197
198config PWM_DWC_CORE
199	tristate
200	depends on HAS_IOMEM
201	help
202	  PWM driver for Synopsys DWC PWM Controller.
203
204	  To compile this driver as a module, build the dependecies as
205	  modules, this will be called pwm-dwc-core.
206
207config PWM_DWC
208	tristate "DesignWare PWM Controller (PCI bus)"
209	depends on HAS_IOMEM && PCI
210	select PWM_DWC_CORE
211	help
212	  PWM driver for Synopsys DWC PWM Controller attached to a PCI bus.
213
214	  To compile this driver as a module, choose M here: the module
215	  will be called pwm-dwc.
216
217config PWM_EP93XX
218	tristate "Cirrus Logic EP93xx PWM support"
219	depends on ARCH_EP93XX || COMPILE_TEST
220	depends on HAS_IOMEM
221	help
222	  Generic PWM framework driver for Cirrus Logic EP93xx.
223
224	  To compile this driver as a module, choose M here: the module
225	  will be called pwm-ep93xx.
226
227config PWM_FSL_FTM
228	tristate "Freescale FlexTimer Module (FTM) PWM support"
229	depends on HAS_IOMEM
230	depends on OF
231	select REGMAP_MMIO
232	help
233	  Generic FTM PWM framework driver for Freescale VF610 and
234	  Layerscape LS-1 SoCs.
235
236	  To compile this driver as a module, choose M here: the module
237	  will be called pwm-fsl-ftm.
238
239config PWM_GPIO
240	tristate "GPIO PWM support"
241	depends on GPIOLIB
242	depends on HIGH_RES_TIMERS
243	help
244	  Generic PWM framework driver for software PWM toggling a GPIO pin
245	  from kernel high-resolution timers.
246
247	  To compile this driver as a module, choose M here: the module
248	  will be called pwm-gpio.
249
250config PWM_HIBVT
251	tristate "HiSilicon BVT PWM support"
252	depends on ARCH_HISI || COMPILE_TEST
253	depends on HAS_IOMEM
254	help
255	  Generic PWM framework driver for HiSilicon BVT SoCs.
256
257	  To compile this driver as a module, choose M here: the module
258	  will be called pwm-hibvt.
259
260config PWM_IMG
261	tristate "Imagination Technologies PWM driver"
262	depends on HAS_IOMEM
263	depends on MFD_SYSCON
264	depends on COMMON_CLK
265	depends on MIPS || COMPILE_TEST
266	help
267	  Generic PWM framework driver for Imagination Technologies
268	  PWM block which supports 4 channels.
269
270	  To compile this driver as a module, choose M here: the module
271	  will be called pwm-img
272
273config PWM_IMX1
274	tristate "i.MX1 PWM support"
275	depends on ARCH_MXC || COMPILE_TEST
276	depends on HAS_IOMEM
277	help
278	  Generic PWM framework driver for i.MX1 and i.MX21
279
280	  To compile this driver as a module, choose M here: the module
281	  will be called pwm-imx1.
282
283config PWM_IMX27
284	tristate "i.MX27 PWM support"
285	depends on ARCH_MXC || COMPILE_TEST
286	depends on HAS_IOMEM
287	help
288	  Generic PWM framework driver for i.MX27 and later i.MX SoCs.
289
290	  To compile this driver as a module, choose M here: the module
291	  will be called pwm-imx27.
292
293config PWM_IMX_TPM
294	tristate "i.MX TPM PWM support"
295	depends on ARCH_MXC || COMPILE_TEST
296	depends on HAVE_CLK && HAS_IOMEM
297	help
298	  Generic PWM framework driver for i.MX7ULP TPM module, TPM's full
299	  name is Low Power Timer/Pulse Width Modulation Module.
300
301	  To compile this driver as a module, choose M here: the module
302	  will be called pwm-imx-tpm.
303
304config PWM_INTEL_LGM
305	tristate "Intel LGM PWM support"
306	depends on HAS_IOMEM
307	depends on (OF && X86) || COMPILE_TEST
308	select REGMAP_MMIO
309	help
310	  Generic PWM fan controller driver for LGM SoC.
311
312	  To compile this driver as a module, choose M here: the module
313	  will be called pwm-intel-lgm.
314
315config PWM_IQS620A
316	tristate "Azoteq IQS620A PWM support"
317	depends on MFD_IQS62X || COMPILE_TEST
318	help
319	  Generic PWM framework driver for the Azoteq IQS620A multi-function
320	  sensor.
321
322	  To compile this driver as a module, choose M here: the module will
323	  be called pwm-iqs620a.
324
325config PWM_JZ4740
326	tristate "Ingenic JZ47xx PWM support"
327	depends on MACH_INGENIC || COMPILE_TEST
328	depends on COMMON_CLK && OF
329	select MFD_SYSCON
330	help
331	  Generic PWM framework driver for Ingenic JZ47xx based
332	  machines.
333
334	  To compile this driver as a module, choose M here: the module
335	  will be called pwm-jz4740.
336
337config PWM_KEEMBAY
338	tristate "Intel Keem Bay PWM driver"
339	depends on ARCH_KEEMBAY || COMPILE_TEST
340	depends on COMMON_CLK && HAS_IOMEM
341	help
342	  The platform driver for Intel Keem Bay PWM controller.
343
344	  To compile this driver as a module, choose M here: the module
345	  will be called pwm-keembay.
346
347config PWM_LP3943
348	tristate "TI/National Semiconductor LP3943 PWM support"
349	depends on MFD_LP3943
350	help
351	  Generic PWM framework driver for LP3943 which supports two PWM
352	  channels.
353
354	  To compile this driver as a module, choose M here: the module
355	  will be called pwm-lp3943.
356
357config PWM_LPC18XX_SCT
358	tristate "LPC18xx/43xx PWM/SCT support"
359	depends on ARCH_LPC18XX || COMPILE_TEST
360	depends on HAS_IOMEM
361	help
362	  Generic PWM framework driver for NXP LPC18xx PWM/SCT which
363	  supports 16 channels.
364	  A maximum of 15 channels can be requested simultaneously and
365	  must have the same period.
366
367	  To compile this driver as a module, choose M here: the module
368	  will be called pwm-lpc18xx-sct.
369
370config PWM_LPC32XX
371	tristate "LPC32XX PWM support"
372	depends on ARCH_LPC32XX || COMPILE_TEST
373	depends on HAS_IOMEM
374	help
375	  Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
376	  PWM controllers.
377
378	  To compile this driver as a module, choose M here: the module
379	  will be called pwm-lpc32xx.
380
381config PWM_LPSS
382	depends on HAS_IOMEM
383	tristate
384
385config PWM_LPSS_PCI
386	tristate "Intel LPSS PWM PCI driver"
387	depends on X86 || COMPILE_TEST
388	depends on HAS_IOMEM && PCI
389	select PWM_LPSS
390	help
391	  The PCI driver for Intel Low Power Subsystem PWM controller.
392
393	  To compile this driver as a module, choose M here: the module
394	  will be called pwm-lpss-pci.
395
396config PWM_LPSS_PLATFORM
397	tristate "Intel LPSS PWM platform driver"
398	depends on (X86 && ACPI) || COMPILE_TEST
399	depends on HAS_IOMEM
400	select PWM_LPSS
401	help
402	  The platform driver for Intel Low Power Subsystem PWM controller.
403
404	  To compile this driver as a module, choose M here: the module
405	  will be called pwm-lpss-platform.
406
407config PWM_MESON
408	tristate "Amlogic Meson PWM driver"
409	depends on ARCH_MESON || COMPILE_TEST
410	depends on COMMON_CLK && HAS_IOMEM
411	help
412	  The platform driver for Amlogic Meson PWM controller.
413
414	  To compile this driver as a module, choose M here: the module
415	  will be called pwm-meson.
416
417config PWM_MTK_DISP
418	tristate "MediaTek display PWM driver"
419	depends on ARCH_MEDIATEK || COMPILE_TEST
420	depends on HAS_IOMEM
421	help
422	  Generic PWM framework driver for MediaTek disp-pwm device.
423	  The PWM is used to control the backlight brightness for display.
424
425	  To compile this driver as a module, choose M here: the module
426	  will be called pwm-mtk-disp.
427
428config PWM_MEDIATEK
429	tristate "MediaTek PWM support"
430	depends on ARCH_MEDIATEK || RALINK || COMPILE_TEST
431	depends on HAS_IOMEM
432	help
433	  Generic PWM framework driver for Mediatek ARM SoC.
434
435	  To compile this driver as a module, choose M here: the module
436	  will be called pwm-mediatek.
437
438config PWM_MICROCHIP_CORE
439	tristate "Microchip corePWM PWM support"
440	depends on ARCH_MICROCHIP_POLARFIRE || COMPILE_TEST
441	depends on HAS_IOMEM && OF
442	help
443	  PWM driver for Microchip FPGA soft IP core.
444
445	  To compile this driver as a module, choose M here: the module
446	  will be called pwm-microchip-core.
447
448config PWM_MXS
449	tristate "Freescale MXS PWM support"
450	depends on ARCH_MXS || COMPILE_TEST
451	depends on HAS_IOMEM && OF
452	select STMP_DEVICE
453	help
454	  Generic PWM framework driver for Freescale MXS.
455
456	  To compile this driver as a module, choose M here: the module
457	  will be called pwm-mxs.
458
459config PWM_NTXEC
460	tristate "Netronix embedded controller PWM support"
461	depends on MFD_NTXEC
462	help
463	  Say yes here if you want to support the PWM output of the embedded
464	  controller found in certain e-book readers designed by the original
465	  design manufacturer Netronix.
466
467config PWM_OMAP_DMTIMER
468	tristate "OMAP Dual-Mode Timer PWM support"
469	depends on OF
470	depends on OMAP_DM_TIMER || COMPILE_TEST
471	help
472	  Generic PWM framework driver for OMAP Dual-Mode Timer PWM output
473
474	  To compile this driver as a module, choose M here: the module
475	  will be called pwm-omap-dmtimer
476
477config PWM_PCA9685
478	tristate "NXP PCA9685 PWM driver"
479	depends on I2C
480	select REGMAP_I2C
481	help
482	  Generic PWM framework driver for NXP PCA9685 LED controller.
483
484	  To compile this driver as a module, choose M here: the module
485	  will be called pwm-pca9685.
486
487config PWM_PXA
488	tristate "PXA PWM support"
489	depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
490	depends on HAS_IOMEM
491	help
492	  Generic PWM framework driver for PXA.
493
494	  To compile this driver as a module, choose M here: the module
495	  will be called pwm-pxa.
496
497config PWM_RASPBERRYPI_POE
498	tristate "Raspberry Pi Firwmware PoE Hat PWM support"
499	# Make sure not 'y' when RASPBERRYPI_FIRMWARE is 'm'. This can only
500	# happen when COMPILE_TEST=y, hence the added !RASPBERRYPI_FIRMWARE.
501	depends on RASPBERRYPI_FIRMWARE || (COMPILE_TEST && !RASPBERRYPI_FIRMWARE)
502	help
503	  Enable Raspberry Pi firmware controller PWM bus used to control the
504	  official RPI PoE hat
505
506config PWM_RCAR
507	tristate "Renesas R-Car PWM support"
508	depends on ARCH_RENESAS || COMPILE_TEST
509	depends on HAS_IOMEM
510	help
511	  This driver exposes the PWM Timer controller found in Renesas
512	  R-Car chips through the PWM API.
513
514	  To compile this driver as a module, choose M here: the module
515	  will be called pwm-rcar.
516
517config PWM_RENESAS_TPU
518	tristate "Renesas TPU PWM support"
519	depends on ARCH_RENESAS || COMPILE_TEST
520	depends on HAS_IOMEM
521	help
522	  This driver exposes the Timer Pulse Unit (TPU) PWM controller found
523	  in Renesas chips through the PWM API.
524
525	  To compile this driver as a module, choose M here: the module
526	  will be called pwm-renesas-tpu.
527
528config PWM_ROCKCHIP
529	tristate "Rockchip PWM support"
530	depends on ARCH_ROCKCHIP || COMPILE_TEST
531	depends on HAS_IOMEM
532	help
533	  Generic PWM framework driver for the PWM controller found on
534	  Rockchip SoCs.
535
536config PWM_RZ_MTU3
537	tristate "Renesas RZ/G2L MTU3a PWM Timer support"
538	depends on RZ_MTU3
539	depends on HAS_IOMEM
540	help
541	  This driver exposes the MTU3a PWM Timer controller found in Renesas
542	  RZ/G2L like chips through the PWM API.
543
544	  To compile this driver as a module, choose M here: the module
545	  will be called pwm-rz-mtu3.
546
547config PWM_SAMSUNG
548	tristate "Samsung PWM support"
549	depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
550	depends on HAS_IOMEM
551	help
552	  Generic PWM framework driver for Samsung S3C24xx, S3C64xx, S5Pv210
553	  and Exynos SoCs.
554	  Choose Y here only if you build for such Samsung SoC.
555
556	  To compile this driver as a module, choose M here: the module
557	  will be called pwm-samsung.
558
559config PWM_SIFIVE
560	tristate "SiFive PWM support"
561	depends on OF
562	depends on COMMON_CLK && HAS_IOMEM
563	depends on RISCV || COMPILE_TEST
564	help
565	  Generic PWM framework driver for SiFive SoCs.
566
567	  To compile this driver as a module, choose M here: the module
568	  will be called pwm-sifive.
569
570config PWM_SL28CPLD
571	tristate "Kontron sl28cpld PWM support"
572	depends on MFD_SL28CPLD || COMPILE_TEST
573	help
574	  Generic PWM framework driver for board management controller
575	  found on the Kontron sl28 CPLD.
576
577	  To compile this driver as a module, choose M here: the module
578	  will be called pwm-sl28cpld.
579
580config PWM_SPEAR
581	tristate "STMicroelectronics SPEAr PWM support"
582	depends on PLAT_SPEAR || COMPILE_TEST
583	depends on HAS_IOMEM && OF
584	help
585	  Generic PWM framework driver for the PWM controller on ST
586	  SPEAr SoCs.
587
588	  To compile this driver as a module, choose M here: the module
589	  will be called pwm-spear.
590
591config PWM_SPRD
592	tristate "Spreadtrum PWM support"
593	depends on ARCH_SPRD || COMPILE_TEST
594	depends on HAS_IOMEM
595	help
596	  Generic PWM framework driver for the PWM controller on
597	  Spreadtrum SoCs.
598
599	  To compile this driver as a module, choose M here: the module
600	  will be called pwm-sprd.
601
602config PWM_STI
603	tristate "STiH4xx PWM support"
604	depends on ARCH_STI || COMPILE_TEST
605	depends on HAS_IOMEM && OF
606	help
607	  Generic PWM framework driver for STiH4xx SoCs.
608
609	  To compile this driver as a module, choose M here: the module
610	  will be called pwm-sti.
611
612config PWM_STM32
613	tristate "STMicroelectronics STM32 PWM"
614	depends on MFD_STM32_TIMERS || COMPILE_TEST
615	help
616	  Generic PWM framework driver for STM32 SoCs.
617
618	  To compile this driver as a module, choose M here: the module
619	  will be called pwm-stm32.
620
621config PWM_STM32_LP
622	tristate "STMicroelectronics STM32 PWM LP"
623	depends on MFD_STM32_LPTIMER || COMPILE_TEST
624	help
625	  Generic PWM framework driver for STMicroelectronics STM32 SoCs
626	  with Low-Power Timer (LPTIM).
627
628	  To compile this driver as a module, choose M here: the module
629	  will be called pwm-stm32-lp.
630
631config PWM_STMPE
632	bool "STMPE expander PWM export"
633	depends on MFD_STMPE
634	help
635	  This enables support for the PWMs found in the STMPE I/O
636	  expanders.
637
638config PWM_SUN4I
639	tristate "Allwinner PWM support"
640	depends on ARCH_SUNXI || COMPILE_TEST
641	depends on HAS_IOMEM && COMMON_CLK
642	help
643	  Generic PWM framework driver for Allwinner SoCs.
644
645	  To compile this driver as a module, choose M here: the module
646	  will be called pwm-sun4i.
647
648config PWM_SUNPLUS
649	tristate "Sunplus PWM support"
650	depends on ARCH_SUNPLUS || COMPILE_TEST
651	depends on HAS_IOMEM && OF
652	help
653	  Generic PWM framework driver for the PWM controller on
654	  Sunplus SoCs.
655
656	  To compile this driver as a module, choose M here: the module
657	  will be called pwm-sunplus.
658
659config PWM_TEGRA
660	tristate "NVIDIA Tegra PWM support"
661	depends on ARCH_TEGRA || COMPILE_TEST
662	depends on HAS_IOMEM
663	help
664	  Generic PWM framework driver for the PWFM controller found on NVIDIA
665	  Tegra SoCs.
666
667	  To compile this driver as a module, choose M here: the module
668	  will be called pwm-tegra.
669
670config PWM_TIECAP
671	tristate "ECAP PWM support"
672	depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
673	depends on HAS_IOMEM
674	help
675	  PWM driver support for the ECAP APWM controller found on TI SOCs
676
677	  To compile this driver as a module, choose M here: the module
678	  will be called pwm-tiecap.
679
680config PWM_TIEHRPWM
681	tristate "EHRPWM PWM support"
682	depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_K3 || COMPILE_TEST
683	depends on HAS_IOMEM
684	help
685	  PWM driver support for the EHRPWM controller found on TI SOCs
686
687	  To compile this driver as a module, choose M here: the module
688	  will be called pwm-tiehrpwm.
689
690config PWM_TWL
691	tristate "TWL4030/6030 PWM support"
692	depends on TWL4030_CORE
693	help
694	  Generic PWM framework driver for TWL4030/6030.
695
696	  To compile this driver as a module, choose M here: the module
697	  will be called pwm-twl.
698
699config PWM_TWL_LED
700	tristate "TWL4030/6030 PWM support for LED drivers"
701	depends on TWL4030_CORE
702	help
703	  Generic PWM framework driver for TWL4030/6030 LED terminals.
704
705	  To compile this driver as a module, choose M here: the module
706	  will be called pwm-twl-led.
707
708config PWM_VISCONTI
709	tristate "Toshiba Visconti PWM support"
710	depends on ARCH_VISCONTI || COMPILE_TEST
711	help
712	  PWM Subsystem driver support for Toshiba Visconti SoCs.
713
714	  To compile this driver as a module, choose M here: the module
715	  will be called pwm-visconti.
716
717config PWM_VT8500
718	tristate "vt8500 PWM support"
719	depends on ARCH_VT8500 || COMPILE_TEST
720	depends on HAS_IOMEM
721	help
722	  Generic PWM framework driver for vt8500.
723
724	  To compile this driver as a module, choose M here: the module
725	  will be called pwm-vt8500.
726
727config PWM_XILINX
728	tristate "Xilinx AXI Timer PWM support"
729	depends on OF_ADDRESS
730	depends on COMMON_CLK
731	select REGMAP_MMIO
732	help
733	  PWM driver for Xilinx LogiCORE IP AXI timers. This timer is
734	  typically a soft core which may be present in Xilinx FPGAs.
735	  This device may also be present in Microblaze soft processors.
736	  If you don't have this IP in your design, choose N.
737
738	  To compile this driver as a module, choose M here: the module
739	  will be called pwm-xilinx.
740
741endif
742