| Florian Fainelli | 2fea6f3 | 2007-02-12 23:16:27 +0000 | [diff] [blame] | 1 | /* | 
 | 2 |  * Copyright 2006 - Florian Fainelli <florian@openwrt.org> | 
 | 3 |  * | 
 | 4 |  * Control the Cobalt Qube/RaQ front LED | 
 | 5 |  */ | 
 | 6 |  | 
 | 7 | #include <linux/module.h> | 
 | 8 | #include <linux/types.h> | 
 | 9 | #include <linux/kernel.h> | 
 | 10 | #include <linux/device.h> | 
 | 11 | #include <linux/leds.h> | 
 | 12 | #include <asm/mach-cobalt/cobalt.h> | 
 | 13 |  | 
 | 14 | static void cobalt_led_set(struct led_classdev *led_cdev, enum led_brightness brightness) | 
 | 15 | { | 
 | 16 | 	if (brightness) | 
 | 17 | 		COBALT_LED_PORT = COBALT_LED_BAR_LEFT | COBALT_LED_BAR_RIGHT; | 
 | 18 | 	else | 
 | 19 | 		COBALT_LED_PORT = 0; | 
 | 20 | } | 
 | 21 |  | 
 | 22 | static struct led_classdev cobalt_led = { | 
 | 23 |        .name = "cobalt-front-led", | 
 | 24 |        .brightness_set = cobalt_led_set, | 
 | 25 |        .default_trigger = "ide-disk", | 
 | 26 | }; | 
 | 27 |  | 
 | 28 | static int __init cobalt_led_init(void) | 
 | 29 | { | 
 | 30 | 	return led_classdev_register(NULL, &cobalt_led); | 
 | 31 | } | 
 | 32 |  | 
 | 33 | static void __exit cobalt_led_exit(void) | 
 | 34 | { | 
 | 35 | 	led_classdev_unregister(&cobalt_led); | 
 | 36 | } | 
 | 37 |  | 
 | 38 | module_init(cobalt_led_init); | 
 | 39 | module_exit(cobalt_led_exit); | 
 | 40 |  | 
 | 41 | MODULE_LICENSE("GPL"); | 
 | 42 | MODULE_DESCRIPTION("Front LED support for Cobalt Server"); | 
 | 43 | MODULE_AUTHOR("Florian Fainelli <florian@openwrt.org>"); |