summaryrefslogtreecommitdiffstats
path: root/sys/sys/bus.h
diff options
context:
space:
mode:
authorrstone <rstone@FreeBSD.org>2015-03-10 23:27:13 +0000
committerrstone <rstone@FreeBSD.org>2015-03-10 23:27:13 +0000
commita76e348a4b790b714d72dd53286a81bbef9b5f28 (patch)
treef4bd98022dea28fc45ddb0e266b3e0ede3b1a14a /sys/sys/bus.h
parentc7380868012628ae72d3d9823118d11e58df0681 (diff)
downloadFreeBSD-src-a76e348a4b790b714d72dd53286a81bbef9b5f28.zip
FreeBSD-src-a76e348a4b790b714d72dd53286a81bbef9b5f28.tar.gz
Fix SR-IOV passthrough devices to allow ppt to attach
A late change to the SR-IOV infrastructure broke passthrough of VFs. device_set_devclass() was being used to try to force the ppt driver to attach to the device, but this didn't work because the DF_FIXEDCLASS flag wasn't being set on the device, so the ppt driver probe routine would not match when it returned BUS_NOWILDCARD. Fix this by adding a new device function that both sets the devclass and sets the DF_FIXEDCLASS flag, and use that to force the ppt driver to attach to VFs. Differential Revision: https://reviews.freebsd.org/D2041 Reviewed by: jhb MFC after: 3 weeks
Diffstat (limited to 'sys/sys/bus.h')
-rw-r--r--sys/sys/bus.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/sys/bus.h b/sys/sys/bus.h
index d6dc535..8b1f173 100644
--- a/sys/sys/bus.h
+++ b/sys/sys/bus.h
@@ -522,6 +522,7 @@ void device_quiet(device_t dev);
void device_set_desc(device_t dev, const char* desc);
void device_set_desc_copy(device_t dev, const char* desc);
int device_set_devclass(device_t dev, const char *classname);
+int device_set_devclass_fixed(device_t dev, const char *classname);
int device_set_driver(device_t dev, driver_t *driver);
void device_set_flags(device_t dev, u_int32_t flags);
void device_set_softc(device_t dev, void *softc);
OpenPOWER on IntegriCloud