atheros: v3.18: switch to IRQ domain
[openwrt/staging/florian.git] / target / linux / atheros / patches-3.18 / 103-ar2315_gpio.patch
index 32022e6aebf4845c29aab98873cf3a58071af053..4b8117151d37f7df21f92bd3cf91e3e706762db5 100644 (file)
@@ -8,7 +8,7 @@
        default y
 --- a/arch/mips/ath25/ar2315.c
 +++ b/arch/mips/ath25/ar2315.c
-@@ -225,6 +225,34 @@ static struct platform_device ar2315_wdt
+@@ -236,6 +236,32 @@ static struct platform_device ar2315_wdt
        .num_resources = ARRAY_SIZE(ar2315_wdt_res)
  };
  
@@ -22,8 +22,6 @@
 +      {
 +              .name = "ar2315-gpio",
 +              .flags = IORESOURCE_IRQ,
-+              .start = AR2315_MISC_IRQ_GPIO,
-+              .end = AR2315_MISC_IRQ_GPIO,
 +      },
 +      {
 +              .name = "ar2315-gpio-irq-base",
  #ifdef CONFIG_LEDS_GPIO
  static struct gpio_led ar2315_leds[6];
  static struct gpio_led_platform_data ar2315_led_data = {
-@@ -275,6 +303,7 @@ void __init ar2315_init_devices(void)
+@@ -286,6 +312,11 @@ void __init ar2315_init_devices(void)
        ath25_find_config(AR2315_SPI_READ_BASE, AR2315_SPI_READ_SIZE);
        ar2315_eth_data.macaddr = ath25_board.config->enet0_mac;
  
++      ar2315_gpio_res[1].start = irq_create_mapping(ar2315_misc_irq_domain,
++                                                    AR2315_MISC_IRQ_GPIO);
++      ar2315_gpio_res[1].end = ar2315_gpio_res[1].start;
 +      platform_device_register(&ar2315_gpio);
++
        ar2315_init_gpio_leds();
-       platform_device_register(&ar2315_wdt);
-       platform_device_register(&ar2315_spiflash);
+       ar2315_wdt_res[1].start = irq_create_mapping(ar2315_misc_irq_domain,
 --- a/drivers/gpio/Kconfig
 +++ b/drivers/gpio/Kconfig
 @@ -112,6 +112,13 @@ config GPIO_MAX730X