mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 19:29:37 +00:00
![Brian Norris](/assets/img/avatar_default.png)
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>
47 lines
1.9 KiB
Makefile
47 lines
1.9 KiB
Makefile
obj-$(CONFIG_PWM) += core.o
|
|
obj-$(CONFIG_PWM_SYSFS) += sysfs.o
|
|
obj-$(CONFIG_PWM_AB8500) += pwm-ab8500.o
|
|
obj-$(CONFIG_PWM_ATMEL) += pwm-atmel.o
|
|
obj-$(CONFIG_PWM_ATMEL_HLCDC_PWM) += pwm-atmel-hlcdc.o
|
|
obj-$(CONFIG_PWM_ATMEL_TCB) += pwm-atmel-tcb.o
|
|
obj-$(CONFIG_PWM_BCM_IPROC) += pwm-bcm-iproc.o
|
|
obj-$(CONFIG_PWM_BCM_KONA) += pwm-bcm-kona.o
|
|
obj-$(CONFIG_PWM_BCM2835) += pwm-bcm2835.o
|
|
obj-$(CONFIG_PWM_BERLIN) += pwm-berlin.o
|
|
obj-$(CONFIG_PWM_BFIN) += pwm-bfin.o
|
|
obj-$(CONFIG_PWM_BRCMSTB) += pwm-brcmstb.o
|
|
obj-$(CONFIG_PWM_CLPS711X) += pwm-clps711x.o
|
|
obj-$(CONFIG_PWM_CRC) += pwm-crc.o
|
|
obj-$(CONFIG_PWM_CROS_EC) += pwm-cros-ec.o
|
|
obj-$(CONFIG_PWM_EP93XX) += pwm-ep93xx.o
|
|
obj-$(CONFIG_PWM_FSL_FTM) += pwm-fsl-ftm.o
|
|
obj-$(CONFIG_PWM_IMG) += pwm-img.o
|
|
obj-$(CONFIG_PWM_IMX) += pwm-imx.o
|
|
obj-$(CONFIG_PWM_JZ4740) += pwm-jz4740.o
|
|
obj-$(CONFIG_PWM_LP3943) += pwm-lp3943.o
|
|
obj-$(CONFIG_PWM_LPC18XX_SCT) += pwm-lpc18xx-sct.o
|
|
obj-$(CONFIG_PWM_LPC32XX) += pwm-lpc32xx.o
|
|
obj-$(CONFIG_PWM_LPSS) += pwm-lpss.o
|
|
obj-$(CONFIG_PWM_LPSS_PCI) += pwm-lpss-pci.o
|
|
obj-$(CONFIG_PWM_LPSS_PLATFORM) += pwm-lpss-platform.o
|
|
obj-$(CONFIG_PWM_MTK_DISP) += pwm-mtk-disp.o
|
|
obj-$(CONFIG_PWM_MXS) += pwm-mxs.o
|
|
obj-$(CONFIG_PWM_OMAP_DMTIMER) += pwm-omap-dmtimer.o
|
|
obj-$(CONFIG_PWM_PCA9685) += pwm-pca9685.o
|
|
obj-$(CONFIG_PWM_PUV3) += pwm-puv3.o
|
|
obj-$(CONFIG_PWM_PXA) += pwm-pxa.o
|
|
obj-$(CONFIG_PWM_RCAR) += pwm-rcar.o
|
|
obj-$(CONFIG_PWM_RENESAS_TPU) += pwm-renesas-tpu.o
|
|
obj-$(CONFIG_PWM_ROCKCHIP) += pwm-rockchip.o
|
|
obj-$(CONFIG_PWM_SAMSUNG) += pwm-samsung.o
|
|
obj-$(CONFIG_PWM_SPEAR) += pwm-spear.o
|
|
obj-$(CONFIG_PWM_STI) += pwm-sti.o
|
|
obj-$(CONFIG_PWM_STMPE) += pwm-stmpe.o
|
|
obj-$(CONFIG_PWM_SUN4I) += pwm-sun4i.o
|
|
obj-$(CONFIG_PWM_TEGRA) += pwm-tegra.o
|
|
obj-$(CONFIG_PWM_TIECAP) += pwm-tiecap.o
|
|
obj-$(CONFIG_PWM_TIEHRPWM) += pwm-tiehrpwm.o
|
|
obj-$(CONFIG_PWM_TIPWMSS) += pwm-tipwmss.o
|
|
obj-$(CONFIG_PWM_TWL) += pwm-twl.o
|
|
obj-$(CONFIG_PWM_TWL_LED) += pwm-twl-led.o
|
|
obj-$(CONFIG_PWM_VT8500) += pwm-vt8500.o
|