|
@@ -659,40 +659,6 @@ void irq_force_complete_move(int irq)
|
|
}
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
|
|
-/*
|
|
|
|
- * Dynamic irq allocate and deallocation. Should be replaced by irq domains!
|
|
|
|
- */
|
|
|
|
-int arch_setup_hwirq(unsigned int irq, int node)
|
|
|
|
-{
|
|
|
|
- struct irq_cfg *cfg;
|
|
|
|
- unsigned long flags;
|
|
|
|
- int ret;
|
|
|
|
-
|
|
|
|
- cfg = alloc_irq_cfg(node);
|
|
|
|
- if (!cfg)
|
|
|
|
- return -ENOMEM;
|
|
|
|
-
|
|
|
|
- raw_spin_lock_irqsave(&vector_lock, flags);
|
|
|
|
- ret = __assign_irq_vector(irq, cfg, apic->target_cpus());
|
|
|
|
- raw_spin_unlock_irqrestore(&vector_lock, flags);
|
|
|
|
-
|
|
|
|
- if (!ret)
|
|
|
|
- irq_set_chip_data(irq, cfg);
|
|
|
|
- else
|
|
|
|
- free_irq_cfg(cfg);
|
|
|
|
- return ret;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void arch_teardown_hwirq(unsigned int irq)
|
|
|
|
-{
|
|
|
|
- struct irq_cfg *cfg = irq_cfg(irq);
|
|
|
|
-
|
|
|
|
- free_remapped_irq(irq);
|
|
|
|
- clear_irq_vector(irq, cfg);
|
|
|
|
- irq_set_chip_data(irq, NULL);
|
|
|
|
- free_irq_cfg(cfg);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static void __init print_APIC_field(int base)
|
|
static void __init print_APIC_field(int base)
|
|
{
|
|
{
|
|
int i;
|
|
int i;
|