diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2010-09-28 10:00:34 -0400 |
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2010-10-12 10:53:37 -0400 |
| commit | 61a38ce3f59cdb4654e9444329195bd57c3baf74 (patch) | |
| tree | c0def383fde6371cd7ef2abb50227da4fcae6d91 /arch/x86/kernel | |
| parent | dd5f15e5cf104c9170b76ae3274f35b42a3e4161 (diff) | |
x86: io_apic: Convert startup to new irq_chip function
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel')
| -rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index 3c4dee8a9ef7..5ced690b8496 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c | |||
| @@ -2218,11 +2218,10 @@ static int __init timer_irq_works(void) | |||
| 2218 | * an edge even if it isn't on the 8259A... | 2218 | * an edge even if it isn't on the 8259A... |
| 2219 | */ | 2219 | */ |
| 2220 | 2220 | ||
| 2221 | static unsigned int startup_ioapic_irq(unsigned int irq) | 2221 | static unsigned int startup_ioapic_irq(struct irq_data *data) |
| 2222 | { | 2222 | { |
| 2223 | int was_pending = 0; | 2223 | int was_pending = 0, irq = data->irq; |
| 2224 | unsigned long flags; | 2224 | unsigned long flags; |
| 2225 | struct irq_cfg *cfg; | ||
| 2226 | 2225 | ||
| 2227 | raw_spin_lock_irqsave(&ioapic_lock, flags); | 2226 | raw_spin_lock_irqsave(&ioapic_lock, flags); |
| 2228 | if (irq < legacy_pic->nr_legacy_irqs) { | 2227 | if (irq < legacy_pic->nr_legacy_irqs) { |
| @@ -2230,8 +2229,7 @@ static unsigned int startup_ioapic_irq(unsigned int irq) | |||
| 2230 | if (legacy_pic->irq_pending(irq)) | 2229 | if (legacy_pic->irq_pending(irq)) |
| 2231 | was_pending = 1; | 2230 | was_pending = 1; |
| 2232 | } | 2231 | } |
| 2233 | cfg = irq_cfg(irq); | 2232 | __unmask_ioapic(data->chip_data); |
| 2234 | __unmask_ioapic(cfg); | ||
| 2235 | raw_spin_unlock_irqrestore(&ioapic_lock, flags); | 2233 | raw_spin_unlock_irqrestore(&ioapic_lock, flags); |
| 2236 | 2234 | ||
| 2237 | return was_pending; | 2235 | return was_pending; |
| @@ -2695,7 +2693,7 @@ static void ir_ack_apic_level(unsigned int irq) | |||
| 2695 | 2693 | ||
| 2696 | static struct irq_chip ioapic_chip __read_mostly = { | 2694 | static struct irq_chip ioapic_chip __read_mostly = { |
| 2697 | .name = "IO-APIC", | 2695 | .name = "IO-APIC", |
| 2698 | .startup = startup_ioapic_irq, | 2696 | .irq_startup = startup_ioapic_irq, |
| 2699 | .mask = mask_ioapic_irq, | 2697 | .mask = mask_ioapic_irq, |
| 2700 | .unmask = unmask_ioapic_irq, | 2698 | .unmask = unmask_ioapic_irq, |
| 2701 | .ack = ack_apic_edge, | 2699 | .ack = ack_apic_edge, |
| @@ -2708,7 +2706,7 @@ static struct irq_chip ioapic_chip __read_mostly = { | |||
| 2708 | 2706 | ||
| 2709 | static struct irq_chip ir_ioapic_chip __read_mostly = { | 2707 | static struct irq_chip ir_ioapic_chip __read_mostly = { |
| 2710 | .name = "IR-IO-APIC", | 2708 | .name = "IR-IO-APIC", |
| 2711 | .startup = startup_ioapic_irq, | 2709 | .irq_startup = startup_ioapic_irq, |
| 2712 | .mask = mask_ioapic_irq, | 2710 | .mask = mask_ioapic_irq, |
| 2713 | .unmask = unmask_ioapic_irq, | 2711 | .unmask = unmask_ioapic_irq, |
| 2714 | #ifdef CONFIG_INTR_REMAP | 2712 | #ifdef CONFIG_INTR_REMAP |
