lkml.org 
[lkml]   [2021]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCHv2 3/8] genirq: Allow architectures to override set_handle_irq() fallback
    Date
    From: Marc Zyngier <maz@kernel.org>

    Some architectures want to provide the generic set_handle_irq() API, but
    for structural reasons need to provide their own implementation. For
    example, arm64 needs to do this to provide uniform set_handle_irq() and
    set_handle_fiq() registration functions.

    Make this possible by allowing architectures to provide their own
    implementation of set_handle_irq when CONFIG_GENERIC_IRQ_MULTI_HANDLER
    is not selected.

    Signed-off-by: Marc Zyngier <maz@kernel.org>
    [Mark: expand commit message]
    Signed-off-by: Mark Rutland <mark.rutland@arm.com>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Hector Martin <marcan@marcan.st>
    Cc: James Morse <james.morse@arm.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Will Deacon <will@kernel.org>
    ---
    include/linux/irq.h | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/include/linux/irq.h b/include/linux/irq.h
    index 2efde6a79b7e..9890180b84fd 100644
    --- a/include/linux/irq.h
    +++ b/include/linux/irq.h
    @@ -1258,11 +1258,13 @@ int __init set_handle_irq(void (*handle_irq)(struct pt_regs *));
    */
    extern void (*handle_arch_irq)(struct pt_regs *) __ro_after_init;
    #else
    +#ifndef set_handle_irq
    #define set_handle_irq(handle_irq) \
    do { \
    (void)handle_irq; \
    WARN_ON(1); \
    } while (0)
    #endif
    +#endif

    #endif /* _LINUX_IRQ_H */
    --
    2.11.0
    \
     
     \ /
      Last update: 2021-03-02 16:39    [W:2.385 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site