The patch titled genirq: add IRQ_NOAUTOEN support has been added to the -mm tree. Its filename is genirq-add-irq_noautoen-support.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: genirq: add IRQ_NOAUTOEN support From: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Enable platforms to disable the automatic enabling of freshly set up irqs. Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Signed-off-by: Ingo Molnar <mingo@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- include/linux/irq.h | 1 + kernel/irq/handle.c | 1 + kernel/irq/manage.c | 18 +++++++++++------- 3 files changed, 13 insertions(+), 7 deletions(-) diff -puN include/linux/irq.h~genirq-add-irq_noautoen-support include/linux/irq.h --- devel/include/linux/irq.h~genirq-add-irq_noautoen-support 2006-05-22 15:14:37.000000000 -0700 +++ devel-akpm/include/linux/irq.h 2006-05-22 15:14:37.000000000 -0700 @@ -42,6 +42,7 @@ #define IRQ_NOPROBE 512 /* IRQ is not valid for probing */ #define IRQ_NOREQUEST 1024 /* IRQ cannot be requested */ +#define IRQ_NOAUTOEN 2048 /* IRQ will not be enabled on request irq */ /** * struct hw_interrupt_type - hardware interrupt type descriptor * diff -puN kernel/irq/handle.c~genirq-add-irq_noautoen-support kernel/irq/handle.c --- devel/kernel/irq/handle.c~genirq-add-irq_noautoen-support 2006-05-22 15:14:37.000000000 -0700 +++ devel-akpm/kernel/irq/handle.c 2006-05-22 15:14:37.000000000 -0700 @@ -32,6 +32,7 @@ struct irq_desc irq_desc[NR_IRQS] __cach [0 ... NR_IRQS-1] = { .status = IRQ_DISABLED, .chip = &no_irq_type, + .depth = 1, .lock = SPIN_LOCK_UNLOCKED, #ifdef CONFIG_SMP .affinity = CPU_MASK_ALL diff -puN kernel/irq/manage.c~genirq-add-irq_noautoen-support kernel/irq/manage.c --- devel/kernel/irq/manage.c~genirq-add-irq_noautoen-support 2006-05-22 15:14:37.000000000 -0700 +++ devel-akpm/kernel/irq/manage.c 2006-05-22 15:14:37.000000000 -0700 @@ -216,13 +216,17 @@ int setup_irq(unsigned int irq, struct i desc->status |= IRQ_PER_CPU; #endif if (!shared) { - desc->depth = 0; - desc->status &= ~(IRQ_DISABLED | IRQ_AUTODETECT | - IRQ_WAITING | IRQ_INPROGRESS); - if (desc->chip->startup) - desc->chip->startup(irq); - else - desc->chip->enable(irq); + desc->status &= ~(IRQ_AUTODETECT | IRQ_WAITING | + IRQ_INPROGRESS); + + if (!(desc->status & IRQ_NOAUTOEN)) { + desc->depth = 0; + desc->status &= ~IRQ_DISABLED; + if (desc->chip->startup) + desc->chip->startup(irq); + else + desc->chip->enable(irq); + } } spin_unlock_irqrestore(&desc->lock, flags); _ Patches currently in -mm which might be from tglx@xxxxxxxxxxxxx are origin.patch git-mtd.patch pi-futex-futex-code-cleanups.patch pi-futex-introduce-debug_check_no_locks_freed.patch pi-futex-add-plist-implementation.patch pi-futex-scheduler-support-for-pi.patch pi-futex-rt-mutex-core.patch pi-futex-rt-mutex-core-fix-timeout-race.patch pi-futex-rt-mutex-docs.patch pi-futex-rt-mutex-debug.patch pi-futex-rt-mutex-tester.patch pi-futex-rt-mutex-futex-api.patch pi-futex-futex_lock_pi-futex_unlock_pi-support.patch pi-futex-patchset-v4-fix.patch rtmutex-remove-buggy-bug_on-in-pi-boosting-code.patch futex-pi-enforce-waiter-bit-when-owner-died-is-detected.patch rtmutex-debug-printk-correct-task-information.patch futex-pi-make-use-of-restart_block-when-interrupted.patch document-futex-pi-design.patch document-futex-pi-design-fix.patch document-futex-pi-design-fix-fix.patch futex_requeue-optimization.patch genirq-rename-desc-handler-to-desc-chip.patch genirq-sem2mutex-probe_sem-probing_active.patch genirq-cleanup-merge-irq_affinity-into-irq_desc.patch genirq-cleanup-remove-irq_descp.patch genirq-cleanup-remove-fastcall.patch genirq-cleanup-misc-code-cleanups.patch genirq-cleanup-reduce-irq_desc_t-use-mark-it-obsolete.patch genirq-cleanup-include-linux-irqh.patch genirq-cleanup-merge-irq_dir-smp_affinity_entry-into-irq_desc.patch genirq-cleanup-merge-pending_irq_cpumask-into-irq_desc.patch genirq-cleanup-turn-arch_has_irq_per_cpu-into-config_irq_per_cpu.patch genirq-debug-better-debug-printout-in-enable_irq.patch genirq-add-retrigger-irq-op-to-consolidate-hw_irq_resend.patch genirq-doc-comment-include-linux-irqh-structures.patch genirq-doc-handle_irq_event-and-__do_irq-comments.patch genirq-cleanup-no_irq_type-cleanups.patch genirq-doc-add-design-documentation.patch genirq-add-genirq-sw-irq-retrigger.patch genirq-add-irq_noprobe-support.patch genirq-add-irq_norequest-support.patch genirq-add-irq_noautoen-support.patch genirq-update-copyrights.patch genirq-core.patch genirq-add-irq-chip-support.patch genirq-add-handle_bad_irq.patch genirq-add-irq-wake-power-management-support.patch genirq-add-sa_trigger-support.patch genirq-convert-the-x86_64-architecture-to-irq-chips.patch genirq-convert-the-i386-architecture-to-irq-chips.patch genirq-more-verbose-debugging-on-unexpected-irq-vectors.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html