Lines Matching refs:iosapic_intr_info

137 static struct iosapic_intr_info {  struct
148 } iosapic_intr_info[NR_IRQS]; variable
182 struct iosapic_intr_info *info; in __gsi_to_irq()
186 info = &iosapic_intr_info[irq]; in __gsi_to_irq()
210 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) in find_rte()
233 pol = iosapic_intr_info[irq].polarity; in set_rte()
234 trigger = iosapic_intr_info[irq].trigger; in set_rte()
235 dmode = iosapic_intr_info[irq].dmode; in set_rte()
254 iosapic_intr_info[irq].low32 = low32; in set_rte()
255 iosapic_intr_info[irq].dest = dest; in set_rte()
269 struct iosapic_intr_info *info; in kexec_disable_iosapic()
275 info = &iosapic_intr_info[irq]; in kexec_disable_iosapic()
296 if (!iosapic_intr_info[irq].count) in mask_irq()
300 low32 = iosapic_intr_info[irq].low32 |= IOSAPIC_MASK; in mask_irq()
301 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) { in mask_irq()
315 if (!iosapic_intr_info[irq].count) in unmask_irq()
318 low32 = iosapic_intr_info[irq].low32 &= ~IOSAPIC_MASK; in unmask_irq()
319 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) { in unmask_irq()
349 if (!iosapic_intr_info[irq].count) in iosapic_set_affinity()
357 low32 = iosapic_intr_info[irq].low32 & ~(7 << IOSAPIC_DELIVERY_SHIFT); in iosapic_set_affinity()
367 iosapic_intr_info[irq].low32 = low32; in iosapic_set_affinity()
368 iosapic_intr_info[irq].dest = dest; in iosapic_set_affinity()
369 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) { in iosapic_set_affinity()
406 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) in iosapic_unmask_level_irq()
488 struct iosapic_intr_info *info; in iosapic_find_sharable_irq()
498 info = &iosapic_intr_info[i]; in iosapic_find_sharable_irq()
521 if (iosapic_intr_info[irq].count) { in iosapic_reassign_vector()
527 memcpy(&iosapic_intr_info[new_irq], &iosapic_intr_info[irq], in iosapic_reassign_vector()
528 sizeof(struct iosapic_intr_info)); in iosapic_reassign_vector()
529 INIT_LIST_HEAD(&iosapic_intr_info[new_irq].rtes); in iosapic_reassign_vector()
530 list_move(iosapic_intr_info[irq].rtes.next, in iosapic_reassign_vector()
531 &iosapic_intr_info[new_irq].rtes); in iosapic_reassign_vector()
532 memset(&iosapic_intr_info[irq], 0, in iosapic_reassign_vector()
533 sizeof(struct iosapic_intr_info)); in iosapic_reassign_vector()
534 iosapic_intr_info[irq].low32 = IOSAPIC_MASK; in iosapic_reassign_vector()
535 INIT_LIST_HEAD(&iosapic_intr_info[irq].rtes); in iosapic_reassign_vector()
541 return (iosapic_intr_info[irq].count > 1); in irq_is_shared()
580 list_add_tail(&rte->rte_list, &iosapic_intr_info[irq].rtes); in register_intr()
581 iosapic_intr_info[irq].count++; in register_intr()
585 struct iosapic_intr_info *info = &iosapic_intr_info[irq]; in register_intr()
594 iosapic_intr_info[irq].count++; in register_intr()
598 iosapic_intr_info[irq].polarity = polarity; in register_intr()
599 iosapic_intr_info[irq].dmode = delivery; in register_intr()
600 iosapic_intr_info[irq].trigger = trigger; in register_intr()
631 if (iosapic_intr_info[irq].count) in get_target_cpu()
632 return iosapic_intr_info[irq].dest; in get_target_cpu()
736 if(iosapic_intr_info[irq].count == 0) { in iosapic_register_intr()
768 low32 = iosapic_intr_info[irq].low32; in iosapic_register_intr()
821 low32 = iosapic_intr_info[irq].low32 | IOSAPIC_MASK; in iosapic_unregister_intr()
824 iosapic_intr_info[irq].count--; in iosapic_unregister_intr()
829 trigger = iosapic_intr_info[irq].trigger; in iosapic_unregister_intr()
830 polarity = iosapic_intr_info[irq].polarity; in iosapic_unregister_intr()
831 dest = iosapic_intr_info[irq].dest; in iosapic_unregister_intr()
838 if (iosapic_intr_info[irq].count == 0) { in iosapic_unregister_intr()
844 iosapic_intr_info[irq].dest = 0; in iosapic_unregister_intr()
845 iosapic_intr_info[irq].dmode = 0; in iosapic_unregister_intr()
846 iosapic_intr_info[irq].polarity = 0; in iosapic_unregister_intr()
847 iosapic_intr_info[irq].trigger = 0; in iosapic_unregister_intr()
848 iosapic_intr_info[irq].low32 |= IOSAPIC_MASK; in iosapic_unregister_intr()
959 iosapic_intr_info[irq].low32 = IOSAPIC_MASK; in iosapic_system_init()
961 INIT_LIST_HEAD(&iosapic_intr_info[irq].rtes); in iosapic_system_init()
963 iosapic_intr_info[irq].count = 0; in iosapic_system_init()
1018 list_for_each_entry_safe(rte, temp, &iosapic_intr_info[irq].rtes, in iosapic_delete_rte()