Lines Matching refs:ioapic
98 struct acpi_pci_ioapic *ioapic; in handle_ioapic_add() local
107 list_for_each_entry(ioapic, &ioapic_list, list) in handle_ioapic_add()
108 if (ioapic->handle == handle) { in handle_ioapic_add()
119 ioapic = kzalloc(sizeof(*ioapic), GFP_KERNEL); in handle_ioapic_add()
120 if (!ioapic) { in handle_ioapic_add()
124 ioapic->root_handle = (acpi_handle)context; in handle_ioapic_add()
125 ioapic->handle = handle; in handle_ioapic_add()
126 ioapic->gsi_base = (u32)gsi_base; in handle_ioapic_add()
127 INIT_LIST_HEAD(&ioapic->list); in handle_ioapic_add()
141 ioapic->pdev = dev; in handle_ioapic_add()
146 res = &ioapic->res; in handle_ioapic_add()
162 list_add(&ioapic->list, &ioapic_list); in handle_ioapic_add()
185 kfree(ioapic); in handle_ioapic_add()
206 struct acpi_pci_ioapic *ioapic, *tmp; in acpi_ioapic_remove() local
209 list_for_each_entry_safe(ioapic, tmp, &ioapic_list, list) { in acpi_ioapic_remove()
210 if (root->device->handle != ioapic->root_handle) in acpi_ioapic_remove()
213 if (acpi_unregister_ioapic(ioapic->handle, ioapic->gsi_base)) in acpi_ioapic_remove()
216 if (ioapic->pdev) { in acpi_ioapic_remove()
217 pci_release_region(ioapic->pdev, 0); in acpi_ioapic_remove()
218 pci_disable_device(ioapic->pdev); in acpi_ioapic_remove()
219 pci_dev_put(ioapic->pdev); in acpi_ioapic_remove()
220 } else if (ioapic->res.flags && ioapic->res.parent) { in acpi_ioapic_remove()
221 release_resource(&ioapic->res); in acpi_ioapic_remove()
223 list_del(&ioapic->list); in acpi_ioapic_remove()
224 kfree(ioapic); in acpi_ioapic_remove()