Lines Matching refs:entry
77 #define for_each_irq_pin(entry, head) \ argument
78 list_for_each_entry(entry, &head, list)
92 struct IO_APIC_route_entry entry; member
303 struct IO_APIC_route_entry entry; member
313 return eu.entry; in __ioapic_read_entry()
322 eu.entry = __ioapic_read_entry(apic, pin); in ioapic_read_entry()
325 return eu.entry; in ioapic_read_entry()
338 eu.entry = e; in __ioapic_write_entry()
360 union entry_union eu = { .entry.mask = IOAPIC_MASKED }; in ioapic_mask_entry()
376 struct irq_pin_list *entry; in __add_pin_to_irq_node() local
379 for_each_irq_pin(entry, data->irq_2_pin) in __add_pin_to_irq_node()
380 if (entry->apic == apic && entry->pin == pin) in __add_pin_to_irq_node()
383 entry = kzalloc_node(sizeof(struct irq_pin_list), GFP_ATOMIC, node); in __add_pin_to_irq_node()
384 if (!entry) { in __add_pin_to_irq_node()
389 entry->apic = apic; in __add_pin_to_irq_node()
390 entry->pin = pin; in __add_pin_to_irq_node()
391 list_add_tail(&entry->list, &data->irq_2_pin); in __add_pin_to_irq_node()
398 struct irq_pin_list *tmp, *entry; in __remove_pin_from_irq() local
400 list_for_each_entry_safe(entry, tmp, &data->irq_2_pin, list) in __remove_pin_from_irq()
401 if (entry->apic == apic && entry->pin == pin) { in __remove_pin_from_irq()
402 list_del(&entry->list); in __remove_pin_from_irq()
403 kfree(entry); in __remove_pin_from_irq()
422 struct irq_pin_list *entry; in replace_pin_at_irq_node() local
424 for_each_irq_pin(entry, data->irq_2_pin) { in replace_pin_at_irq_node()
425 if (entry->apic == oldapic && entry->pin == oldpin) { in replace_pin_at_irq_node()
426 entry->apic = newapic; in replace_pin_at_irq_node()
427 entry->pin = newpin; in replace_pin_at_irq_node()
439 void (*final)(struct irq_pin_list *entry)) in io_apic_modify_irq() argument
442 struct irq_pin_list *entry; in io_apic_modify_irq() local
444 eu.entry = data->entry; in io_apic_modify_irq()
447 data->entry = eu.entry; in io_apic_modify_irq()
449 for_each_irq_pin(entry, data->irq_2_pin) { in io_apic_modify_irq()
450 io_apic_write(entry->apic, 0x10 + 2 * entry->pin, eu.w1); in io_apic_modify_irq()
452 final(entry); in io_apic_modify_irq()
456 static void io_apic_sync(struct irq_pin_list *entry) in io_apic_sync() argument
464 io_apic = io_apic_base(entry->apic); in io_apic_sync()
514 struct IO_APIC_route_entry entry, entry1; in __eoi_ioapic_pin() local
516 entry = entry1 = __ioapic_read_entry(apic, pin); in __eoi_ioapic_pin()
529 __ioapic_write_entry(apic, pin, entry); in __eoi_ioapic_pin()
536 struct irq_pin_list *entry; in eoi_ioapic_pin() local
539 for_each_irq_pin(entry, data->irq_2_pin) in eoi_ioapic_pin()
540 __eoi_ioapic_pin(entry->apic, entry->pin, vector); in eoi_ioapic_pin()
546 struct IO_APIC_route_entry entry; in clear_IO_APIC_pin() local
549 entry = ioapic_read_entry(apic, pin); in clear_IO_APIC_pin()
550 if (entry.delivery_mode == dest_SMI) in clear_IO_APIC_pin()
557 if (entry.mask == IOAPIC_UNMASKED) { in clear_IO_APIC_pin()
558 entry.mask = IOAPIC_MASKED; in clear_IO_APIC_pin()
559 ioapic_write_entry(apic, pin, entry); in clear_IO_APIC_pin()
560 entry = ioapic_read_entry(apic, pin); in clear_IO_APIC_pin()
563 if (entry.irr) { in clear_IO_APIC_pin()
571 if (entry.trigger == IOAPIC_EDGE) { in clear_IO_APIC_pin()
572 entry.trigger = IOAPIC_LEVEL; in clear_IO_APIC_pin()
573 ioapic_write_entry(apic, pin, entry); in clear_IO_APIC_pin()
576 __eoi_ioapic_pin(apic, pin, entry.vector); in clear_IO_APIC_pin()
585 entry = ioapic_read_entry(apic, pin); in clear_IO_APIC_pin()
586 if (entry.irr) in clear_IO_APIC_pin()
671 struct IO_APIC_route_entry entry; in mask_ioapic_entries() local
673 entry = ioapics[apic].saved_registers[pin]; in mask_ioapic_entries()
674 if (entry.mask == IOAPIC_UNMASKED) { in mask_ioapic_entries()
675 entry.mask = IOAPIC_MASKED; in mask_ioapic_entries()
676 ioapic_write_entry(apic, pin, entry); in mask_ioapic_entries()
948 data->entry.trigger = data->trigger = info->ioapic_trigger; in mp_check_pin_attr()
949 data->entry.polarity = data->polarity = info->ioapic_polarity; in mp_check_pin_attr()
1233 struct IO_APIC_route_entry entry; in io_apic_print_entries() local
1234 struct IR_IO_APIC_route_entry *ir_entry = (void *)&entry; in io_apic_print_entries()
1238 entry = ioapic_read_entry(apic, i); in io_apic_print_entries()
1242 entry.mask == IOAPIC_MASKED ? "disabled" : "enabled ", in io_apic_print_entries()
1243 entry.trigger == IOAPIC_LEVEL ? "level" : "edge ", in io_apic_print_entries()
1244 entry.polarity == IOAPIC_POL_LOW ? "low " : "high", in io_apic_print_entries()
1245 entry.vector, entry.irr, entry.delivery_status); in io_apic_print_entries()
1253 entry.dest_mode == IOAPIC_DEST_MODE_LOGICAL ? in io_apic_print_entries()
1255 entry.dest, entry.delivery_mode); in io_apic_print_entries()
1337 struct irq_pin_list *entry; in print_IO_APICs() local
1351 for_each_irq_pin(entry, data->irq_2_pin) in print_IO_APICs()
1352 pr_cont("-> %d:%d", entry->apic, entry->pin); in print_IO_APICs()
1375 struct IO_APIC_route_entry entry = ioapic_read_entry(apic, pin); in enable_IO_APIC() local
1380 if ((entry.mask == 0) && (entry.delivery_mode == dest_ExtINT)) { in enable_IO_APIC()
1421 struct IO_APIC_route_entry entry; in native_disable_io_apic() local
1423 memset(&entry, 0, sizeof(entry)); in native_disable_io_apic()
1424 entry.mask = IOAPIC_UNMASKED; in native_disable_io_apic()
1425 entry.trigger = IOAPIC_EDGE; in native_disable_io_apic()
1426 entry.polarity = IOAPIC_POL_HIGH; in native_disable_io_apic()
1427 entry.dest_mode = IOAPIC_DEST_MODE_PHYSICAL; in native_disable_io_apic()
1428 entry.delivery_mode = dest_ExtINT; in native_disable_io_apic()
1429 entry.dest = read_apic_id(); in native_disable_io_apic()
1434 ioapic_write_entry(ioapic_i8259.apic, ioapic_i8259.pin, entry); in native_disable_io_apic()
1670 struct irq_pin_list *entry; in io_apic_level_ack_pending() local
1674 for_each_irq_pin(entry, data->irq_2_pin) { in io_apic_level_ack_pending()
1678 pin = entry->pin; in io_apic_level_ack_pending()
1679 reg = io_apic_read(entry->apic, 0x10 + pin*2); in io_apic_level_ack_pending()
1825 eoi_ioapic_pin(data->entry.vector, data); in ioapic_ir_ack_level()
1833 struct irq_pin_list *entry; in ioapic_set_affinity() local
1842 data->entry.dest = cfg->dest_apicid; in ioapic_set_affinity()
1843 data->entry.vector = cfg->vector; in ioapic_set_affinity()
1844 for_each_irq_pin(entry, data->irq_2_pin) in ioapic_set_affinity()
1845 __ioapic_write_entry(entry->apic, entry->pin, in ioapic_set_affinity()
1846 data->entry); in ioapic_set_affinity()
2896 struct IO_APIC_route_entry *entry) in mp_setup_entry() argument
2898 memset(entry, 0, sizeof(*entry)); in mp_setup_entry()
2899 entry->delivery_mode = apic->irq_delivery_mode; in mp_setup_entry()
2900 entry->dest_mode = apic->irq_dest_mode; in mp_setup_entry()
2901 entry->dest = cfg->dest_apicid; in mp_setup_entry()
2902 entry->vector = cfg->vector; in mp_setup_entry()
2903 entry->trigger = data->trigger; in mp_setup_entry()
2904 entry->polarity = data->polarity; in mp_setup_entry()
2910 entry->mask = IOAPIC_MASKED; in mp_setup_entry()
2912 entry->mask = IOAPIC_UNMASKED; in mp_setup_entry()
2940 info->ioapic_entry = &data->entry; in mp_irqdomain_alloc()
2995 struct irq_pin_list *entry; in mp_irqdomain_activate() local
2999 for_each_irq_pin(entry, data->irq_2_pin) in mp_irqdomain_activate()
3000 __ioapic_write_entry(entry->apic, entry->pin, data->entry); in mp_irqdomain_activate()