Simon Glass | b3f0756 | 2016-01-21 19:44:54 -0700 | [diff] [blame] | 1 | config 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 Glass | c5915f7 | 2016-01-21 19:44:55 -0700 | [diff] [blame] | 11 | |
Billy Tsai | a65bdb9 | 2022-03-08 11:04:05 +0800 | [diff] [blame] | 12 | config PWM_ASPEED |
| 13 | bool "Enable support for the Aspeed PWM" |
| 14 | depends on DM_PWM |
| 15 | help |
| 16 | This PWM is found on Ast2600 SoCs. It supports a programmable period |
| 17 | and duty cycle. It provides 16 channels which can be independently |
| 18 | programmed. |
| 19 | |
Dan Sneddon | 1f302a9 | 2021-09-20 16:28:44 -0700 | [diff] [blame] | 20 | config PWM_AT91 |
| 21 | bool "Enable support for PWM found on AT91 SoC's" |
| 22 | depends on DM_PWM && ARCH_AT91 |
| 23 | help |
| 24 | Support for PWM hardware on AT91 based SoC. |
| 25 | |
Michal Simek | 8ab1b03 | 2021-10-15 15:17:29 +0200 | [diff] [blame] | 26 | config PWM_CADENCE_TTC |
| 27 | bool "Enable support for the Cadence TTC PWM" |
| 28 | depends on DM_PWM && !CADENCE_TTC_TIMER |
| 29 | help |
| 30 | Cadence TTC can be configured as timer which is done via |
| 31 | CONFIG_CADENCE_TTC_TIMER or as PWM. This is covering only PWM now. |
| 32 | |
Alper Nebi Yasak | 2b8031f | 2020-10-22 23:49:27 +0300 | [diff] [blame] | 33 | config PWM_CROS_EC |
| 34 | bool "Enable support for the Chrome OS EC PWM" |
| 35 | depends on DM_PWM |
| 36 | help |
| 37 | This PWM is found on several Chrome OS devices and controlled by |
| 38 | the Chrome OS embedded controller. It may be used to control the |
| 39 | screen brightness and/or the keyboard backlight depending on the |
| 40 | device. |
| 41 | |
Simon Glass | 636bf17 | 2016-02-21 21:08:49 -0700 | [diff] [blame] | 42 | config PWM_EXYNOS |
| 43 | bool "Enable support for the Exynos PWM" |
| 44 | depends on DM_PWM |
| 45 | help |
| 46 | This PWM is found on Samsung Exynos 5250 and other Samsung SoCs. It |
| 47 | supports a programmable period and duty cycle. A 32-bit counter is |
| 48 | used. It provides 5 channels which can be independently |
| 49 | programmed. Channel 4 (the last) is normally used as a timer. |
| 50 | |
Heiko Schocher | ff3b7b1 | 2019-05-28 06:51:51 +0200 | [diff] [blame] | 51 | config PWM_IMX |
| 52 | bool "Enable support for i.MX27 and later PWM" |
| 53 | help |
| 54 | This PWM is found i.MX27 and later i.MX SoCs. |
| 55 | |
Neil Armstrong | da7f09c | 2020-10-01 10:04:56 +0200 | [diff] [blame] | 56 | config PWM_MESON |
| 57 | bool "Enable support for Amlogic Meson SoCs PWM" |
| 58 | depends on DM_PWM |
| 59 | help |
| 60 | This PWM is found on Amlogic Meson SoCs. It supports a |
| 61 | programmable period and duty cycle for 2 independant channels. |
| 62 | |
developer | dcb0206 | 2020-02-21 21:01:46 +0800 | [diff] [blame] | 63 | config PWM_MTK |
| 64 | bool "Enable support for MediaTek PWM" |
| 65 | depends on DM_PWM |
| 66 | help |
| 67 | This PWM is found on MT7622, MT7623, and MT7629. It supports a |
| 68 | programmable period and duty cycle. |
| 69 | |
Simon Glass | c5915f7 | 2016-01-21 19:44:55 -0700 | [diff] [blame] | 70 | config PWM_ROCKCHIP |
| 71 | bool "Enable support for the Rockchip PWM" |
| 72 | depends on DM_PWM |
| 73 | help |
| 74 | This PWM is found on RK3288 and other Rockchip SoCs. It supports a |
| 75 | programmable period and duty cycle. A 32-bit counter is used. |
| 76 | Various options provided in the hardware (such as capture mode and |
| 77 | continuous/single-shot) are not supported by the driver. |
Simon Glass | 90836ff | 2016-01-30 16:38:00 -0700 | [diff] [blame] | 78 | |
Simon Glass | e62f4be | 2017-04-16 21:01:11 -0600 | [diff] [blame] | 79 | config PWM_SANDBOX |
| 80 | bool "Enable support for the sandbox PWM" |
| 81 | help |
| 82 | This is a sandbox PWM used for testing. It provides 3 channels and |
| 83 | records the settings passed into it, but otherwise does nothing |
| 84 | useful. The PWM can be enabled but is not connected to any outputs |
| 85 | so this is not very useful. |
| 86 | |
Yash Shah | 3aa586d | 2020-04-23 16:57:16 +0530 | [diff] [blame] | 87 | config PWM_SIFIVE |
| 88 | bool "Enable support for SiFive PWM" |
| 89 | depends on DM_PWM |
| 90 | help |
| 91 | This PWM is found SiFive's FU540 and other SoCs. |
| 92 | |
Simon Glass | 90836ff | 2016-01-30 16:38:00 -0700 | [diff] [blame] | 93 | config PWM_TEGRA |
| 94 | bool "Enable support for the Tegra PWM" |
Simon Glass | d8af3c9 | 2016-01-30 16:38:01 -0700 | [diff] [blame] | 95 | depends on DM_PWM |
Simon Glass | 90836ff | 2016-01-30 16:38:00 -0700 | [diff] [blame] | 96 | help |
| 97 | This PWM is found on Tegra 20 and other Nvidia SoCs. It supports |
| 98 | four channels with a programmable period and duty cycle. Only a |
| 99 | 32KHz clock is supported by the driver but the duty cycle is |
| 100 | configurable. |
Vasily Khoruzhick | 86a38e5 | 2018-05-14 08:16:20 -0700 | [diff] [blame] | 101 | |
| 102 | config PWM_SUNXI |
| 103 | bool "Enable support for the Allwinner Sunxi PWM" |
| 104 | depends on DM_PWM |
| 105 | help |
| 106 | This PWM is found on H3, A64 and other Allwinner SoCs. It supports a |
| 107 | programmable period and duty cycle. A 16-bit counter is used. |
Dario Binacchi | 3e8e7bf | 2020-12-30 00:16:24 +0100 | [diff] [blame] | 108 | |
| 109 | config PWM_TI_EHRPWM |
| 110 | bool "Enable support for EHRPWM PWM" |
| 111 | depends on DM_PWM && ARCH_OMAP2PLUS |
| 112 | default y |
| 113 | help |
| 114 | PWM driver support for the EHRPWM controller found on TI SOCs. |