blob: 6e79868d0efc1f18331cbed5df44833df812837f [file] [log] [blame]
Simon Glassfc760cb2016-01-21 19:44:54 -07001config DM_PWM
2 bool "Enable support for pulse-width modulation devices (PWM)"
3 depends on DM
4 help
5 A pulse-width modulator emits a pulse of varying width and provides
6 control over the duty cycle (high and low time) of the signal. This
7 is often used to control a voltage level. The more time the PWM
8 spends in the 'high' state, the higher the voltage. The PWM's
9 frequency/period can be controlled along with the proportion of that
10 time that the signal is high.
Simon Glass0e23fd82016-01-21 19:44:55 -070011
Billy Tsaifae101d2022-03-08 11:04:05 +080012config PWM_ASPEED
13 bool "Enable support for the Aspeed PWM"
14 depends on DM_PWM
Billy Tsai11d30962022-04-29 11:50:48 +080015 select SYSCON
Billy Tsaifae101d2022-03-08 11:04:05 +080016 help
17 This PWM is found on Ast2600 SoCs. It supports a programmable period
18 and duty cycle. It provides 16 channels which can be independently
19 programmed.
20
Dan Sneddon9b075972021-09-20 16:28:44 -070021config PWM_AT91
22 bool "Enable support for PWM found on AT91 SoC's"
23 depends on DM_PWM && ARCH_AT91
24 help
25 Support for PWM hardware on AT91 based SoC.
26
Michal Simekfb92cc22021-10-15 15:17:29 +020027config PWM_CADENCE_TTC
28 bool "Enable support for the Cadence TTC PWM"
29 depends on DM_PWM && !CADENCE_TTC_TIMER
30 help
31 Cadence TTC can be configured as timer which is done via
32 CONFIG_CADENCE_TTC_TIMER or as PWM. This is covering only PWM now.
33
Alper Nebi Yasak1b9ee282020-10-22 23:49:27 +030034config PWM_CROS_EC
35 bool "Enable support for the Chrome OS EC PWM"
36 depends on DM_PWM
37 help
38 This PWM is found on several Chrome OS devices and controlled by
39 the Chrome OS embedded controller. It may be used to control the
40 screen brightness and/or the keyboard backlight depending on the
41 device.
42
Simon Glass5c2dd4c2016-02-21 21:08:49 -070043config PWM_EXYNOS
44 bool "Enable support for the Exynos PWM"
45 depends on DM_PWM
46 help
47 This PWM is found on Samsung Exynos 5250 and other Samsung SoCs. It
48 supports a programmable period and duty cycle. A 32-bit counter is
49 used. It provides 5 channels which can be independently
50 programmed. Channel 4 (the last) is normally used as a timer.
51
Heiko Schochere0f06572019-05-28 06:51:51 +020052config PWM_IMX
53 bool "Enable support for i.MX27 and later PWM"
54 help
55 This PWM is found i.MX27 and later i.MX SoCs.
56
Neil Armstrong2d481b22020-10-01 10:04:56 +020057config PWM_MESON
58 bool "Enable support for Amlogic Meson SoCs PWM"
59 depends on DM_PWM
60 help
61 This PWM is found on Amlogic Meson SoCs. It supports a
62 programmable period and duty cycle for 2 independant channels.
63
Sam Shiha537fa42020-02-21 21:01:46 +080064config PWM_MTK
65 bool "Enable support for MediaTek PWM"
66 depends on DM_PWM
67 help
68 This PWM is found on MT7622, MT7623, and MT7629. It supports a
69 programmable period and duty cycle.
70
Simon Glass0e23fd82016-01-21 19:44:55 -070071config PWM_ROCKCHIP
72 bool "Enable support for the Rockchip PWM"
73 depends on DM_PWM
74 help
75 This PWM is found on RK3288 and other Rockchip SoCs. It supports a
76 programmable period and duty cycle. A 32-bit counter is used.
77 Various options provided in the hardware (such as capture mode and
78 continuous/single-shot) are not supported by the driver.
Simon Glass41fa0352016-01-30 16:38:00 -070079
Simon Glass43b41562017-04-16 21:01:11 -060080config PWM_SANDBOX
81 bool "Enable support for the sandbox PWM"
82 help
83 This is a sandbox PWM used for testing. It provides 3 channels and
84 records the settings passed into it, but otherwise does nothing
85 useful. The PWM can be enabled but is not connected to any outputs
86 so this is not very useful.
87
Tom Rinide0a7322022-06-15 12:03:49 -040088config PWM_S5P
89 bool "Enable non-DM support for S5P PWM"
90 depends on (S5P || ARCH_NEXELL)
91 default y
92
Yash Shah7239a612020-04-23 16:57:16 +053093config PWM_SIFIVE
94 bool "Enable support for SiFive PWM"
95 depends on DM_PWM
96 help
97 This PWM is found SiFive's FU540 and other SoCs.
98
Simon Glass41fa0352016-01-30 16:38:00 -070099config PWM_TEGRA
100 bool "Enable support for the Tegra PWM"
Simon Glass91c08af2016-01-30 16:38:01 -0700101 depends on DM_PWM
Simon Glass41fa0352016-01-30 16:38:00 -0700102 help
103 This PWM is found on Tegra 20 and other Nvidia SoCs. It supports
104 four channels with a programmable period and duty cycle. Only a
105 32KHz clock is supported by the driver but the duty cycle is
106 configurable.
Vasily Khoruzhick1c353ae2018-05-14 08:16:20 -0700107
108config PWM_SUNXI
109 bool "Enable support for the Allwinner Sunxi PWM"
110 depends on DM_PWM
111 help
112 This PWM is found on H3, A64 and other Allwinner SoCs. It supports a
113 programmable period and duty cycle. A 16-bit counter is used.
Dario Binacchiade7f0d2020-12-30 00:16:24 +0100114
115config PWM_TI_EHRPWM
116 bool "Enable support for EHRPWM PWM"
117 depends on DM_PWM && ARCH_OMAP2PLUS
118 default y
119 help
120 PWM driver support for the EHRPWM controller found on TI SOCs.