• Sylwester Nawrocki's avatar
    dm9000: Fix irq trigger type setup on non-dt platforms · a96d3b75
    Sylwester Nawrocki authored
    Commit b5a099c6 "net: ethernet: davicom: fix devicetree irq
    resource" causes an interrupt storm after the ethernet interface
    is activated on S3C24XX platform (ARM non-dt), due to the interrupt
    trigger type not being set properly.
    
    It seems, after adding parsing of IRQ flags in commit 7085a740
    "drivers: platform: parse IRQ flags from resources", there is no path
    for non-dt platforms where irq_set_type callback could be invoked when
    we don't pass the trigger type flags to the request_irq() call.
    
    In case of a board where the regression is seen the interrupt trigger
    type flags are passed through a platform device's resource and it is
    not currently handled properly without passing the irq trigger type
    flags to the request_irq() call.  In case of OF an of_irq_get() call
    within platform_get_irq() function seems to be ensuring required irq_chip
    setup, but there is no equivalent code for non OF/ACPI platforms.
    
    This patch mostly restores irq trigger type setting code which has been
    removed in commit ("net: ethernet: davicom: fix devicetree irq resource").
    
    Fixes: b5a099c6 ("net: ethernet: davicom: fix devicetree irq resource")
    Signed-off-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
    Acked-by: default avatarRobert Jarzmik <robert.jarzmik@free.fr>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    a96d3b75
dm9000.c 41.6 KB