diff options
Diffstat (limited to 'kernel/irq/manage.c')
-rw-r--r-- | kernel/irq/manage.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 0559d9c0f658..d526ac1eb0d1 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -423,7 +423,7 @@ setup_affinity(unsigned int irq, struct irq_desc *desc, struct cpumask *mask) | |||
423 | } | 423 | } |
424 | #endif | 424 | #endif |
425 | 425 | ||
426 | void __disable_irq(struct irq_desc *desc, unsigned int irq) | 426 | void __disable_irq(struct irq_desc *desc) |
427 | { | 427 | { |
428 | if (!desc->depth++) | 428 | if (!desc->depth++) |
429 | irq_disable(desc); | 429 | irq_disable(desc); |
@@ -436,7 +436,7 @@ static int __disable_irq_nosync(unsigned int irq) | |||
436 | 436 | ||
437 | if (!desc) | 437 | if (!desc) |
438 | return -EINVAL; | 438 | return -EINVAL; |
439 | __disable_irq(desc, irq); | 439 | __disable_irq(desc); |
440 | irq_put_desc_busunlock(desc, flags); | 440 | irq_put_desc_busunlock(desc, flags); |
441 | return 0; | 441 | return 0; |
442 | } | 442 | } |
@@ -503,12 +503,13 @@ bool disable_hardirq(unsigned int irq) | |||
503 | } | 503 | } |
504 | EXPORT_SYMBOL_GPL(disable_hardirq); | 504 | EXPORT_SYMBOL_GPL(disable_hardirq); |
505 | 505 | ||
506 | void __enable_irq(struct irq_desc *desc, unsigned int irq) | 506 | void __enable_irq(struct irq_desc *desc) |
507 | { | 507 | { |
508 | switch (desc->depth) { | 508 | switch (desc->depth) { |
509 | case 0: | 509 | case 0: |
510 | err_out: | 510 | err_out: |
511 | WARN(1, KERN_WARNING "Unbalanced enable for IRQ %d\n", irq); | 511 | WARN(1, KERN_WARNING "Unbalanced enable for IRQ %d\n", |
512 | irq_desc_get_irq(desc)); | ||
512 | break; | 513 | break; |
513 | case 1: { | 514 | case 1: { |
514 | if (desc->istate & IRQS_SUSPENDED) | 515 | if (desc->istate & IRQS_SUSPENDED) |
@@ -546,7 +547,7 @@ void enable_irq(unsigned int irq) | |||
546 | KERN_ERR "enable_irq before setup/request_irq: irq %u\n", irq)) | 547 | KERN_ERR "enable_irq before setup/request_irq: irq %u\n", irq)) |
547 | goto out; | 548 | goto out; |
548 | 549 | ||
549 | __enable_irq(desc, irq); | 550 | __enable_irq(desc); |
550 | out: | 551 | out: |
551 | irq_put_desc_busunlock(desc, flags); | 552 | irq_put_desc_busunlock(desc, flags); |
552 | } | 553 | } |
@@ -1280,7 +1281,7 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new) | |||
1280 | */ | 1281 | */ |
1281 | if (shared && (desc->istate & IRQS_SPURIOUS_DISABLED)) { | 1282 | if (shared && (desc->istate & IRQS_SPURIOUS_DISABLED)) { |
1282 | desc->istate &= ~IRQS_SPURIOUS_DISABLED; | 1283 | desc->istate &= ~IRQS_SPURIOUS_DISABLED; |
1283 | __enable_irq(desc, irq); | 1284 | __enable_irq(desc); |
1284 | } | 1285 | } |
1285 | 1286 | ||
1286 | raw_spin_unlock_irqrestore(&desc->lock, flags); | 1287 | raw_spin_unlock_irqrestore(&desc->lock, flags); |