linux/drivers/misc/cxl
Ian Munsie e4f5fc001a cxl: Do not create vPHB if there are no AFU configuration records
The vPHB model of the cxl kernel API is a hierarchy where the AFU is
represented by the vPHB, and it's AFU configuration records are exposed
as functions under that vPHB. If there are no AFU configuration records
we will create a vPHB with nothing under it, which is a waste of
resources and will opt us into EEH handling despite not having anything
special to handle.

This also does not make sense for cards using the peer model of the cxl
kernel API, where the other functions of the device are exposed via
additional peer physical functions rather than AFU configuration
records. This model will also not work with the existing EEH handling in
the cxl driver, as that is designed around the vPHB model.

Skip creating the vPHB for AFUs without any AFU configuration records,
and opt out of EEH handling for them.

Signed-off-by: Ian Munsie <imunsie@au1.ibm.com>
Reviewed-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2016-07-14 20:26:53 +10:00
..
api.c cxl: Add set and get private data to context struct 2016-06-28 18:35:08 +10:00
base.c cxl: Allow a default context to be associated with an external pci_dev 2016-07-14 20:26:52 +10:00
context.c cxl: Fix NULL pointer dereference on kernel contexts with no AFU interrupts 2016-07-08 22:13:34 +10:00
cxl.h cxl: Allow a default context to be associated with an external pci_dev 2016-07-14 20:26:52 +10:00
debugfs.c cxl: Abstract the differences between the PSL and XSL 2016-06-16 23:08:54 +10:00
fault.c powerpc/mm: Replace _PAGE_USER with _PAGE_PRIVILEGED 2016-05-01 18:32:26 +10:00
file.c cxl: Add mechanism for delivering AFU driver specific events 2016-06-28 18:34:56 +10:00
flash.c cxl: static-ify variables to fix sparse warnings 2016-06-16 22:49:27 +10:00
guest.c cxl: Refine slice error debug messages 2016-07-08 22:22:03 +10:00
hcalls.c cxl: Add tracepoints around the cxl hcall 2016-03-09 23:40:01 +11:00
hcalls.h cxl: Add guest-specific code 2016-03-09 23:36:52 +11:00
irq.c cxl: Refine slice error debug messages 2016-07-08 22:22:03 +10:00
Kconfig cxl: Add mechanism for delivering AFU driver specific events 2016-06-28 18:34:56 +10:00
main.c cxl: Allow a default context to be associated with an external pci_dev 2016-07-14 20:26:52 +10:00
Makefile cxl: Allow a default context to be associated with an external pci_dev 2016-07-14 20:26:52 +10:00
native.c cxl: Refine slice error debug messages 2016-07-08 22:22:03 +10:00
of.c cxl: Add guest-specific code 2016-03-09 23:36:52 +11:00
pci.c cxl: Do not create vPHB if there are no AFU configuration records 2016-07-14 20:26:53 +10:00
phb.c cxl: Allow a default context to be associated with an external pci_dev 2016-07-14 20:26:52 +10:00
sysfs.c cxl: Allow initialization on timebase sync failures 2016-04-22 21:45:44 +10:00
trace.c cxl: Add tracepoints 2015-01-22 17:31:51 +11:00
trace.h cxl: Add tracepoints around the cxl hcall 2016-03-09 23:40:01 +11:00
vphb.c cxl: Do not create vPHB if there are no AFU configuration records 2016-07-14 20:26:53 +10:00