After this patch:
7780c80 arm: mach-kirkwood: add led in sheevaplug-setup.c
On a eSATA SheevaPlug, neither the red nor the green led can be controlled,
since probing fails with:
[ 6.188278] leds-gpio: probe of leds-gpio failed with error -22
Signed-off-by: Sean Young <[email protected]>
diff --git a/arch/arm/mach-kirkwood/sheevaplug-setup.c b/arch/arm/mach-kirkwood/sheevaplug-setup.c
index 17de0bf..92db979 100644
--- a/arch/arm/mach-kirkwood/sheevaplug-setup.c
+++ b/arch/arm/mach-kirkwood/sheevaplug-setup.c
@@ -94,6 +94,7 @@ static unsigned int sheevaplug_mpp_config[] __initdata = {
static unsigned int sheeva_esata_mpp_config[] __initdata = {
MPP29_GPIO, /* USB Power Enable */
MPP44_GPIO, /* SD Write Protect */
+ MPP46_GPIO, /* LED Red */
MPP47_GPIO, /* SD Card Detect */
MPP49_GPIO, /* LED Green */
0
On 16/04/2011 23:08, Sean Young wrote:
> After this patch:
>
> 7780c80 arm: mach-kirkwood: add led in sheevaplug-setup.c
>
> On a eSATA SheevaPlug, neither the red nor the green led can be controlled,
> since probing fails with:
>
> [ 6.188278] leds-gpio: probe of leds-gpio failed with error -22
>
> Signed-off-by: Sean Young<[email protected]>
>
> diff --git a/arch/arm/mach-kirkwood/sheevaplug-setup.c b/arch/arm/mach-kirkwood/sheevaplug-setup.c
> index 17de0bf..92db979 100644
> --- a/arch/arm/mach-kirkwood/sheevaplug-setup.c
> +++ b/arch/arm/mach-kirkwood/sheevaplug-setup.c
> @@ -94,6 +94,7 @@ static unsigned int sheevaplug_mpp_config[] __initdata = {
> static unsigned int sheeva_esata_mpp_config[] __initdata = {
> MPP29_GPIO, /* USB Power Enable */
> MPP44_GPIO, /* SD Write Protect */
> + MPP46_GPIO, /* LED Red */
> MPP47_GPIO, /* SD Card Detect */
> MPP49_GPIO, /* LED Green */
> 0
>
I think my original patch had some changes to gpio_led sheevaplug_led_pins as
well. It definitely works on my standard sheeva plug. In fact I have three
controllable leds at 46, 48 & 49. GPIO 45 is also an led, but is also grounded
so is permanently on. This is something like the patch I am using with plugbox
diff --git a/arch/arm/mach-kirkwood/sheevaplug-setup.c b/arch/arm/mach-kirkwood/
index d2eec35..e14893b 100644
--- a/arch/arm/mach-kirkwood/sheevaplug-setup.c
+++ b/arch/arm/mach-kirkwood/sheevaplug-setup.c
@@ -58,7 +58,19 @@
static struct gpio_led sheevaplug_led_pins[] = {
{
- .name = "plug:green:health",
+ .name = "status:red:misc",
+ .default_trigger = "none",
+ .gpio = 46,
+ .active_low = 1,
+ },
+ {
+ .name = "status:green:health",
+ .default_trigger = "none",
+ .gpio = 48,
+ .active_low = 1,
+ },
+ {
+ .name = "status:blue:health",
.default_trigger = "default-on",
.gpio = 49,
.active_low = 1,
@@ -80,7 +92,9 @@
static unsigned int sheevaplug_mpp_config[] __initdata = {
MPP29_GPIO, /* USB Power Enable */
- MPP49_GPIO, /* LED */
+ MPP46_GPIO, /* LED Red Misc */
+ MPP48_GPIO, /* LED Green Health */
+ MPP49_GPIO, /* LED Blue Health */
0
};
--
Robin Becker
On Mon, Apr 18, 2011 at 10:25:36AM +0100, Robin Becker wrote:
> On 16/04/2011 23:08, Sean Young wrote:
> >After this patch:
> >
> > 7780c80 arm: mach-kirkwood: add led in sheevaplug-setup.c
> >
> >On a eSATA SheevaPlug, neither the red nor the green led can be controlled,
> >since probing fails with:
> >
> >[ 6.188278] leds-gpio: probe of leds-gpio failed with error -22
> >
> >Signed-off-by: Sean Young<[email protected]>
> >
> >diff --git a/arch/arm/mach-kirkwood/sheevaplug-setup.c b/arch/arm/mach-kirkwood/sheevaplug-setup.c
> >index 17de0bf..92db979 100644
> >--- a/arch/arm/mach-kirkwood/sheevaplug-setup.c
> >+++ b/arch/arm/mach-kirkwood/sheevaplug-setup.c
> >@@ -94,6 +94,7 @@ static unsigned int sheevaplug_mpp_config[] __initdata = {
> > static unsigned int sheeva_esata_mpp_config[] __initdata = {
> > MPP29_GPIO, /* USB Power Enable */
> > MPP44_GPIO, /* SD Write Protect */
> >+ MPP46_GPIO, /* LED Red */
> > MPP47_GPIO, /* SD Card Detect */
> > MPP49_GPIO, /* LED Green */
> > 0
> >
>
> I think my original patch had some changes to gpio_led
> sheevaplug_led_pins as well.
Yes, which causes breakage on my eSATA SheevaPlug without my patch above,
since the corresponding GPIO pins aren't enabled.
> It definitely works on my standard
> sheeva plug. In fact I have three controllable leds at 46, 48 & 49.
> GPIO 45 is also an led, but is also grounded so is permanently on.
> This is something like the patch I am using with plugbox
>
> diff --git a/arch/arm/mach-kirkwood/sheevaplug-setup.c b/arch/arm/mach-kirkwood/
> index d2eec35..e14893b 100644
> --- a/arch/arm/mach-kirkwood/sheevaplug-setup.c
> +++ b/arch/arm/mach-kirkwood/sheevaplug-setup.c
> @@ -58,7 +58,19 @@
>
> static struct gpio_led sheevaplug_led_pins[] = {
> {
> - .name = "plug:green:health",
> + .name = "status:red:misc",
> + .default_trigger = "none",
> + .gpio = 46,
> + .active_low = 1,
> + },
> + {
> + .name = "status:green:health",
> + .default_trigger = "none",
> + .gpio = 48,
> + .active_low = 1,
> + },
> + {
> + .name = "status:blue:health",
> .default_trigger = "default-on",
> .gpio = 49,
> .active_low = 1,
> @@ -80,7 +92,9 @@
>
> static unsigned int sheevaplug_mpp_config[] __initdata = {
> MPP29_GPIO, /* USB Power Enable */
> - MPP49_GPIO, /* LED */
> + MPP46_GPIO, /* LED Red Misc */
> + MPP48_GPIO, /* LED Green Health */
> + MPP49_GPIO, /* LED Blue Health */
> 0
> };
>
First of all, your mail client has replaced tabs with spaces, causing
the patch to be garbage.
Again you're not enabling the GPIO pins on the eSATA SheevaPlug for the
leds you're adding. For the eSATA SheevaPlug sheeva_esata_mpp_config[]
is used, not sheevaplug_mpp_config[], causing this patch and
2.6.39-rc? to break on the eSATA SheevaPlug.
Sean
On Mon, 18 Apr 2011, Sean Young wrote:
> On Mon, Apr 18, 2011 at 10:25:36AM +0100, Robin Becker wrote:
> > On 16/04/2011 23:08, Sean Young wrote:
> > >After this patch:
> > >
> > > 7780c80 arm: mach-kirkwood: add led in sheevaplug-setup.c
> > >
> > >On a eSATA SheevaPlug, neither the red nor the green led can be controlled,
> > >since probing fails with:
> > >
> > >[ 6.188278] leds-gpio: probe of leds-gpio failed with error -22
> > >
> > >Signed-off-by: Sean Young<[email protected]>
[...]
> > I think my original patch had some changes to gpio_led
> > sheevaplug_led_pins as well.
>
> Yes, which causes breakage on my eSATA SheevaPlug without my patch above,
> since the corresponding GPIO pins aren't enabled.
I didn't closely follow the matter, so could both of you resolve
possible issues and resent me the appropriate patch with Acked-by tags
please?
Nicolas