diff options
Diffstat (limited to 'sys/arm/mv/mv_sata.c')
-rw-r--r-- | sys/arm/mv/mv_sata.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/sys/arm/mv/mv_sata.c b/sys/arm/mv/mv_sata.c index a607298..13ae1e0 100644 --- a/sys/arm/mv/mv_sata.c +++ b/sys/arm/mv/mv_sata.c @@ -48,6 +48,8 @@ __FBSDID("$FreeBSD$"); #include <sys/ata.h> #include <dev/ata/ata-all.h> +#include <dev/ofw/ofw_bus.h> +#include <dev/ofw/ofw_bus_subr.h> #include "ata_if.h" @@ -173,7 +175,7 @@ static driver_t sata_driver = { devclass_t sata_devclass; -DRIVER_MODULE(sata, mbus, sata_driver, sata_devclass, 0, 0); +DRIVER_MODULE(sata, simplebus, sata_driver, sata_devclass, 0, 0); MODULE_VERSION(sata, 1); MODULE_DEPEND(sata, ata, 1, 1, 1); @@ -183,13 +185,12 @@ sata_probe(device_t dev) struct sata_softc *sc; uint32_t d, r; + if (!ofw_bus_is_compatible(dev, "mrvl,sata")) + return (ENXIO); + soc_id(&d, &r); sc = device_get_softc(dev); - /* No SATA controller on the 88F5281 SoC */ - if (d == MV_DEV_88F5281) - return (ENXIO); - switch(d) { case MV_DEV_88F5182: sc->sc_version = 1; |