svn commit: r339632 - head/sys/dev/dpaa

Justin Hibbits jhibbits at FreeBSD.org
Tue Oct 23 01:56:53 UTC 2018


Author: jhibbits
Date: Tue Oct 23 01:56:52 2018
New Revision: 339632
URL: https://svnweb.freebsd.org/changeset/base/339632

Log:
  dpaa: Mark BMan and QMan as earlier driver modules
  
  The BMan softc must exist when dtsec devices are created, else a NULL
  pointer is dereferenced.  QMan likely as well.  Until now, we have relied on
  order within the fdt parsing to attach correctly, but this obviously is not
  foolproof.  Mark these as BUS_PASS_SUPPORTDEV so they're probed and attached
  explicitly before dtsec devices.

Modified:
  head/sys/dev/dpaa/bman_fdt.c
  head/sys/dev/dpaa/qman_fdt.c

Modified: head/sys/dev/dpaa/bman_fdt.c
==============================================================================
--- head/sys/dev/dpaa/bman_fdt.c	Tue Oct 23 01:42:43 2018	(r339631)
+++ head/sys/dev/dpaa/bman_fdt.c	Tue Oct 23 01:56:52 2018	(r339632)
@@ -68,7 +68,8 @@ static driver_t bman_driver = {
 };
 
 static devclass_t bman_devclass;
-DRIVER_MODULE(bman, simplebus, bman_driver, bman_devclass, 0, 0);
+EARLY_DRIVER_MODULE(bman, simplebus, bman_driver, bman_devclass, 0, 0,
+    BUS_PASS_SUPPORTDEV);
 
 static int
 bman_fdt_probe(device_t dev)

Modified: head/sys/dev/dpaa/qman_fdt.c
==============================================================================
--- head/sys/dev/dpaa/qman_fdt.c	Tue Oct 23 01:42:43 2018	(r339631)
+++ head/sys/dev/dpaa/qman_fdt.c	Tue Oct 23 01:56:52 2018	(r339632)
@@ -68,7 +68,8 @@ static driver_t qman_driver = {
 };
 
 static devclass_t qman_devclass;
-DRIVER_MODULE(qman, simplebus, qman_driver, qman_devclass, 0, 0);
+EARLY_DRIVER_MODULE(qman, simplebus, qman_driver, qman_devclass, 0, 0,
+    BUS_PASS_SUPPORTDEV);
 
 static int
 qman_fdt_probe(device_t dev)


More information about the svn-src-head mailing list