mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-27 13:05:03 +08:00
047da762b9
Add support for LEDs connected to the Intel Cherry Trail Whiskey Cove PMIC. Charger and general-purpose LEDs are supported. Hardware blinking is implemented, breathing is not. This driver was tested with Lenovo Yoga Book notebook. Changes by Hans de Goede (in response to review of v2): - Since the PMIC is connected to the battery any changes we make to the LED settings are permanent, even surviving reboot / poweroff. Save LED1 register settings on probe() and if auto-/hw-control was enabled on probe() restore the settings on remove() and shutdown(). - Delay switching LED1 to software control mode to first brightness write. - Use dynamically allocated drvdata instead of a global drvdata variable. - Ensure the LED is on when activating blinking. - Fix CHT_WC_LED_EFF_BREATHING val ((3 << 1) rather then BIT(3)). Link: https://lore.kernel.org/r/20190212205901.13037-2-jekhor@gmail.com Signed-off-by: Yauhen Kharuzhy <jekhor@gmail.com> Co-developed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20230430195952.862527-2-hdegoede@redhat.com Signed-off-by: Lee Jones <lee@kernel.org>
113 lines
4.4 KiB
Makefile
113 lines
4.4 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
# LED Core
|
|
obj-$(CONFIG_NEW_LEDS) += led-core.o
|
|
obj-$(CONFIG_LEDS_CLASS) += led-class.o
|
|
obj-$(CONFIG_LEDS_CLASS_FLASH) += led-class-flash.o
|
|
obj-$(CONFIG_LEDS_CLASS_MULTICOLOR) += led-class-multicolor.o
|
|
obj-$(CONFIG_LEDS_TRIGGERS) += led-triggers.o
|
|
|
|
# LED Platform Drivers (keep this sorted, M-| sort)
|
|
obj-$(CONFIG_LEDS_88PM860X) += leds-88pm860x.o
|
|
obj-$(CONFIG_LEDS_ACER_A500) += leds-acer-a500.o
|
|
obj-$(CONFIG_LEDS_ADP5520) += leds-adp5520.o
|
|
obj-$(CONFIG_LEDS_AN30259A) += leds-an30259a.o
|
|
obj-$(CONFIG_LEDS_APU) += leds-apu.o
|
|
obj-$(CONFIG_LEDS_ARIEL) += leds-ariel.o
|
|
obj-$(CONFIG_LEDS_AW2013) += leds-aw2013.o
|
|
obj-$(CONFIG_LEDS_BCM6328) += leds-bcm6328.o
|
|
obj-$(CONFIG_LEDS_BCM6358) += leds-bcm6358.o
|
|
obj-$(CONFIG_LEDS_BD2606MVV) += leds-bd2606mvv.o
|
|
obj-$(CONFIG_LEDS_BD2802) += leds-bd2802.o
|
|
obj-$(CONFIG_LEDS_BLINKM) += leds-blinkm.o
|
|
obj-$(CONFIG_LEDS_CHT_WCOVE) += leds-cht-wcove.o
|
|
obj-$(CONFIG_LEDS_CLEVO_MAIL) += leds-clevo-mail.o
|
|
obj-$(CONFIG_LEDS_COBALT_QUBE) += leds-cobalt-qube.o
|
|
obj-$(CONFIG_LEDS_COBALT_RAQ) += leds-cobalt-raq.o
|
|
obj-$(CONFIG_LEDS_CPCAP) += leds-cpcap.o
|
|
obj-$(CONFIG_LEDS_DA903X) += leds-da903x.o
|
|
obj-$(CONFIG_LEDS_DA9052) += leds-da9052.o
|
|
obj-$(CONFIG_LEDS_GPIO) += leds-gpio.o
|
|
obj-$(CONFIG_LEDS_GPIO_REGISTER) += leds-gpio-register.o
|
|
obj-$(CONFIG_LEDS_HP6XX) += leds-hp6xx.o
|
|
obj-$(CONFIG_LEDS_INTEL_SS4200) += leds-ss4200.o
|
|
obj-$(CONFIG_LEDS_IP30) += leds-ip30.o
|
|
obj-$(CONFIG_LEDS_IPAQ_MICRO) += leds-ipaq-micro.o
|
|
obj-$(CONFIG_LEDS_IS31FL319X) += leds-is31fl319x.o
|
|
obj-$(CONFIG_LEDS_IS31FL32XX) += leds-is31fl32xx.o
|
|
obj-$(CONFIG_LEDS_LM3530) += leds-lm3530.o
|
|
obj-$(CONFIG_LEDS_LM3532) += leds-lm3532.o
|
|
obj-$(CONFIG_LEDS_LM3533) += leds-lm3533.o
|
|
obj-$(CONFIG_LEDS_LM355x) += leds-lm355x.o
|
|
obj-$(CONFIG_LEDS_LM36274) += leds-lm36274.o
|
|
obj-$(CONFIG_LEDS_LM3642) += leds-lm3642.o
|
|
obj-$(CONFIG_LEDS_LM3692X) += leds-lm3692x.o
|
|
obj-$(CONFIG_LEDS_LM3697) += leds-lm3697.o
|
|
obj-$(CONFIG_LEDS_LOCOMO) += leds-locomo.o
|
|
obj-$(CONFIG_LEDS_LP3944) += leds-lp3944.o
|
|
obj-$(CONFIG_LEDS_LP3952) += leds-lp3952.o
|
|
obj-$(CONFIG_LEDS_LP50XX) += leds-lp50xx.o
|
|
obj-$(CONFIG_LEDS_LP5521) += leds-lp5521.o
|
|
obj-$(CONFIG_LEDS_LP5523) += leds-lp5523.o
|
|
obj-$(CONFIG_LEDS_LP5562) += leds-lp5562.o
|
|
obj-$(CONFIG_LEDS_LP55XX_COMMON) += leds-lp55xx-common.o
|
|
obj-$(CONFIG_LEDS_LP8501) += leds-lp8501.o
|
|
obj-$(CONFIG_LEDS_LP8788) += leds-lp8788.o
|
|
obj-$(CONFIG_LEDS_LP8860) += leds-lp8860.o
|
|
obj-$(CONFIG_LEDS_LT3593) += leds-lt3593.o
|
|
obj-$(CONFIG_LEDS_MAX77650) += leds-max77650.o
|
|
obj-$(CONFIG_LEDS_MAX8997) += leds-max8997.o
|
|
obj-$(CONFIG_LEDS_MC13783) += leds-mc13783.o
|
|
obj-$(CONFIG_LEDS_MENF21BMC) += leds-menf21bmc.o
|
|
obj-$(CONFIG_LEDS_MIKROTIK_RB532) += leds-rb532.o
|
|
obj-$(CONFIG_LEDS_MLXCPLD) += leds-mlxcpld.o
|
|
obj-$(CONFIG_LEDS_MLXREG) += leds-mlxreg.o
|
|
obj-$(CONFIG_LEDS_MT6323) += leds-mt6323.o
|
|
obj-$(CONFIG_LEDS_NET48XX) += leds-net48xx.o
|
|
obj-$(CONFIG_LEDS_NETXBIG) += leds-netxbig.o
|
|
obj-$(CONFIG_LEDS_NIC78BX) += leds-nic78bx.o
|
|
obj-$(CONFIG_LEDS_NS2) += leds-ns2.o
|
|
obj-$(CONFIG_LEDS_OT200) += leds-ot200.o
|
|
obj-$(CONFIG_LEDS_PCA9532) += leds-pca9532.o
|
|
obj-$(CONFIG_LEDS_PCA955X) += leds-pca955x.o
|
|
obj-$(CONFIG_LEDS_PCA963X) += leds-pca963x.o
|
|
obj-$(CONFIG_LEDS_PM8058) += leds-pm8058.o
|
|
obj-$(CONFIG_LEDS_POWERNV) += leds-powernv.o
|
|
obj-$(CONFIG_LEDS_PWM) += leds-pwm.o
|
|
obj-$(CONFIG_LEDS_REGULATOR) += leds-regulator.o
|
|
obj-$(CONFIG_LEDS_SC27XX_BLTC) += leds-sc27xx-bltc.o
|
|
obj-$(CONFIG_LEDS_SUNFIRE) += leds-sunfire.o
|
|
obj-$(CONFIG_LEDS_SYSCON) += leds-syscon.o
|
|
obj-$(CONFIG_LEDS_TCA6507) += leds-tca6507.o
|
|
obj-$(CONFIG_LEDS_TI_LMU_COMMON) += leds-ti-lmu-common.o
|
|
obj-$(CONFIG_LEDS_TLC591XX) += leds-tlc591xx.o
|
|
obj-$(CONFIG_LEDS_TPS6105X) += leds-tps6105x.o
|
|
obj-$(CONFIG_LEDS_TURRIS_OMNIA) += leds-turris-omnia.o
|
|
obj-$(CONFIG_LEDS_WM831X_STATUS) += leds-wm831x-status.o
|
|
obj-$(CONFIG_LEDS_WM8350) += leds-wm8350.o
|
|
obj-$(CONFIG_LEDS_WRAP) += leds-wrap.o
|
|
|
|
# LED SPI Drivers
|
|
obj-$(CONFIG_LEDS_CR0014114) += leds-cr0014114.o
|
|
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
|
|
obj-$(CONFIG_LEDS_EL15203000) += leds-el15203000.o
|
|
obj-$(CONFIG_LEDS_SPI_BYTE) += leds-spi-byte.o
|
|
|
|
# LED Userspace Drivers
|
|
obj-$(CONFIG_LEDS_USER) += uleds.o
|
|
|
|
# Flash and Torch LED Drivers
|
|
obj-$(CONFIG_LEDS_CLASS_FLASH) += flash/
|
|
|
|
# RGB LED Drivers
|
|
obj-$(CONFIG_LEDS_CLASS_MULTICOLOR) += rgb/
|
|
|
|
# LED Triggers
|
|
obj-$(CONFIG_LEDS_TRIGGERS) += trigger/
|
|
|
|
# LED Blink
|
|
obj-y += blink/
|
|
|
|
# Simple LED drivers
|
|
obj-y += simple/
|