removing unused kernel-maemo files
[kernel-bfs] / kernel-power-2.6.28 / debian / patches / trig-keyb.diff
1 --- kernel-power-2.6.28.orig/drivers/leds/Kconfig
2 +++ kernel-power-2.6.28/drivers/leds/Kconfig
3 @@ -251,4 +251,10 @@
4           This allows LEDs to be initialised in the ON state.
5           If unsure, say Y.
6  
7 +config LEDS_TRIGGER_KEYB
8 +       tristate "LED Trigger as Keyboard led"
9 +       depends on LEDS_TRIGGERS
10 +       help
11 +         This allows LEDs to be used as keyboard indication leds.
12 +
13  endif # NEW_LEDS
14 --- kernel-power-2.6.28.orig/drivers/leds/Makefile
15 +++ kernel-power-2.6.28/drivers/leds/Makefile
16 @@ -34,3 +34,4 @@
17  obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)   += ledtrig-heartbeat.o
18  obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT)   += ledtrig-backlight.o
19  obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON)  += ledtrig-default-on.o
20 +obj-$(CONFIG_LEDS_TRIGGER_KEYB)        += ledtrig-keyb.o
21 --- /dev/null
22 +++ kernel-power-2.6.28/drivers/leds/ledtrig-keyb.c
23 @@ -0,0 +1,70 @@
24 +/*
25 + * LED keyboard driver.
26 + *
27 + * Author: Matan Ziv-Av <matan@svgalib.org>
28 + *
29 + * This program is free software; you can redistribute it and/or modify
30 + * it under the terms of the GNU General Public License version 2 as
31 + * published by the Free Software Foundation.
32 + *
33 + */
34 +
35 +#include <linux/module.h>
36 +#include <linux/jiffies.h>
37 +#include <linux/kernel.h>
38 +#include <linux/init.h>
39 +#include <linux/list.h>
40 +#include <linux/spinlock.h>
41 +#include <linux/device.h>
42 +#include <linux/sysdev.h>
43 +#include <linux/timer.h>
44 +#include <linux/ctype.h>
45 +#include <linux/leds.h>
46 +#include "leds.h"
47 +
48 +static int keyb_led_active;
49 +static struct led_classdev *keyb_led_cdev;
50 +
51 +void keyb_led_set (int v) {
52 +       if(keyb_led_active) {
53 +               led_set_brightness(keyb_led_cdev, v ? LED_FULL:LED_OFF ) ;
54 +       }
55 +}
56 +
57 +EXPORT_SYMBOL_GPL(keyb_led_set);
58 +//static DEVICE_ATTR(delay_on, 0644, led_delay_on_show, led_delay_on_store);
59 +//static DEVICE_ATTR(delay_off, 0644, led_delay_off_show, led_delay_off_store);
60 +
61 +static void trig_activate(struct led_classdev *led_cdev)
62 +{
63 +       keyb_led_active=1;
64 +       keyb_led_cdev = led_cdev;
65 +}
66 +
67 +static void trig_deactivate(struct led_classdev *led_cdev)
68 +{
69 +       keyb_led_active=0;
70 +}
71 +
72 +static struct led_trigger keyb_led_trigger = {
73 +       .name     = "keyb",
74 +       .activate = trig_activate,
75 +       .deactivate = trig_deactivate,
76 +};
77 +
78 +static int __init keyb_trig_init(void)
79 +{
80 +       return led_trigger_register(&keyb_led_trigger);
81 +}
82 +
83 +static void __exit keyb_trig_exit(void)
84 +{
85 +       led_trigger_unregister(&keyb_led_trigger);
86 +}
87 +
88 +module_init(keyb_trig_init);
89 +module_exit(keyb_trig_exit);
90 +
91 +MODULE_AUTHOR("Matan Ziv-Av <matan@svgalib.org>");
92 +MODULE_DESCRIPTION("Keyboard LED trigger");
93 +MODULE_LICENSE("GPL");