blob: d16439ce5da7da8364810ae4fbdbc2cb27655b6a [file] [log] [blame]
Florian Fainelli2fea6f32007-02-12 23:16:27 +00001/*
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
14static 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
22static struct led_classdev cobalt_led = {
23 .name = "cobalt-front-led",
24 .brightness_set = cobalt_led_set,
25 .default_trigger = "ide-disk",
26};
27
28static int __init cobalt_led_init(void)
29{
30 return led_classdev_register(NULL, &cobalt_led);
31}
32
33static void __exit cobalt_led_exit(void)
34{
35 led_classdev_unregister(&cobalt_led);
36}
37
38module_init(cobalt_led_init);
39module_exit(cobalt_led_exit);
40
41MODULE_LICENSE("GPL");
42MODULE_DESCRIPTION("Front LED support for Cobalt Server");
43MODULE_AUTHOR("Florian Fainelli <florian@openwrt.org>");