forked from luck/tmp_suning_uos_patched
Add keyboard blink driver
Simple driver that blinks the keyboard LEDs when loaded. Useful for checking that the kernel is still alive or for crashdumping Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
6b96862113
commit
f038f9a361
|
@ -178,4 +178,13 @@ config THINKPAD_ACPI_BAY
|
|||
|
||||
If you are not sure, say Y here.
|
||||
|
||||
config BLINK
|
||||
tristate "Keyboard blink driver"
|
||||
help
|
||||
Driver that when loaded will blink the keyboard LEDs continuously.
|
||||
This is useful for debugging and for kernels that cannot necessarily
|
||||
output something to the screen like kexec kernels to give the user
|
||||
a visual indication that the kernel is doing something.
|
||||
|
||||
|
||||
endmenu
|
||||
|
|
|
@ -7,6 +7,7 @@ obj-$(CONFIG_IBM_ASM) += ibmasm/
|
|||
obj-$(CONFIG_HDPU_FEATURES) += hdpuftrs/
|
||||
obj-$(CONFIG_MSI_LAPTOP) += msi-laptop.o
|
||||
obj-$(CONFIG_ASUS_LAPTOP) += asus-laptop.o
|
||||
obj-$(CONFIG_BLINK) += blink.o
|
||||
obj-$(CONFIG_LKDTM) += lkdtm.o
|
||||
obj-$(CONFIG_TIFM_CORE) += tifm_core.o
|
||||
obj-$(CONFIG_TIFM_7XX1) += tifm_7xx1.o
|
||||
|
|
27
drivers/misc/blink.c
Normal file
27
drivers/misc/blink.c
Normal file
|
@ -0,0 +1,27 @@
|
|||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/timer.h>
|
||||
#include <linux/jiffies.h>
|
||||
|
||||
static void do_blink(unsigned long data);
|
||||
|
||||
static DEFINE_TIMER(blink_timer, do_blink, 0 ,0);
|
||||
|
||||
static void do_blink(unsigned long data)
|
||||
{
|
||||
static long count;
|
||||
if (panic_blink)
|
||||
panic_blink(count++);
|
||||
blink_timer.expires = jiffies + msecs_to_jiffies(1);
|
||||
add_timer(&blink_timer);
|
||||
}
|
||||
|
||||
static int blink_init(void)
|
||||
{
|
||||
printk(KERN_INFO "Enabling keyboard blinking\n");
|
||||
do_blink(0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
module_init(blink_init);
|
||||
|
Loading…
Reference in New Issue
Block a user