xref: /linux/drivers/pwm/Kconfig (revision 0d456bad36d42d16022be045c8a53ddbb59ee478)
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_BFIN
41	tristate "Blackfin PWM support"
42	depends on BFIN_GPTIMERS
43	help
44	  Generic PWM framework driver for Blackfin.
45
46	  To compile this driver as a module, choose M here: the module
47	  will be called pwm-bfin.
48
49config PWM_IMX
50	tristate "i.MX pwm support"
51	depends on ARCH_MXC
52	help
53	  Generic PWM framework driver for i.MX.
54
55	  To compile this driver as a module, choose M here: the module
56	  will be called pwm-imx.
57
58config PWM_JZ4740
59	tristate "Ingenic JZ4740 PWM support"
60	depends on MACH_JZ4740
61	help
62	  Generic PWM framework driver for Ingenic JZ4740 based
63	  machines.
64
65	  To compile this driver as a module, choose M here: the module
66	  will be called pwm-jz4740.
67
68config PWM_LPC32XX
69	tristate "LPC32XX PWM support"
70	depends on ARCH_LPC32XX
71	help
72	  Generic PWM framework driver for LPC32XX. The LPC32XX SOC has two
73	  PWM controllers.
74
75	  To compile this driver as a module, choose M here: the module
76	  will be called pwm-lpc32xx.
77
78config PWM_MXS
79	tristate "Freescale MXS PWM support"
80	depends on ARCH_MXS && OF
81	select STMP_DEVICE
82	help
83	  Generic PWM framework driver for Freescale MXS.
84
85	  To compile this driver as a module, choose M here: the module
86	  will be called pwm-mxs.
87
88config PWM_PUV3
89	tristate "PKUnity NetBook-0916 PWM support"
90	depends on ARCH_PUV3
91	help
92	  Generic PWM framework driver for PKUnity NetBook-0916.
93
94	  To compile this driver as a module, choose M here: the module
95	  will be called pwm-puv3.
96
97config PWM_PXA
98	tristate "PXA PWM support"
99	depends on ARCH_PXA
100	help
101	  Generic PWM framework driver for PXA.
102
103	  To compile this driver as a module, choose M here: the module
104	  will be called pwm-pxa.
105
106config PWM_SAMSUNG
107	tristate "Samsung pwm support"
108	depends on PLAT_SAMSUNG
109	help
110	  Generic PWM framework driver for Samsung.
111
112	  To compile this driver as a module, choose M here: the module
113	  will be called pwm-samsung.
114
115config PWM_TEGRA
116	tristate "NVIDIA Tegra PWM support"
117	depends on ARCH_TEGRA
118	help
119	  Generic PWM framework driver for the PWFM controller found on NVIDIA
120	  Tegra SoCs.
121
122	  To compile this driver as a module, choose M here: the module
123	  will be called pwm-tegra.
124
125config  PWM_TIECAP
126	tristate "ECAP PWM support"
127	depends on SOC_AM33XX
128	help
129	  PWM driver support for the ECAP APWM controller found on AM33XX
130	  TI SOC
131
132	  To compile this driver as a module, choose M here: the module
133	  will be called pwm-tiecap.
134
135config  PWM_TIEHRPWM
136	tristate "EHRPWM PWM support"
137	depends on SOC_AM33XX
138	help
139	  PWM driver support for the EHRPWM controller found on AM33XX
140	  TI SOC
141
142	  To compile this driver as a module, choose M here: the module
143	  will be called pwm-tiehrpwm.
144
145config PWM_TWL6030
146	tristate "TWL6030 PWM support"
147	depends on TWL4030_CORE
148	help
149	  Generic PWM framework driver for TWL6030.
150
151	  To compile this driver as a module, choose M here: the module
152	  will be called pwm-twl6030.
153
154config PWM_VT8500
155	tristate "vt8500 pwm support"
156	depends on ARCH_VT8500
157	help
158	  Generic PWM framework driver for vt8500.
159
160	  To compile this driver as a module, choose M here: the module
161	  will be called pwm-vt8500.
162
163endif
164