kernel: add kmod-leds-pca955x
[openwrt/staging/hauke.git] / package / kernel / linux / modules / leds.mk
index 5a5c76a6d91e5161dc142a9e52c6dbf74a536426..7b5609a84ca2e9761c56a902fc6cd140e7cb9ffe 100644 (file)
@@ -22,22 +22,36 @@ endef
 
 $(eval $(call KernelPackage,leds-gpio))
 
-LED_TRIGGER_DIR=$(LINUX_DIR)/drivers/leds$(if $(CONFIG_LINUX_3_8),,/trigger)
+LED_TRIGGER_DIR=$(LINUX_DIR)/drivers/leds/trigger
 
-define KernelPackage/ledtrig-heartbeat
+define KernelPackage/ledtrig-activity
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED Heartbeat Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_HEARTBEAT
-  FILES:=$(LED_TRIGGER_DIR)/ledtrig-heartbeat.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-heartbeat)
+  TITLE:=LED Activity Trigger
+  KCONFIG:=CONFIG_LEDS_TRIGGER_ACTIVITY
+  FILES:=$(LED_TRIGGER_DIR)/ledtrig-activity.ko
+  AUTOLOAD:=$(call AutoLoad,50,ledtrig-activity)
 endef
 
-define KernelPackage/ledtrig-gpio/description
- Kernel module that allows LEDs to blink like heart beat
+define KernelPackage/ledtrig-activity/description
+ Kernel module that allows LEDs to blink based on system load
+endef
+
+$(eval $(call KernelPackage,ledtrig-activity))
+
+define KernelPackage/ledtrig-audio
+  SUBMENU:=$(LEDS_MENU)
+  TITLE:=LED Audio Mute Trigger
+  KCONFIG:=CONFIG_LEDS_TRIGGER_AUDIO
+  FILES:=$(LED_TRIGGER_DIR)/ledtrig-audio.ko
+  AUTOLOAD:=$(call AutoLoad,50,ledtrig-audio)
 endef
 
-$(eval $(call KernelPackage,ledtrig-heartbeat))
+define KernelPackage/ledtrig-audio/description
+ Kernel module that allows LEDs to be controlled by audio drivers
+ to follow audio mute and mic-mute changes.
+endef
 
+$(eval $(call KernelPackage,ledtrig-audio))
 
 define KernelPackage/ledtrig-gpio
   SUBMENU:=$(LEDS_MENU)
@@ -54,146 +68,164 @@ endef
 $(eval $(call KernelPackage,ledtrig-gpio))
 
 
-define KernelPackage/ledtrig-morse
+define KernelPackage/ledtrig-transient
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED Morse Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
-  FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
+  TITLE:=LED Transient Trigger
+  KCONFIG:=CONFIG_LEDS_TRIGGER_TRANSIENT
+  FILES:=$(LED_TRIGGER_DIR)/ledtrig-transient.ko
+  AUTOLOAD:=$(call AutoLoad,50,ledtrig-transient,1)
 endef
 
-define KernelPackage/ledtrig-morse/description
- Kernel module to show morse coded messages on LEDs
+define KernelPackage/ledtrig-transient/description
+ Kernel module that allows LEDs one time activation of a transient state.
 endef
 
-$(eval $(call KernelPackage,ledtrig-morse))
+$(eval $(call KernelPackage,ledtrig-transient))
 
 
-define KernelPackage/ledtrig-netdev
+define KernelPackage/ledtrig-oneshot
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED NETDEV Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
-  FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
+  TITLE:=LED One-Shot Trigger
+  KCONFIG:=CONFIG_LEDS_TRIGGER_ONESHOT
+  FILES:=$(LED_TRIGGER_DIR)/ledtrig-oneshot.ko
+  AUTOLOAD:=$(call AutoLoad,50,ledtrig-oneshot)
 endef
 
-define KernelPackage/ledtrig-netdev/description
- Kernel module to drive LEDs based on network activity
+define KernelPackage/ledtrig-oneshot/description
+ Kernel module that allows LEDs to be triggered by sporadic events in
+ one-shot pulses
 endef
 
-$(eval $(call KernelPackage,ledtrig-netdev))
+$(eval $(call KernelPackage,ledtrig-oneshot))
 
 
-define KernelPackage/ledtrig-netfilter
+define KernelPackage/ledtrig-pattern
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED NetFilter Trigger
-  DEPENDS:=kmod-ipt-core
-  KCONFIG:=CONFIG_NETFILTER_XT_TARGET_LED
-  FILES:=$(LINUX_DIR)/net/netfilter/xt_LED.ko
-  AUTOLOAD:=$(call AutoLoad,50,xt_LED)
+  TITLE:=LED Pattern Trigger
+  KCONFIG:=CONFIG_LEDS_TRIGGER_PATTERN
+  FILES:=$(LED_TRIGGER_DIR)/ledtrig-pattern.ko
+  AUTOLOAD:=$(call AutoLoad,50,ledtrig-pattern)
 endef
 
-define KernelPackage/ledtrig-netfilter/description
- Kernel module to flash LED when a particular packets passing through your machine.
+define KernelPackage/ledtrig-pattern/description
+ This allows LEDs to be controlled by a software or hardware pattern
+ which is a series of tuples, of brightness and duration (ms).
+endef
+
+$(eval $(call KernelPackage,ledtrig-pattern))
+
+
+define KernelPackage/leds-apu
+  SUBMENU:=$(LEDS_MENU)
+  TITLE:=PC Engines APU1 LED support
+  DEPENDS:= @GPIO_SUPPORT @TARGET_x86
+  KCONFIG:=CONFIG_LEDS_APU
+  FILES:=$(LINUX_DIR)/drivers/leds/leds-apu.ko
+  AUTOLOAD:=$(call AutoLoad,60,leds-apu,1)
+endef
 
- For example to create an LED trigger for incoming SSH traffic:
-    iptables -A INPUT -p tcp --dport 22 -j LED --led-trigger-id ssh --led-delay 1000
- Then attach the new trigger to an LED on your system:
-    echo netfilter-ssh > /sys/class/leds/<ledname>/trigger
+define KernelPackage/leds-apu/description
+  Driver for the PC Engines APU1 LEDs.
 endef
 
-$(eval $(call KernelPackage,ledtrig-netfilter))
+$(eval $(call KernelPackage,leds-apu))
 
 
-define KernelPackage/ledtrig-usbdev
+define KernelPackage/leds-pca955x
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED USB device Trigger
-  DEPENDS:=@USB_SUPPORT kmod-usb-core
-  KCONFIG:=CONFIG_LEDS_TRIGGER_USBDEV
-  FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-usbdev.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-usbdev)
+  TITLE:=LED driver for PCA955x I2C chips
+  DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
+  KCONFIG:=CONFIG_LEDS_PCA955X \
+    CONFIG_LEDS_PCA955X_GPIO=y
+  FILES:=$(LINUX_DIR)/drivers/leds/leds-pca955x.ko
+  AUTOLOAD:=$(call AutoLoad,60,leds-pca955x,1)
 endef
 
-define KernelPackage/ledtrig-usbdev/description
- Kernel module to drive LEDs based on USB device presence/activity
+define KernelPackage/leds-pca955x/description
+ This option enables support for LEDs connected to PCA955x
+ LED driver chips accessed via the I2C bus.  Supported
+ devices include PCA9550, PCA9551, PCA9552, and PCA9553.
 endef
 
-$(eval $(call KernelPackage,ledtrig-usbdev))
+$(eval $(call KernelPackage,leds-pca955x))
 
 
-define KernelPackage/ledtrig-default-on
+define KernelPackage/leds-pca963x
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED Default ON Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_DEFAULT_ON
-  FILES:=$(LED_TRIGGER_DIR)/ledtrig-default-on.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-default-on,1)
+  TITLE:=PCA963x LED support
+  DEPENDS:=+kmod-i2c-core
+  KCONFIG:=CONFIG_LEDS_PCA963X
+  FILES:=$(LINUX_DIR)/drivers/leds/leds-pca963x.ko
+  AUTOLOAD:=$(call AutoLoad,60,leds-pca963x,1)
 endef
 
-define KernelPackage/ledtrig-default-on/description
- Kernel module that allows LEDs to be initialised in the ON state
+define KernelPackage/leds-pca963x/description
+ Driver for the NXP PCA963x I2C LED controllers.
 endef
 
-$(eval $(call KernelPackage,ledtrig-default-on))
+$(eval $(call KernelPackage,leds-pca963x))
 
 
-define KernelPackage/ledtrig-timer
+define KernelPackage/leds-pwm
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED Timer Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_TIMER
-  FILES:=$(LED_TRIGGER_DIR)/ledtrig-timer.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-timer,1)
+  TITLE:=PWM driven LED Support
+  KCONFIG:=CONFIG_LEDS_PWM
+  DEPENDS:= @PWM_SUPPORT
+  FILES:=$(LINUX_DIR)/drivers/leds/leds-pwm.ko
+  AUTOLOAD:=$(call AutoLoad,60,leds-pwm,1)
 endef
 
-define KernelPackage/ledtrig-timer/description
- Kernel module that allows LEDs to be controlled by a programmable timer
- via sysfs
+define KernelPackage/leds-pwm/description
+ This option enables support for pwm driven LEDs
 endef
 
-$(eval $(call KernelPackage,ledtrig-timer))
+$(eval $(call KernelPackage,leds-pwm))
 
 
-define KernelPackage/ledtrig-transient
+define KernelPackage/leds-tlc591xx
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED Transient Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_TRANSIENT
-  FILES:=$(LED_TRIGGER_DIR)/ledtrig-transient.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-transient,1)
+  TITLE:=LED driver for TLC59108 and TLC59116 controllers
+  DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c
+  KCONFIG:=CONFIG_LEDS_TLC591XX
+  FILES:=$(LINUX_DIR)/drivers/leds/leds-tlc591xx.ko
+  AUTOLOAD:=$(call AutoLoad,60,leds-tlc591xx,1)
 endef
 
-define KernelPackage/ledtrig-transient/description
- Kernel module that allows LEDs one time activation of a transient state.
+define KernelPackage/leds-tlc591xx/description
+ This option enables support for Texas Instruments TLC59108
+ and TLC59116 LED controllers.
 endef
 
-$(eval $(call KernelPackage,ledtrig-transient))
+$(eval $(call KernelPackage,leds-tlc591xx))
 
 
-define KernelPackage/ledtrig-oneshot
+define KernelPackage/leds-uleds
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=LED One-Shot Trigger
-  KCONFIG:=CONFIG_LEDS_TRIGGER_ONESHOT
-  FILES:=$(LED_TRIGGER_DIR)/ledtrig-oneshot.ko
-  AUTOLOAD:=$(call AutoLoad,50,ledtrig-oneshot)
+  TITLE:=Userspace LEDs
+  KCONFIG:=CONFIG_LEDS_USER
+  FILES:=$(LINUX_DIR)/drivers/leds/uleds.ko
+  AUTOLOAD:=$(call AutoLoad,60,uleds,1)
 endef
 
-define KernelPackage/ledtrig-oneshot/description
- Kernel module that allows LEDs to be triggered by sporadic events in
- one-shot pulses
+define KernelPackage/leds-uleds/description
+ This option enables support for userspace LEDs.
 endef
 
-$(eval $(call KernelPackage,ledtrig-oneshot))
+$(eval $(call KernelPackage,leds-uleds))
 
 
-define KernelPackage/leds-tlc59116
+define KernelPackage/input-leds
   SUBMENU:=$(LEDS_MENU)
-  TITLE:=TLC59116 LED support
-  DEPENDS:=@TARGET_mvebu +kmod-i2c-core +kmod-regmap
-  KCONFIG:=CONFIG_LEDS_TLC59116
-  FILES:=$(LINUX_DIR)/drivers/leds/leds-tlc59116.ko
-  AUTOLOAD:=$(call AutoLoad,60,leds-tlc59116,1)
+  TITLE:=Input device LED support
+  DEPENDS:=+kmod-input-core
+  KCONFIG:=CONFIG_INPUT_LEDS
+  FILES:=$(LINUX_DIR)/drivers/input/input-leds.ko
+  AUTOLOAD:=$(call AutoLoad,50,input-leds,1)
 endef
 
-define KernelPackage/leds-tlc59116/description
- Kernel module for LEDs on TLC59116
+define KernelPackage/input-leds/description
+ Provides support for LEDs on input devices- for example,
+ keyboard num/caps/scroll lock.
 endef
 
-$(eval $(call KernelPackage,leds-tlc59116))
+$(eval $(call KernelPackage,input-leds))