]> Pileus Git - ~andy/linux/blobdiff - arch/arm/mach-at91/board-eco920.c
Merge branch 'for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney...
[~andy/linux] / arch / arm / mach-at91 / board-eco920.c
index 558546cf63f492bf46d5b290b389e019f428244a..d2d4580df48fd6b108d34c80b2db6b2a42990ebb 100644 (file)
@@ -25,6 +25,7 @@
 #include <asm/mach/map.h>
 
 #include <mach/board.h>
+#include <mach/at91_aic.h>
 #include <mach/at91rm9200_mc.h>
 #include <mach/at91_ramc.h>
 #include <mach/cpu.h>
@@ -92,10 +93,26 @@ static struct spi_board_info eco920_spi_devices[] = {
        },
 };
 
+/*
+ * LEDs
+ */
+static struct gpio_led eco920_leds[] = {
+       {       /* D1 */
+               .name                   = "led1",
+               .gpio                   = AT91_PIN_PB0,
+               .active_low             = 1,
+               .default_trigger        = "heartbeat",
+       },
+       {       /* D2 */
+               .name                   = "led2",
+               .gpio                   = AT91_PIN_PB1,
+               .active_low             = 1,
+               .default_trigger        = "timer",
+       }
+};
+
 static void __init eco920_board_init(void)
 {
-       /* Setup the LEDs */
-       at91_init_leds(AT91_PIN_PB0, AT91_PIN_PB1);
        /* DBGU on ttyS0. (Rx & Tx only */
        at91_register_uart(0, 0, 0);
        at91_add_device_serial();
@@ -126,12 +143,15 @@ static void __init eco920_board_init(void)
        );
 
        at91_add_device_spi(eco920_spi_devices, ARRAY_SIZE(eco920_spi_devices));
+       /* LEDs */
+       at91_gpio_leds(eco920_leds, ARRAY_SIZE(eco920_leds));
 }
 
 MACHINE_START(ECO920, "eco920")
        /* Maintainer: Sascha Hauer */
        .timer          = &at91rm9200_timer,
        .map_io         = at91_map_io,
+       .handle_irq     = at91_aic_handle_irq,
        .init_early     = eco920_init_early,
        .init_irq       = at91_init_irq_default,
        .init_machine   = eco920_board_init,