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_SPEAR 116 tristate "STMicroelectronics SPEAr PWM support" 117 depends on PLAT_SPEAR 118 depends on OF 119 help 120 Generic PWM framework driver for the PWM controller on ST 121 SPEAr SoCs. 122 123 To compile this driver as a module, choose M here: the module 124 will be called pwm-spear. 125 126config PWM_TEGRA 127 tristate "NVIDIA Tegra PWM support" 128 depends on ARCH_TEGRA 129 help 130 Generic PWM framework driver for the PWFM controller found on NVIDIA 131 Tegra SoCs. 132 133 To compile this driver as a module, choose M here: the module 134 will be called pwm-tegra. 135 136config PWM_TIECAP 137 tristate "ECAP PWM support" 138 depends on SOC_AM33XX 139 select PWM_TIPWMSS 140 help 141 PWM driver support for the ECAP APWM controller found on AM33XX 142 TI SOC 143 144 To compile this driver as a module, choose M here: the module 145 will be called pwm-tiecap. 146 147config PWM_TIEHRPWM 148 tristate "EHRPWM PWM support" 149 depends on SOC_AM33XX 150 select PWM_TIPWMSS 151 help 152 PWM driver support for the EHRPWM 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-tiehrpwm. 157 158config PWM_TIPWMSS 159 bool 160 depends on SOC_AM33XX && (PWM_TIEHRPWM || PWM_TIECAP) 161 help 162 PWM Subsystem driver support for AM33xx SOC. 163 164 PWM submodules require PWM config space access from submodule 165 drivers and require common parent driver support. 166 167config PWM_TWL 168 tristate "TWL4030/6030 PWM support" 169 depends on TWL4030_CORE 170 help 171 Generic PWM framework driver for TWL4030/6030. 172 173 To compile this driver as a module, choose M here: the module 174 will be called pwm-twl. 175 176config PWM_TWL_LED 177 tristate "TWL4030/6030 PWM support for LED drivers" 178 depends on TWL4030_CORE 179 help 180 Generic PWM framework driver for TWL4030/6030 LED terminals. 181 182 To compile this driver as a module, choose M here: the module 183 will be called pwm-twl-led. 184 185config PWM_VT8500 186 tristate "vt8500 pwm support" 187 depends on ARCH_VT8500 188 help 189 Generic PWM framework driver for vt8500. 190 191 To compile this driver as a module, choose M here: the module 192 will be called pwm-vt8500. 193 194endif 195