Lines Matching refs:iosapic_intr_info
138 static struct iosapic_intr_info { struct
149 } iosapic_intr_info[NR_IRQS]; argument
183 struct iosapic_intr_info *info; in __gsi_to_irq()
187 info = &iosapic_intr_info[irq]; in __gsi_to_irq()
211 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) in find_rte()
234 pol = iosapic_intr_info[irq].polarity; in set_rte()
235 trigger = iosapic_intr_info[irq].trigger; in set_rte()
236 dmode = iosapic_intr_info[irq].dmode; in set_rte()
255 iosapic_intr_info[irq].low32 = low32; in set_rte()
256 iosapic_intr_info[irq].dest = dest; in set_rte()
270 struct iosapic_intr_info *info; in kexec_disable_iosapic()
276 info = &iosapic_intr_info[irq]; in kexec_disable_iosapic()
297 if (!iosapic_intr_info[irq].count) in mask_irq()
301 low32 = iosapic_intr_info[irq].low32 |= IOSAPIC_MASK; in mask_irq()
302 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) { in mask_irq()
316 if (!iosapic_intr_info[irq].count) in unmask_irq()
319 low32 = iosapic_intr_info[irq].low32 &= ~IOSAPIC_MASK; in unmask_irq()
320 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) { in unmask_irq()
350 if (!iosapic_intr_info[irq].count) in iosapic_set_affinity()
358 low32 = iosapic_intr_info[irq].low32 & ~(7 << IOSAPIC_DELIVERY_SHIFT); in iosapic_set_affinity()
368 iosapic_intr_info[irq].low32 = low32; in iosapic_set_affinity()
369 iosapic_intr_info[irq].dest = dest; in iosapic_set_affinity()
370 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) { in iosapic_set_affinity()
407 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) in iosapic_unmask_level_irq()
489 struct iosapic_intr_info *info; in iosapic_find_sharable_irq()
499 info = &iosapic_intr_info[i]; in iosapic_find_sharable_irq()
522 if (iosapic_intr_info[irq].count) { in iosapic_reassign_vector()
528 memcpy(&iosapic_intr_info[new_irq], &iosapic_intr_info[irq], in iosapic_reassign_vector()
529 sizeof(struct iosapic_intr_info)); in iosapic_reassign_vector()
530 INIT_LIST_HEAD(&iosapic_intr_info[new_irq].rtes); in iosapic_reassign_vector()
531 list_move(iosapic_intr_info[irq].rtes.next, in iosapic_reassign_vector()
532 &iosapic_intr_info[new_irq].rtes); in iosapic_reassign_vector()
533 memset(&iosapic_intr_info[irq], 0, in iosapic_reassign_vector()
534 sizeof(struct iosapic_intr_info)); in iosapic_reassign_vector()
535 iosapic_intr_info[irq].low32 = IOSAPIC_MASK; in iosapic_reassign_vector()
536 INIT_LIST_HEAD(&iosapic_intr_info[irq].rtes); in iosapic_reassign_vector()
542 return (iosapic_intr_info[irq].count > 1); in irq_is_shared()
581 list_add_tail(&rte->rte_list, &iosapic_intr_info[irq].rtes); in register_intr()
582 iosapic_intr_info[irq].count++; in register_intr()
586 struct iosapic_intr_info *info = &iosapic_intr_info[irq]; in register_intr()
595 iosapic_intr_info[irq].count++; in register_intr()
599 iosapic_intr_info[irq].polarity = polarity; in register_intr()
600 iosapic_intr_info[irq].dmode = delivery; in register_intr()
601 iosapic_intr_info[irq].trigger = trigger; in register_intr()
632 if (iosapic_intr_info[irq].count) in get_target_cpu()
633 return iosapic_intr_info[irq].dest; in get_target_cpu()
737 if(iosapic_intr_info[irq].count == 0) { in iosapic_register_intr()
769 low32 = iosapic_intr_info[irq].low32; in iosapic_register_intr()
822 low32 = iosapic_intr_info[irq].low32 | IOSAPIC_MASK; in iosapic_unregister_intr()
825 iosapic_intr_info[irq].count--; in iosapic_unregister_intr()
830 trigger = iosapic_intr_info[irq].trigger; in iosapic_unregister_intr()
831 polarity = iosapic_intr_info[irq].polarity; in iosapic_unregister_intr()
832 dest = iosapic_intr_info[irq].dest; in iosapic_unregister_intr()
839 if (iosapic_intr_info[irq].count == 0) { in iosapic_unregister_intr()
845 iosapic_intr_info[irq].dest = 0; in iosapic_unregister_intr()
846 iosapic_intr_info[irq].dmode = 0; in iosapic_unregister_intr()
847 iosapic_intr_info[irq].polarity = 0; in iosapic_unregister_intr()
848 iosapic_intr_info[irq].trigger = 0; in iosapic_unregister_intr()
849 iosapic_intr_info[irq].low32 |= IOSAPIC_MASK; in iosapic_unregister_intr()
960 iosapic_intr_info[irq].low32 = IOSAPIC_MASK; in iosapic_system_init()
962 INIT_LIST_HEAD(&iosapic_intr_info[irq].rtes); in iosapic_system_init()
964 iosapic_intr_info[irq].count = 0; in iosapic_system_init()
1019 list_for_each_entry_safe(rte, temp, &iosapic_intr_info[irq].rtes, in iosapic_delete_rte()