Lines Matching +full:pci +full:- +full:domain

1 /*-
50 #include <dev/pci/pcireg.h>
51 #include <dev/pci/pcivar.h>
52 #include <dev/pci/pci_private.h>
61 ACPI_MODULE_NAME("PCI")
69 ACPI_SERIAL_DECL(pci_powerstate, "ACPI PCI power methods");
71 /* Be sure that ACPI and PCI power states are equivalent. */
96 static int acpi_pci_get_domain(device_t dev, device_t child, int *domain);
114 /* PCI interface */
122 DEFINE_CLASS_1(pci, acpi_pci_driver, acpi_pci_methods, sizeof(struct pci_softc),
126 MODULE_DEPEND(acpi_pci, pci, 1, 1, 1);
135 return (&dinfo->ap_dinfo); in acpi_pci_alloc_devinfo()
146 *result = (uintptr_t)dinfo->ap_handle; in acpi_pci_read_ivar()
149 *result = (uintptr_t)dinfo->ap_flags; in acpi_pci_read_ivar()
163 dinfo->ap_handle = (ACPI_HANDLE)value; in acpi_pci_write_ivar()
166 dinfo->ap_flags = (int)value; in acpi_pci_write_ivar()
177 if (acpi_get_device(dinfo->ap_handle) == child) in acpi_pci_child_deleted()
178 AcpiDetachData(dinfo->ap_handle, acpi_fake_objhandler); in acpi_pci_child_deleted()
190 if (dinfo->ap_handle) { in acpi_pci_child_location_method()
191 sbuf_printf(sb, " handle=%s", acpi_name(dinfo->ap_handle)); in acpi_pci_child_location_method()
192 if (ACPI_SUCCESS(acpi_GetInteger(dinfo->ap_handle, "_PXM", &pxm))) { in acpi_pci_child_location_method()
211 * Fetch the NUMA domain for the given device 'dev'.
213 * If a device has a _PXM method, map that to a NUMA domain.
215 * If there's no matching domain or the domain cannot be
219 acpi_pci_get_domain(device_t dev, device_t child, int *domain) in acpi_pci_get_domain() argument
225 *domain = d; in acpi_pci_get_domain()
228 if (d == -1) in acpi_pci_get_domain()
232 return (bus_generic_get_domain(dev, child, domain)); in acpi_pci_get_domain()
236 * PCI power manangement
250 * We set the state using PCI Power Management outside of setting in acpi_pci_set_powerstate_method()
252 * first shut it down using PCI, and then using ACPI, which lets ACPI in acpi_pci_set_powerstate_method()
255 * it can enable any needed Power Resources before changing the PCI in acpi_pci_set_powerstate_method()
290 * Occasionally a PCI device may show up as an ACPI device in acpi_pci_update_device()
292 * second PCI-ISA bridge that has a _HID for an in acpi_pci_update_device()
293 * acpi_sysresource device.) In that case, leave ACPI-CA's in acpi_pci_update_device()
294 * device data pointing at the ACPI-enumerated device. in acpi_pci_update_device()
306 * Update ACPI-CA to use the PCI enumerated device_t for this handle. in acpi_pci_update_device()
310 printf("WARNING: Unable to attach object data to %s - %s\n", in acpi_pci_update_device()
331 if (dinfo->ap_dinfo.cfg.func == func && in acpi_pci_save_handle()
332 dinfo->ap_dinfo.cfg.slot == slot) { in acpi_pci_save_handle()
333 dinfo->ap_handle = handle; in acpi_pci_save_handle()
345 * PCI devices are added via the bus scan in the normal PCI in acpi_pci_child_added()
352 * XXX: Sometimes PCI devices show up in the ACPI namespace that in acpi_pci_child_added()
366 device_set_desc(dev, "ACPI PCI bus"); in acpi_pci_probe()