ARM: shmobile: Lager: pass Ether PHY IRQ
authorSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Tue, 4 Feb 2014 15:53:50 +0000 (18:53 +0300)
committerSimon Horman <horms@verge.net.au>
Fri, 5 Dec 2014 00:22:05 +0000 (09:22 +0900)
Pass Ether's PHY IRQ (which is IRQC's IRQ0) to the 'sh_eth' driver. Set the IRQ
trigger type to be low-level as per the Micrel PHY driver's setup.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Magnus Damm <magnus.damm@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 5812b8b2bcc35e7928c0e5616bbe35a0e97c7749)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
arch/arm/mach-shmobile/board-lager.c

index fdcc868..30ebd08 100644 (file)
@@ -22,6 +22,7 @@
 #include <linux/gpio_keys.h>
 #include <linux/input.h>
 #include <linux/interrupt.h>
+#include <linux/irq.h>
 #include <linux/kernel.h>
 #include <linux/leds.h>
 #include <linux/mmc/host.h>
@@ -233,6 +234,7 @@ static const struct resource mmcif1_resources[] __initconst = {
 /* Ether */
 static const struct sh_eth_plat_data ether_pdata __initconst = {
        .phy                    = 0x1,
+       .phy_irq                = irq_pin(0),
        .edmac_endian           = EDMAC_LITTLE_ENDIAN,
        .phy_interface          = PHY_INTERFACE_MODE_RMII,
        .ether_link_active_low  = 1,
@@ -618,6 +620,8 @@ static void __init lager_init(void)
 {
        lager_add_standard_devices();
 
+       irq_set_irq_type(irq_pin(0), IRQ_TYPE_LEVEL_LOW);
+
        if (IS_ENABLED(CONFIG_PHYLIB))
                phy_register_fixup_for_id("r8a7790-ether-ff:01",
                                          lager_ksz8041_fixup);