summaryrefslogtreecommitdiffstats
path: root/sys/sys/bus.h
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2014-10-09 05:33:25 +0000
committeradrian <adrian@FreeBSD.org>2014-10-09 05:33:25 +0000
commitb0c040ce1809e237325c92cba14987d352f8ddbc (patch)
treeca93e6e4f9d2b5f8feafadeea80a3dd18ad3c56c /sys/sys/bus.h
parent5dee4f91b50b08745e65149ff2d116be63b5bd50 (diff)
downloadFreeBSD-src-b0c040ce1809e237325c92cba14987d352f8ddbc.zip
FreeBSD-src-b0c040ce1809e237325c92cba14987d352f8ddbc.tar.gz
Add a bus method to fetch the VM domain for the given device/bus.
* Add a bus_if.m method - get_domain() - returning the VM domain or ENOENT if the device isn't in a VM domain; * Add bus methods to print out the domain of the device if appropriate; * Add code in srat.c to save the PXM -> VM domain mapping that's done and expose a function to translate VM domain -> PXM; * Add ACPI and ACPI PCI methods to check if the bus has a _PXM attribute and if so map it to the VM domain; * (.. yes, this works recursively.) * Have the pci bus glue print out the device VM domain if present. Note: this is just the plumbing to start enumerating information - it doesn't at all modify behaviour. Differential Revision: D906 Reviewed by: jhb Sponsored by: Norse Corp
Diffstat (limited to 'sys/sys/bus.h')
-rw-r--r--sys/sys/bus.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/sys/bus.h b/sys/sys/bus.h
index f457905..7a2e56b5 100644
--- a/sys/sys/bus.h
+++ b/sys/sys/bus.h
@@ -331,6 +331,7 @@ struct resource_list *
bus_generic_get_resource_list (device_t, device_t);
void bus_generic_new_pass(device_t dev);
int bus_print_child_header(device_t dev, device_t child);
+int bus_print_child_domain(device_t dev, device_t child);
int bus_print_child_footer(device_t dev, device_t child);
int bus_generic_print_child(device_t dev, device_t child);
int bus_generic_probe(device_t dev);
@@ -364,6 +365,8 @@ int bus_generic_teardown_intr(device_t dev, device_t child,
int bus_generic_write_ivar(device_t dev, device_t child, int which,
uintptr_t value);
+int bus_generic_get_domain(device_t dev, device_t child, int *domain);
+
/*
* Wrapper functions for the BUS_*_RESOURCE methods to make client code
* a little simpler.
OpenPOWER on IntegriCloud