Hi Yoichi, Answering back to myself, since I fixed the stuff using the COBALT_LED_PORT, here the corrected patch. Can you queue this patch for a commit if it sounds acceptable to you ? Thank you very much in advance. diff -urN linux-2.6.19.1/drivers/leds/leds-cobalt.c linux-2.6.19.1.led/drivers/leds/leds-cobalt.c --- linux-2.6.19.1/drivers/leds/leds-cobalt.c 1970-01-01 01:00:00.000000000 +0100 +++ linux-2.6.19.1.led/drivers/leds/leds-cobalt.c 2007-01-16 00:49:20.000000000 +0100 @@ -0,0 +1,55 @@ +#include <linux/module.h> +#include <linux/types.h> +#include <linux/kernel.h> +#include <linux/device.h> +#include <linux/leds.h> +#include <asm/mach-cobalt/cobalt.h> + +/* Copyright 2006 - Florian Fainelli <florian@xxxxxxxxxxx> + * + * This driver let you control the Cobalt Qube/RaQ front LED + * + * 255 (max brightness) -> turn the led on + * 0 -> turn the led off + * + * If you want the LED to be blinking on IDE activity, select the IDE trigger + */ + +void cobalt_led_set(struct led_classdev *led_cdev, enum led_brightness brightness) +{ + switch (brightness) { + case LED_OFF: + COBALT_LED_PORT = 0; + break; + case LED_FULL: + COBALT_LED_PORT = COBALT_LED_BAR_LEFT | COBALT_LED_BAR_RIGHT; + break; + default: + return; + } +} + +static struct led_classdev cobalt_led = { + .name = "cobalt-front-led", + .brightness_set = cobalt_led_set, +#ifdef CONFIG_LEDS_TRIGGER_IDE_DISK + .default_trigger = "ide-disk", +#endif +}; + +static int __init cobalt_led_init(void) +{ + return led_classdev_register(NULL, &cobalt_led); +} + +static void __exit cobalt_led_exit(void) +{ + led_classdev_unregister(&cobalt_led); +} + +module_init(cobalt_led_init); +module_exit(cobalt_led_exit); + +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Front LED support for Cobalt Server"); +MODULE_AUTHOR("Florian Fainelli <florian@xxxxxxxxxxx>"); Le mardi 16 janvier 2007 00:33, Florian Fainelli a écrit : > Hi Yoichi, > > I first used the COBALT_LED_PORT address but it did not work for a reason I > ignore. If I use the COBALT_LED_BASE as defined, which is taken from the > CoLo code, it works fine. > > Do know you what could explain this difference ? Can you test it on your > boxes ? > > Thank you very much in advance for your answer. > > Le lundi 15 janvier 2007 23:42, Yoichi Yuasa a écrit : > > Hi, > > > > On Mon, 15 Jan 2007 19:36:52 +0100 > > > > Florian Fainelli <florian.fainelli@xxxxxxxxxxx> wrote: > > > Hi all, > > > > > > This patch adds support for controlling the front LED on Cobalt Server. > > > It has been tested on Qube 2 with either no default trigger, or the > > > IDE-activity trigger. Both work fine. Please comment and test ! > > > > > > Thanks > > > > > > Florian > > > > > > Signed-off-by: Florian Fainelli <florian.fainelli@xxxxxxxxxxx> > > > > > > diff -urN linux-2.6.19.1/include/asm-mips/mach-cobalt/cobalt.h > > > linux-2.6.19.1.led/include/asm-mips/mach-cobalt/cobalt.h > > > --- linux-2.6.19.1/include/asm-mips/mach-cobalt/cobalt.h > > > 2006-12-11 20:32:53.000000000 +0100 > > > +++ linux-2.6.19.1.led/include/asm-mips/mach-cobalt/cobalt.h > > > 2007-01-15 19:29:07.000000000 +0100 > > > @@ -97,6 +97,7 @@ > > > (PCI_FUNC (devfn) << 8) | (where)), > > > GT_PCI0_CFGADDR_OFS) > > > > > > #define COBALT_LED_PORT (*(volatile unsigned char *) > > > CKSEG1ADDR(0x1c000000)) > > > +#define COBALT_LED_BASE 0xbc000000 > > > > You don't need COBALT_LED_BASE. > > Because COBALT_LED_PORT is already defined. > > > > Yoichi -- Cordialement, Florian Fainelli --------------------------------------------- 5, rue Charles Fourier Chambre 1202 91011 Evry http://www.alphacore.net (+33) 01 60 76 64 21 (+33) 06 09 02 64 95 --------------------------------------------- Association MiNET http://www.minet.net --------------------------------------------- Institut National des Télécommunication http://www.int-evry.fr/telecomint ---------------------------------------------
Attachment:
pgpRBi5wZtjMg.pgp
Description: PGP signature