summary refs log tree commit diff
path: root/drivers/pwm/Kconfig
diff options
context:
space:
mode:
authorBrian Norris <briannorris@chromium.org>2016-07-15 16:28:44 -0700
committerThierry Reding <thierry.reding@gmail.com>2016-07-25 10:40:41 +0200
commit1f0d3bb02785f698dc273b9006a473194c32f874 (patch)
treec4557cae6930d36e9e834d1cc39770672d7c0062 /drivers/pwm/Kconfig
parent9e60f50b4a79ae2df791d89d08cf2b78ad7629bd (diff)
downloadlinux-1f0d3bb02785f698dc273b9006a473194c32f874.tar.gz
pwm: Add ChromeOS EC PWM driver
Use the new ChromeOS EC EC_CMD_PWM_{GET,SET}_DUTY commands to control
one or more PWMs attached to the Embedded Controller. Because the EC
allows us to modify the duty cycle (as a percentage, where U16_MAX is
100%) but not the period, we assign the period a fixed value of
EC_PWM_MAX_DUTY and reject all attempts to change it.

This driver supports only device tree at the moment, because that
provides a very flexible way of describing the relationship between PWMs
and their consumer devices (e.g., backlight). On a non-DT system, we'll
probably want to use the non-GENERIC addressing (i.e., we'll need to
make special device instances that will use EC_PWM_TYPE_KB_LIGHT or
EC_PWM_TYPE_DISPLAY_LIGHT), as well as the relatively inflexible
pwm_lookup infrastructure for matching devices. Defer that work for now.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Diffstat (limited to 'drivers/pwm/Kconfig')
-rw-r--r--drivers/pwm/Kconfig7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/pwm/Kconfig b/drivers/pwm/Kconfig
index db32cb8c1aba..80a566a00d04 100644
--- a/drivers/pwm/Kconfig
+++ b/drivers/pwm/Kconfig
@@ -147,6 +147,13 @@ config PWM_CRC
 	  Generic PWM framework driver for Crystalcove (CRC) PMIC based PWM
 	  control.
 
+config PWM_CROS_EC
+	tristate "ChromeOS EC PWM driver"
+	depends on MFD_CROS_EC
+	help
+	  PWM driver for exposing a PWM attached to the ChromeOS Embedded
+	  Controller.
+
 config PWM_EP93XX
 	tristate "Cirrus Logic EP93xx PWM support"
 	depends on ARCH_EP93XX