diff options
author | jhb <jhb@FreeBSD.org> | 2018-03-27 20:49:47 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2018-03-27 20:49:47 +0000 |
commit | 92e51dc282e0eb3574d174310913e83c436c2c82 (patch) | |
tree | 8e2fd4beb4e87d18f9c8587cd61061f63eb0b5f0 | |
parent | fedc5174a785b646b1b73db6f5d5a40457d3e86e (diff) | |
download | FreeBSD-src-92e51dc282e0eb3574d174310913e83c436c2c82.zip FreeBSD-src-92e51dc282e0eb3574d174310913e83c436c2c82.tar.gz |
MFC 318387: Add support for child devices that aren't ports.
Invoke any identify routines of child drivers during attach before attaching
children, and delete any remaining devices after deleting ports.
Sponsored by: Chelsio Communications
-rw-r--r-- | sys/dev/cxgbe/t4_main.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index ccc742c..c530e60 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -1179,6 +1179,12 @@ t4_attach(device_t dev) goto done; } + rc = bus_generic_probe(dev); + if (rc != 0) { + device_printf(dev, "failed to probe child drivers: %d\n", rc); + goto done; + } + /* * Ensure thread-safe mailbox access (in debug builds). * @@ -1342,6 +1348,8 @@ t4_detach_common(device_t dev) } } + device_delete_children(dev); + if (sc->flags & FULL_INIT_DONE) adapter_full_uninit(sc); |