Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 182134
b: refs/heads/master
c: 8965087
h: refs/heads/master
v: v3
  • Loading branch information
Ralf Baechle committed Feb 27, 2010
1 parent 33e59be commit c8f8dfb
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 17 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 598c5abad7f3e162a01c87a480f8d2cd57643acb
refs/heads/master: 896508705561bea24656680cdaf3b4095c4d7473
6 changes: 3 additions & 3 deletions trunk/arch/mips/include/asm/i8259.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
#define SLAVE_ICW4_DEFAULT 0x01
#define PIC_ICW4_AEOI 2

extern spinlock_t i8259A_lock;
extern raw_spinlock_t i8259A_lock;

extern int i8259A_irq_pending(unsigned int irq);
extern void make_8259A_irq(unsigned int irq);
Expand All @@ -51,7 +51,7 @@ static inline int i8259_irq(void)
{
int irq;

spin_lock(&i8259A_lock);
raw_spin_lock(&i8259A_lock);

/* Perform an interrupt acknowledge cycle on controller 1. */
outb(0x0C, PIC_MASTER_CMD); /* prepare for poll */
Expand All @@ -78,7 +78,7 @@ static inline int i8259_irq(void)
irq = -1;
}

spin_unlock(&i8259A_lock);
raw_spin_unlock(&i8259A_lock);

return likely(irq >= 0) ? irq + I8259A_IRQ_BASE : irq;
}
Expand Down
22 changes: 11 additions & 11 deletions trunk/arch/mips/kernel/i8259.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
*/

static int i8259A_auto_eoi = -1;
DEFINE_SPINLOCK(i8259A_lock);
DEFINE_RAW_SPINLOCK(i8259A_lock);
static void disable_8259A_irq(unsigned int irq);
static void enable_8259A_irq(unsigned int irq);
static void mask_and_ack_8259A(unsigned int irq);
Expand Down Expand Up @@ -65,13 +65,13 @@ static void disable_8259A_irq(unsigned int irq)

irq -= I8259A_IRQ_BASE;
mask = 1 << irq;
spin_lock_irqsave(&i8259A_lock, flags);
raw_spin_lock_irqsave(&i8259A_lock, flags);
cached_irq_mask |= mask;
if (irq & 8)
outb(cached_slave_mask, PIC_SLAVE_IMR);
else
outb(cached_master_mask, PIC_MASTER_IMR);
spin_unlock_irqrestore(&i8259A_lock, flags);
raw_spin_unlock_irqrestore(&i8259A_lock, flags);
}

static void enable_8259A_irq(unsigned int irq)
Expand All @@ -81,13 +81,13 @@ static void enable_8259A_irq(unsigned int irq)

irq -= I8259A_IRQ_BASE;
mask = ~(1 << irq);
spin_lock_irqsave(&i8259A_lock, flags);
raw_spin_lock_irqsave(&i8259A_lock, flags);
cached_irq_mask &= mask;
if (irq & 8)
outb(cached_slave_mask, PIC_SLAVE_IMR);
else
outb(cached_master_mask, PIC_MASTER_IMR);
spin_unlock_irqrestore(&i8259A_lock, flags);
raw_spin_unlock_irqrestore(&i8259A_lock, flags);
}

int i8259A_irq_pending(unsigned int irq)
Expand All @@ -98,12 +98,12 @@ int i8259A_irq_pending(unsigned int irq)

irq -= I8259A_IRQ_BASE;
mask = 1 << irq;
spin_lock_irqsave(&i8259A_lock, flags);
raw_spin_lock_irqsave(&i8259A_lock, flags);
if (irq < 8)
ret = inb(PIC_MASTER_CMD) & mask;
else
ret = inb(PIC_SLAVE_CMD) & (mask >> 8);
spin_unlock_irqrestore(&i8259A_lock, flags);
raw_spin_unlock_irqrestore(&i8259A_lock, flags);

return ret;
}
Expand Down Expand Up @@ -151,7 +151,7 @@ static void mask_and_ack_8259A(unsigned int irq)

irq -= I8259A_IRQ_BASE;
irqmask = 1 << irq;
spin_lock_irqsave(&i8259A_lock, flags);
raw_spin_lock_irqsave(&i8259A_lock, flags);
/*
* Lightweight spurious IRQ detection. We do not want
* to overdo spurious IRQ handling - it's usually a sign
Expand Down Expand Up @@ -183,7 +183,7 @@ static void mask_and_ack_8259A(unsigned int irq)
outb(0x60+irq, PIC_MASTER_CMD); /* 'Specific EOI to master */
}
smtc_im_ack_irq(irq);
spin_unlock_irqrestore(&i8259A_lock, flags);
raw_spin_unlock_irqrestore(&i8259A_lock, flags);
return;

spurious_8259A_irq:
Expand Down Expand Up @@ -264,7 +264,7 @@ static void init_8259A(int auto_eoi)

i8259A_auto_eoi = auto_eoi;

spin_lock_irqsave(&i8259A_lock, flags);
raw_spin_lock_irqsave(&i8259A_lock, flags);

outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */
outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-2 */
Expand Down Expand Up @@ -298,7 +298,7 @@ static void init_8259A(int auto_eoi)
outb(cached_master_mask, PIC_MASTER_IMR); /* restore master IRQ mask */
outb(cached_slave_mask, PIC_SLAVE_IMR); /* restore slave IRQ mask */

spin_unlock_irqrestore(&i8259A_lock, flags);
raw_spin_unlock_irqrestore(&i8259A_lock, flags);
}

/*
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/mips/loongson/lemote-2f/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ int mach_i8259_irq(void)
irq = -1;

if ((LOONGSON_INTISR & LOONGSON_INTEN) & LOONGSON_INT_BIT_INT0) {
spin_lock(&i8259A_lock);
raw_spin_lock(&i8259A_lock);
isr = inb(PIC_MASTER_CMD) &
~inb(PIC_MASTER_IMR) & ~(1 << PIC_CASCADE_IR);
if (!isr)
Expand All @@ -56,7 +56,7 @@ int mach_i8259_irq(void)
if (~inb(PIC_MASTER_ISR) & 0x80)
irq = -1;
}
spin_unlock(&i8259A_lock);
raw_spin_unlock(&i8259A_lock);
}

return irq;
Expand Down

0 comments on commit c8f8dfb

Please sign in to comment.