[ARM] 4911/1: [AT91] LEDs on SAM9260-EK and SAM9261-EK boards
authorAndrew Victor <linux@maxim.org.za>
Wed, 2 Apr 2008 21:20:45 +0000 (22:20 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 4 Apr 2008 08:52:28 +0000 (09:52 +0100)
Add support for the GPIO-driven LEDs (using NEW_LEDS) on the Atmel
SAM9260-EK and SAM9261-EK boards.

Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-at91/board-sam9260ek.c
arch/arm/mach-at91/board-sam9261ek.c
arch/arm/mach-at91/board-sam9263ek.c

index 40c3e95690a9795cbb515eac21f4b310dc1fcfbf..4d1d9c777084dfb3f695bebcffc1b1ab8b11d2ae 100644 (file)
@@ -204,6 +204,24 @@ static struct at91_mmc_data __initdata ek_mmc_data = {
 //     .vcc_pin        = ... not connected
 };
 
+
+/*
+ * LEDs
+ */
+static struct gpio_led ek_leds[] = {
+       {       /* "bottom" led, green, userled1 to be defined */
+               .name                   = "ds5",
+               .gpio                   = AT91_PIN_PA6,
+               .active_low             = 1,
+               .default_trigger        = "none",
+       },
+       {       /* "power" led, yellow */
+               .name                   = "ds1",
+               .gpio                   = AT91_PIN_PA9,
+               .default_trigger        = "heartbeat",
+       }
+};
+
 static void __init ek_board_init(void)
 {
        /* Serial */
@@ -225,6 +243,8 @@ static void __init ek_board_init(void)
        /* SSC (to AT73C213) */
        at73c213_set_clk(&at73c213_data);
        at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX);
+       /* LEDs */
+       at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds));
 }
 
 MACHINE_START(AT91SAM9260EK, "Atmel AT91SAM9260-EK")
index ce512d74e6e988cef5ed09615ac0b99478d4c221..08382c0df2211401c1ccb04887a45a938901f4de 100644 (file)
@@ -487,6 +487,29 @@ static void __init ek_add_device_buttons(void)
 static void __init ek_add_device_buttons(void) {}
 #endif
 
+/*
+ * LEDs
+ */
+static struct gpio_led ek_leds[] = {
+       {       /* "bottom" led, green, userled1 to be defined */
+               .name                   = "ds7",
+               .gpio                   = AT91_PIN_PA14,
+               .active_low             = 1,
+               .default_trigger        = "none",
+       },
+       {       /* "top" led, green, userled2 to be defined */
+               .name                   = "ds8",
+               .gpio                   = AT91_PIN_PA13,
+               .active_low             = 1,
+               .default_trigger        = "none",
+       },
+       {       /* "power" led, yellow */
+               .name                   = "ds1",
+               .gpio                   = AT91_PIN_PA23,
+               .default_trigger        = "heartbeat",
+       }
+};
+
 static void __init ek_board_init(void)
 {
        /* Serial */
@@ -519,6 +542,8 @@ static void __init ek_board_init(void)
        at91_add_device_lcdc(&ek_lcdc_data);
        /* Push Buttons */
        ek_add_device_buttons();
+       /* LEDs */
+       at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds));
 }
 
 MACHINE_START(AT91SAM9261EK, "Atmel AT91SAM9261-EK")
index 86a7fb17096ce21de7b0a5f4625af48fa08dd0f4..b4cd5d0ed597ed57bbd90460b1e8b8b7797f3d2f 100644 (file)
@@ -336,7 +336,7 @@ static struct gpio_led ek_leds[] = {
                .name                   = "ds3",
                .gpio                   = AT91_PIN_PB7,
                .default_trigger        = "heartbeat",
-       },
+       }
 };