lkml.org 
[lkml]   [2009]   [Aug]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[RFC patch 25/32] x86: Remove mca bus ifdef from timer interrupt
    MCA_bus is constant 0 when CONFIG_MCA=n. So the compiler removes that
    code w/o needing an extra #ifdef

    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    ---
    arch/x86/kernel/time_32.c | 18 +++---------------
    arch/x86/kernel/time_64.c | 9 +++------
    2 files changed, 6 insertions(+), 21 deletions(-)

    Index: linux-2.6/arch/x86/kernel/time_32.c
    ===================================================================
    --- linux-2.6.orig/arch/x86/kernel/time_32.c
    +++ linux-2.6/arch/x86/kernel/time_32.c
    @@ -77,21 +77,9 @@ static irqreturn_t timer_interrupt(int i

    global_clock_event->event_handler(global_clock_event);

    -#ifdef CONFIG_MCA
    - if (MCA_bus) {
    - /* The PS/2 uses level-triggered interrupts. You can't
    - turn them off, nor would you want to (any attempt to
    - enable edge-triggered interrupts usually gets intercepted by a
    - special hardware circuit). Hence we have to acknowledge
    - the timer interrupt. Through some incredibly stupid
    - design idea, the reset for IRQ 0 is done by setting the
    - high bit of the PPI port B (0x61). Note that some PS/2s,
    - notably the 55SX, work fine if this is removed. */
    -
    - u8 irq_v = inb_p(0x61); /* read the current state */
    - outb_p(irq_v | 0x80, 0x61); /* reset the IRQ */
    - }
    -#endif
    + /* MCA bus quirk: Acknowledge irq0 by setting bit 7 in port 0x61 */
    + if (MCA_bus)
    + outb_p(inb_p(0x61)| 0x80, 0x61);

    return IRQ_HANDLED;
    }
    Index: linux-2.6/arch/x86/kernel/time_64.c
    ===================================================================
    --- linux-2.6.orig/arch/x86/kernel/time_64.c
    +++ linux-2.6/arch/x86/kernel/time_64.c
    @@ -66,12 +66,9 @@ static irqreturn_t timer_interrupt(int i

    global_clock_event->event_handler(global_clock_event);

    -#ifdef CONFIG_MCA
    - if (MCA_bus) {
    - u8 irq_v = inb_p(0x61); /* read the current state */
    - outb_p(irq_v|0x80, 0x61); /* reset the IRQ */
    - }
    -#endif
    + /* MCA bus quirk: Acknowledge irq0 by setting bit 7 in port 0x61 */
    + if (MCA_bus)
    + outb_p(inb_p(0x61)| 0x80, 0x61);

    return IRQ_HANDLED;
    }



    \
     
     \ /
      Last update: 2009-08-21 23:57    [W:0.043 / U:30.712 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site