Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 85c0f909 authored by Yinghai Lu's avatar Yinghai Lu Committed by Ingo Molnar
Browse files

irq: introduce nr_irqs



at this point nr_irqs is equal NR_IRQS

convert a few easy users from NR_IRQS to dynamic nr_irqs.

v2: according to Eric, we need to take care of arch without generic_hardirqs

Signed-off-by: default avatarYinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 6da55c3e
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -46,6 +46,8 @@
#include <asm/q40ints.h>
#endif

int nr_irqs = NR_IRQS;

extern u32 auto_irqhandler_fixup[];
extern u32 user_irqhandler_fixup[];
extern u16 user_irqvec_fixup[];
+2 −0
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@
#include <linux/proc_fs.h>
#include <linux/profile.h>

int nr_irqs = NR_IRQS;

/*
 * show_interrupts is needed by /proc/interrupts.
 */
+3 −0
Original line number Diff line number Diff line
@@ -55,6 +55,9 @@
#define SMP_NOP2
#define SMP_NOP3
#endif /* SMP */

int nr_irqs = NR_IRQS;

unsigned long __raw_local_irq_save(void)
{
	unsigned long retval;
+2 −0
Original line number Diff line number Diff line
@@ -15,6 +15,8 @@
#include <asm/ptrace.h>
#include <asm/system.h>

extern int nr_irqs;

/*
 * These correspond to the IORESOURCE_IRQ_* defines in
 * linux/ioport.h to select the interrupt line behaviour.  When
+5 −5
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@ unsigned long probe_irq_on(void)
	 * something may have generated an irq long ago and we want to
	 * flush such a longstanding irq before considering it as spurious.
	 */
	for (i = NR_IRQS-1; i > 0; i--) {
	for (i = nr_irqs-1; i > 0; i--) {
		desc = irq_desc + i;

		spin_lock_irq(&desc->lock);
@@ -68,7 +68,7 @@ unsigned long probe_irq_on(void)
	 * (we must startup again here because if a longstanding irq
	 * happened in the previous stage, it may have masked itself)
	 */
	for (i = NR_IRQS-1; i > 0; i--) {
	for (i = nr_irqs-1; i > 0; i--) {
		desc = irq_desc + i;

		spin_lock_irq(&desc->lock);
@@ -89,7 +89,7 @@ unsigned long probe_irq_on(void)
	 * Now filter out any obviously spurious interrupts
	 */
	mask = 0;
	for (i = 0; i < NR_IRQS; i++) {
	for (i = 0; i < nr_irqs; i++) {
		unsigned int status;

		desc = irq_desc + i;
@@ -130,7 +130,7 @@ unsigned int probe_irq_mask(unsigned long val)
	int i;

	mask = 0;
	for (i = 0; i < NR_IRQS; i++) {
	for (i = 0; i < nr_irqs; i++) {
		struct irq_desc *desc = irq_desc + i;
		unsigned int status;

@@ -173,7 +173,7 @@ int probe_irq_off(unsigned long val)
{
	int i, irq_found = 0, nr_irqs = 0;

	for (i = 0; i < NR_IRQS; i++) {
	for (i = 0; i < nr_irqs; i++) {
		struct irq_desc *desc = irq_desc + i;
		unsigned int status;

Loading