This patch fixes the panic according to my tests:

diff --git a/sys/dev/usbmisc/uchcom/uchcom.c b/sys/dev/usbmisc/uchcom/uchcom.c
index 353552e..d925d9c 100644
--- a/sys/dev/usbmisc/uchcom/uchcom.c
+++ b/sys/dev/usbmisc/uchcom/uchcom.c
@@ -276,6 +276,7 @@ uchcom_attach(device_t self)
        sc->sc_intr_size = endpoints.ep_intr_size;

        /* setup ucom layer */
+       ucom->sc_parent = sc;
        ucom->sc_portno = UCOM_UNK_PORTNO;
        ucom->sc_bulkin_no = endpoints.ep_bulkin;
        ucom->sc_bulkout_no = endpoints.ep_bulkout;


Now I can use tip and cu and minicom on /dev/ucom0 without panicing the system. But still it won't really work. I get such messages in dmesg:
ucom0: ucomreadcb: IOERROR
ucom0: ucomreadcb: IOERROR
ucom0: ucomreadcb: IOERROR
ucom0: ucomreadcb: CANCELLED
ucom0: cannot reset: IOERROR

and

putc to a clist with no reserved cblocks

I found an error description for FBSD and another driver that seems match otherwise:
http://groups.google.com/group/mailing.freebsd.stable/browse_thread/thread/27b3ebcdd9cf1e00

But I am not really getting much out of that. Maybe someone could read through that and evaluate if this helps in my case?

Thanks a lot in advance

Jan






Reply via email to