lkml.org 
[lkml]   [2008]   [Oct]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[RFC patch 1/5] genirq: make irqreturn_t an enum
    Remove the 2.4 compabiliy cruft

    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Reviewed-by: Ingo Molnar <mingo@elte.hu>
    ---
    include/linux/irq.h | 4 ++--
    include/linux/irqreturn.h | 28 ++++++++++------------------
    2 files changed, 12 insertions(+), 20 deletions(-)

    Index: linux-2.6-tip/include/linux/irq.h
    ===================================================================
    --- linux-2.6-tip.orig/include/linux/irq.h
    +++ linux-2.6-tip/include/linux/irq.h
    @@ -252,7 +252,7 @@ static inline int irq_balancing_disabled
    }

    /* Handle irq action chains: */
    -extern int handle_IRQ_event(unsigned int irq, struct irqaction *action);
    +extern irqreturn_t handle_IRQ_event(unsigned int irq, struct irqaction *action);

    /*
    * Built-in IRQ handlers for various IRQ types,
    @@ -294,7 +294,7 @@ static inline void generic_handle_irq(un

    /* Handling of unhandled and spurious interrupts: */
    extern void note_interrupt(unsigned int irq, struct irq_desc *desc,
    - int action_ret);
    + irqreturn_t action_ret);

    /* Resending of interrupts :*/
    void check_irq_resend(struct irq_desc *desc, unsigned int irq);
    Index: linux-2.6-tip/include/linux/irqreturn.h
    ===================================================================
    --- linux-2.6-tip.orig/include/linux/irqreturn.h
    +++ linux-2.6-tip/include/linux/irqreturn.h
    @@ -1,25 +1,17 @@
    -/* irqreturn.h */
    #ifndef _LINUX_IRQRETURN_H
    #define _LINUX_IRQRETURN_H

    -/*
    - * For 2.4.x compatibility, 2.4.x can use
    - *
    - * typedef void irqreturn_t;
    - * #define IRQ_NONE
    - * #define IRQ_HANDLED
    - * #define IRQ_RETVAL(x)
    - *
    - * To mix old-style and new-style irq handler returns.
    - *
    - * IRQ_NONE means we didn't handle it.
    - * IRQ_HANDLED means that we did have a valid interrupt and handled it.
    - * IRQ_RETVAL(x) selects on the two depending on x being non-zero (for handled)
    +/**
    + * enum irqreturn
    + * @IRQ_NONE interrupt was not from this device
    + * @IRQ_HANDLED interrupt was handled by this device
    */
    -typedef int irqreturn_t;
    +enum irqreturn {
    + IRQ_NONE,
    + IRQ_HANDLED,
    +};

    -#define IRQ_NONE (0)
    -#define IRQ_HANDLED (1)
    -#define IRQ_RETVAL(x) ((x) != 0)
    +#define irqreturn_t enum irqreturn
    +#define IRQ_RETVAL(x) ((x) != IRQ_NONE)

    #endif



    \
     
     \ /
      Last update: 2008-10-02 01:07    [W:3.793 / U:0.088 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site