Merge tag 'at91-for-next-soc' of git://github.com/at91linux/linux-at91 into at91/mci
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-at91 / board-eco920.c
index 40e957d1a612fc09d4efde12d19a1739af07898a..d93658a2b12828a14e70cbdacd418498f13c7f0f 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,