xref: /openbmc/linux/drivers/pwm/Kconfig (revision 95e9fd10)
1menuconfig PWM
2	bool "Pulse-Width Modulation (PWM) Support"
3	depends on !MACH_JZ4740 && !PUV3_PWM
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_BFIN
33	tristate "Blackfin PWM support"
34	depends on BFIN_GPTIMERS
35	help
36	  Generic PWM framework driver for Blackfin.
37
38	  To compile this driver as a module, choose M here: the module
39	  will be called pwm-bfin.
40
41config PWM_IMX
42	tristate "i.MX pwm support"
43	depends on ARCH_MXC
44	help
45	  Generic PWM framework driver for i.MX.
46
47	  To compile this driver as a module, choose M here: the module
48	  will be called pwm-imx.
49
50config PWM_LPC32XX
51	tristate "LPC32XX PWM support"
52	depends on ARCH_LPC32XX
53	help
54	  Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
55	  PWM controllers.
56
57	  To compile this driver as a module, choose M here: the module
58	  will be called pwm-lpc32xx.
59
60config PWM_MXS
61	tristate "Freescale MXS PWM support"
62	depends on ARCH_MXS && OF
63	select STMP_DEVICE
64	help
65	  Generic PWM framework driver for Freescale MXS.
66
67	  To compile this driver as a module, choose M here: the module
68	  will be called pwm-mxs.
69
70config PWM_PXA
71	tristate "PXA PWM support"
72	depends on ARCH_PXA
73	help
74	  Generic PWM framework driver for PXA.
75
76	  To compile this driver as a module, choose M here: the module
77	  will be called pwm-pxa.
78
79config PWM_SAMSUNG
80	tristate "Samsung pwm support"
81	depends on PLAT_SAMSUNG
82	help
83	  Generic PWM framework driver for Samsung.
84
85	  To compile this driver as a module, choose M here: the module
86	  will be called pwm-samsung.
87
88config PWM_TEGRA
89	tristate "NVIDIA Tegra PWM support"
90	depends on ARCH_TEGRA
91	help
92	  Generic PWM framework driver for the PWFM controller found on NVIDIA
93	  Tegra SoCs.
94
95	  To compile this driver as a module, choose M here: the module
96	  will be called pwm-tegra.
97
98config  PWM_TIECAP
99	tristate "ECAP PWM support"
100	depends on SOC_AM33XX
101	help
102	  PWM driver support for the ECAP APWM controller found on AM33XX
103	  TI SOC
104
105	  To compile this driver as a module, choose M here: the module
106	  will be called pwm-tiecap.
107
108config  PWM_TIEHRPWM
109	tristate "EHRPWM PWM support"
110	depends on SOC_AM33XX
111	help
112	  PWM driver support for the EHRPWM controller found on AM33XX
113	  TI SOC
114
115	  To compile this driver as a module, choose M here: the module
116	  will be called pwm-tiehrpwm.
117
118config PWM_VT8500
119	tristate "vt8500 pwm support"
120	depends on ARCH_VT8500
121	help
122	  Generic PWM framework driver for vt8500.
123
124	  To compile this driver as a module, choose M here: the module
125	  will be called pwm-vt8500.
126
127endif
128