On Wednesday 04 April 2007 19:41, Mark Atkinson wrote: > I get the following error when trying to compile the proposed usb4bsd stack > against current. > > In file included from /usr/src/sys/dev/usb/ehci.c:67: > /usr/src/sys/dev/usb/usb_port.h:293:1: "msleep" redefined > In file included from /usr/src/sys/dev/usb/ehci.c:58: > /usr/src/sys/sys/systm.h:313:1: this is the location of the previous > definition > *** Error code 1 > > Sure enough, it is intentionally redefined: > > sys/dev/usb/usb_port.h:290-293 > > /* preliminary fix for a bug in msleep on FreeBSD, > * which cannot sleep with Giant: > */ > #define msleep(i,m,p,w,t) msleep(i,(((m) == &Giant) ? NULL : (m)),p,w,t)
When I integrate my driver against FreeBSD-7 current, I will add some "#if" statements for those issues. Until further: In /sys/dev/usb/usb_port.h, use the following: /* preliminary fix for a bug in msleep on FreeBSD, * which cannot sleep with Giant: */ #undef msleep #define msleep(i,m,p,w,t) _sleep(i,(((m) == &Giant) ? \ NULL : &(m)->mtx_object),p,w,t) After this patch you have to insert a NULL argument, to all bus_setup_intr() functions you find in the files /sys/dev/usb/*pci.c like shown below ? error = bus_setup_intr(dev, sc->sc_irq_res, INTR_TYPE_TTY, - si_intr, sc, &ih); + NULL, si_intr, sc, &ih); Hope that is not too much patching. --HPS _______________________________________________ freebsd-usb@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-usb To unsubscribe, send any mail to "[EMAIL PROTECTED]"