diff options
Diffstat (limited to 'sys/dev/usb/uhub.c')
-rw-r--r-- | sys/dev/usb/uhub.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/dev/usb/uhub.c b/sys/dev/usb/uhub.c index 04c4054..5749f77 100644 --- a/sys/dev/usb/uhub.c +++ b/sys/dev/usb/uhub.c @@ -456,9 +456,14 @@ uhub_disconnect_port(up) struct softc { /* all softc begin like this */ bdevice sc_dev; }; + struct softc *sc; + struct softc *scp; - struct softc *sc = (struct softc *)dev->softc; - struct softc *scp = (struct softc *)up->parent->softc; + if (!dev) /* no device driver attached at port */ + return; + + sc = (struct softc *)dev->softc; + scp = (struct softc *)up->parent->softc; DPRINTFN(3,("uhub_disconnect_port: up=%p dev=%p port=%d\n", up, dev, up->portno)); |