Skip to content

Commit

Permalink
Add keyboard blink driver
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Andi Kleen authored and Linus Torvalds committed May 8, 2007
1 parent 6b96862 commit f038f9a
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 0 deletions.
9 changes: 9 additions & 0 deletions drivers/misc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -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
1 change: 1 addition & 0 deletions drivers/misc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
27 changes: 27 additions & 0 deletions drivers/misc/blink.c
Original file line number Diff line number Diff line change
@@ -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);

0 comments on commit f038f9a

Please sign in to comment.