summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/if_udav.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/usb/if_udav.c')
-rw-r--r--sys/dev/usb/if_udav.c28
1 files changed, 16 insertions, 12 deletions
diff --git a/sys/dev/usb/if_udav.c b/sys/dev/usb/if_udav.c
index 457b04d..2b3008d 100644
--- a/sys/dev/usb/if_udav.c
+++ b/sys/dev/usb/if_udav.c
@@ -126,6 +126,7 @@ __FBSDID("$FreeBSD$");
#include <dev/mii/mii.h>
#include <dev/mii/miivar.h>
+#include <dev/usb/usb_port.h>
#include <dev/usb/usb.h>
#include <dev/usb/usbdi.h>
#include <dev/usb/usbdi_util.h>
@@ -150,10 +151,13 @@ USB_DECLARE_DRIVER(udav);
#endif
#if defined(__FreeBSD__)
-static int udav_match(device_t);
-static int udav_attach(device_t);
-static int udav_detach(device_t);
-static void udav_shutdown(device_t);
+static device_probe_t udav_match;
+static device_attach_t udav_attach;
+static device_detach_t udav_detach;
+static device_shutdown_t udav_shutdown;
+static miibus_readreg_t udav_miibus_readreg;
+static miibus_writereg_t udav_miibus_writereg;
+static miibus_statchg_t udav_miibus_statchg;
#endif
static int udav_openpipes(struct udav_softc *);
@@ -174,10 +178,10 @@ static int udav_ifmedia_change(struct ifnet *);
static void udav_ifmedia_status(struct ifnet *, struct ifmediareq *);
static void udav_lock_mii(struct udav_softc *);
static void udav_unlock_mii(struct udav_softc *);
+#if defined(__NetBSD__)
static int udav_miibus_readreg(device_t, int, int);
static void udav_miibus_writereg(device_t, int, int, int);
static void udav_miibus_statchg(device_t);
-#if defined(__NetBSD__)
static int udav_init(struct ifnet *);
#elif defined(__FreeBSD__)
static void udav_init(void *);
@@ -1850,14 +1854,14 @@ udav_miibus_readreg(device_t dev, int phy, int reg)
return (data16);
}
-static void
+static int
udav_miibus_writereg(device_t dev, int phy, int reg, int data)
{
struct udav_softc *sc;
u_int8_t val[2];
if (dev == NULL)
- return;
+ return (0); /* XXX real error? */
sc = USBGETSOFTC(dev);
@@ -1869,14 +1873,14 @@ udav_miibus_writereg(device_t dev, int phy, int reg, int data)
printf("%s: %s: dying\n", device_get_nameunit(sc->sc_dev),
__func__);
#endif
- return;
+ return (0); /* XXX real error? */
}
/* XXX: one PHY only for the internal PHY */
if (phy != 0) {
DPRINTFN(0xff, ("%s: %s: phy=%d is not supported\n",
device_get_nameunit(sc->sc_dev), __func__, phy));
- return;
+ return (0); /* XXX real error? */
}
udav_lock_mii(sc);
@@ -1900,7 +1904,7 @@ udav_miibus_writereg(device_t dev, int phy, int reg, int data)
udav_unlock_mii(sc);
- return;
+ return (0);
}
static void
@@ -1923,7 +1927,7 @@ udav_miibus_statchg(device_t dev)
* Stop all chip I/O so that the kernel's probe routines don't
* get confused by errant DMAs when rebooting.
*/
-static void
+static int
udav_shutdown(device_t dev)
{
struct udav_softc *sc;
@@ -1932,7 +1936,7 @@ udav_shutdown(device_t dev)
udav_stop_task(sc);
- return;
+ return (0);
}
static void
OpenPOWER on IntegriCloud