On Wednesday 06 June 2007 16:28, Nikolay Pavlov wrote: > On Wednesday, 6 June 2007 at 13:48:43 +0400, Махматханов Руслан Казбекович wrote: > > Nikolay Pavlov пишет: > > >Hi Warner and Ruslan. Warner i have found that Ruslan is the originator > > > of the patches for umodem.c: > > > http://www.freebsd.org/cgi/query-pr.cgi?pr=109838 > > >So there is already a few CMOTECH devices there. In any case guys here > > > is my "usbdevs -v" output: Controller /dev/usb0: > > >addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), > > > Intel(0x0000), rev 1.00 port 1 addr 2: full speed, power 100 mA, config > > > 1, CMOTECH CDMA Technologies(0x5533), CMOTECH CO., LTD.(0x16d8), rev > > > 0.00 port 2 powered > > >I am open to any test ;) > > > > Please, try attached patch: > > > > # cd /usr/src/sys/dev/usb > > # patch < /path/to/ccu550.diff > > > > Then rebuild and reinstall kernel, reboot and try to use CCU550 with that > > new kernel. > > > > Patch is applying cleanly against in -CURRENT: > > > > - usb_quirks.c 1.41.2.8 > > - usbdevs 1.296 > > > > so update your sources if you have earlier versions of this files or > > adapt this patch for your files versions. > > Yes. This patch works for me. Thank you Ruslan. I can attach and detach > the device for now: > > Jun 6 17:00:00 orion kernel: ucom0: <CMOTECH CO., LTD. CMOTECH CDMA > Technologies, class 2/0, rev 2.00/0.00, addr 2> on uhub1 Jun 6 17:00:00 > orion kernel: ucom0: CMOTECH CO., LTD. CMOTECH CDMA Technologies, rev > 2.00/0.00, addr 2, iclass 2/2 Jun 6 17:00:00 orion kernel: ucom0: data > interface 1, has CM over data, has break Jun 6 17:00:00 orion kernel: > ucom0: status change notification available > > Jun 6 17:02:08 orion kernel: ucom0: at uhub1 port 1 (addr 2) disconnected > Jun 6 17:02:08 orion kernel: ucom0: detached > > Jun 6 17:02:44 orion root: Unknown USB device: vendor 0x16d8 product > 0x5533 bus uhub1 Jun 6 17:02:44 orion kernel: ucom0: <CMOTECH CO., LTD. > CMOTECH CDMA Technologies, class 2/0, rev 2.00/0.00, addr 2> on uhub1 Jun > 6 17:02:44 orion kernel: ucom0: CMOTECH CO., LTD. CMOTECH CDMA > Technologies, rev 2.00/0.00, addr 2, iclass 2/2 Jun 6 17:02:44 orion > kernel: ucom0: data interface 1, has CM over data, has break Jun 6 > 17:02:44 orion kernel: ucom0: status change notification available > > And it works. :) Is this possible to commit this Warner? > > However i have found one issue. If i am trying to detach it while mpd > session is running i see this message from kernel: > > Jun 6 17:03:04 orion kernel: WARNING: attempt to net_add_domain(netgraph) > after domainfinalize() Jun 6 17:03:09 orion kernel: Sleeping on "usbdly" > with the following non-sleepable locks held: Jun 6 17:03:09 orion kernel: > exclusive sleep mutex ng_tty node+queue r = 0 (0xc712b6a0) locked @ > /usr/src/sys/modules/netgraph/tty/../../../netgraph/ng_tt y.c:207 > Jun 6 17:03:09 orion kernel: KDB: stack backtrace: > Jun 6 17:03:09 orion kernel: > db_trace_self_wrapper(c0a2f828,e69179d8,c07798cd,c0a2fbeb,e69179ec,...) at > db_trace_self_wrapper+0x26 Jun 6 17:03:09 orion kernel: > kdb_backtrace(c0a2fbeb,e69179ec,4,1,0,...) at kdb_backtrace+0x29 Jun 6 > 17:03:09 orion kernel: witness_warn(5,0,c0a2d773,c0a21ac6,0,...) at > witness_warn+0x1cd Jun 6 17:03:09 orion kernel: > _sleep(c0b36e14,0,0,c0a21ac6,3,...) at _sleep+0x5f Jun 6 17:03:09 orion > kernel: pause(c0a21ac6,3,e6917a7c,c06b7ae3,c4002000,...) at pause+0x47 Jun > 6 17:03:09 orion kernel: > usb_delay_ms(c4002000,2,c4e23e98,c0adc224,c7109c62,...) at > usb_delay_ms+0x5e Jun 6 17:03:09 orion kernel: > uhci_abort_xfer(e6917a98,c06c831e,c68efc00,c4a08700,c4008800,...) at > uhci_abort_xfer+0x163 Jun 6 17:03:09 orion kernel: > uhci_device_bulk_abort(c68efc00,c4a08700,c4008800,e6917aa4,c0d0adc3,...) at > uhci_device_bulk_abort+0x10 Jun 6 17:03:09 orion kernel: > usbd_abort_pipe(c694dc80,e6917ab8,c0d0b56f,c4008800,3,...) at > usbd_abort_pipe+0x1e Jun 6 17:03:09 orion kernel: > ucomstopread(c4008800,3,2,e6917ad4,c0788436,...) at ucomstopread+0x23 Jun > 6 17:03:09 orion kernel: ucomstop(c4008800,3,c712b680,0,c712b6a0,...) at > ucomstop+0x5f Jun 6 17:03:09 orion kernel: > ttyflush(c4008800,3,c7142095,c71420bd,1,...) at ttyflush+0x46 Jun 6 > 17:03:09 orion kernel: ngt_open(c5a36100,c4008800,368,367,c0b3d494,...) at > ngt_open+0x16b Jun 6 17:03:09 orion kernel: > ttioctl(c4008800,8004741b,c6732000,7,c4e23e00,...) at ttioctl+0xdf8 Jun 6 > 17:03:09 orion kernel: ttyioctl(c5a36100,8004741b,c6732000,7,c4e23e00,...) > at ttyioctl+0x11a Jun 6 17:03:09 orion kernel: > giant_ioctl(c5a36100,8004741b,c6732000,7,c4e23e00,...) at giant_ioctl+0x56 > Jun 6 17:03:09 orion kernel: > devfs_ioctl_f(c560e870,8004741b,c6732000,c6512c00,c4e23e00,...) at > devfs_ioctl_f+0xc9 Jun 6 17:03:09 orion kernel: > kern_ioctl(c4e23e00,9,8004741b,c6732000,917d38,...) at kern_ioctl+0x243 Jun > 6 17:03:09 orion kernel: ioctl(c4e23e00,e6917cfc,c,c4e23e00,c0ad6430,...) > at ioctl+0x134 Jun 6 17:03:09 orion kernel: syscall(e6917d38) at > syscall+0x293 > Jun 6 17:03:09 orion kernel: Xint0x80_syscall() at Xint0x80_syscall+0x20 > Jun 6 17:03:09 orion kernel: --- syscall (54, FreeBSD ELF32, ioctl), eip = > 0x283f974f, esp = 0xbf8fd94c, ebp = 0xbf8fdc78 --- Jun 6 17:03:09 orion > kernel: lock order reversal: (Giant after non-sleepable) Jun 6 17:03:09 > orion kernel: 1st 0xc712b6a0 ng_tty node+queue (ng_tty node+queue) @ > /usr/src/sys/modules/netgraph/tty/../../../netgraph/ng_tty.c:207 Jun 6 > 17:03:09 orion kernel: 2nd 0xc0b368c8 Giant (Giant) @ > /usr/src/sys/kern/kern_synch.c:235 Jun 6 17:03:09 orion kernel: KDB: stack > backtrace: > Jun 6 17:03:09 orion kernel: > db_trace_self_wrapper(c0a2f828,e69179b0,c077a74e,c0a31cce,c0b368c8,...) at > db_trace_self_wrapper+0x26 Jun 6 17:03:09 orion kernel: > kdb_backtrace(c0a31cce,c0b368c8,c0a44c78,c0a44c78,c0a2d728,...) at > kdb_backtrace+0x29 Jun 6 17:03:09 orion kernel: > witness_checkorder(c0b368c8,9,c0a2d728,eb,c0a30425,...) at > witness_checkorder+0x6de Jun 6 17:03:09 orion kernel: > _mtx_lock_flags(c0b368c8,0,c0a2d728,eb,0,...) at _mtx_lock_flags+0xbc Jun > 6 17:03:09 orion kernel: _sleep(c0b36e14,0,0,c0a21ac6,3,...) at > _sleep+0x3e9 Jun 6 17:03:09 orion kernel: > pause(c0a21ac6,3,e6917a7c,c06b7ae3,c4002000,...) at pause+0x47 Jun 6 > 17:03:09 orion kernel: > usb_delay_ms(c4002000,2,c4e23e98,c0adc224,c7109c62,...) at > usb_delay_ms+0x5e Jun 6 17:03:09 orion kernel: > uhci_abort_xfer(e6917a98,c06c831e,c68efc00,c4a08700,c4008800,...) at > uhci_abort_xfer+0x163 Jun 6 17:03:09 orion kernel: > uhci_device_bulk_abort(c68efc00,c4a08700,c4008800,e6917aa4,c0d0adc3,...) at > uhci_device_bulk_abort+0x10 Jun 6 17:03:09 orion kernel: > usbd_abort_pipe(c694dc80,e6917ab8,c0d0b56f,c4008800,3,...) at > usbd_abort_pipe+0x1e Jun 6 17:03:09 orion kernel: > ucomstopread(c4008800,3,2,e6917ad4,c0788436,...) at ucomstopread+0x23 Jun > 6 17:03:09 orion kernel: ucomstop(c4008800,3,c712b680,0,c712b6a0,...) at > ucomstop+0x5f Jun 6 17:03:09 orion kernel: > ttyflush(c4008800,3,c7142095,c71420bd,1,...) at ttyflush+0x46 Jun 6 > 17:03:09 orion kernel: ngt_open(c5a36100,c4008800,368,367,c0b3d494,...) at > ngt_open+0x16b Jun 6 17:03:09 orion kernel: > ttioctl(c4008800,8004741b,c6732000,7,c4e23e00,...) at ttioctl+0xdf8 Jun 6 > 17:03:09 orion kernel: ttyioctl(c5a36100,8004741b,c6732000,7,c4e23e00,...) > at ttyioctl+0x11a Jun 6 17:03:09 orion kernel: > giant_ioctl(c5a36100,8004741b,c6732000,7,c4e23e00,...) at giant_ioctl+0x56 > Jun 6 17:03:09 orion kernel: > devfs_ioctl_f(c560e870,8004741b,c6732000,c6512c00,c4e23e00,...) at > devfs_ioctl_f+0xc9 Jun 6 17:03:09 orion kernel: > kern_ioctl(c4e23e00,9,8004741b,c6732000,917d38,...) at kern_ioctl+0x243 Jun > 6 17:03:09 orion kernel: ioctl(c4e23e00,e6917cfc,c,c4e23e00,c0ad6430,...) > at ioctl+0x134 Jun 6 17:03:09 orion kernel: syscall(e6917d38) at > syscall+0x293 > Jun 6 17:03:09 orion kernel: Xint0x80_syscall() at Xint0x80_syscall+0x20 > Jun 6 17:03:09 orion kernel: --- syscall (54, FreeBSD ELF32, ioctl), eip = > 0x283f974f, esp = 0xbf8fd94c, ebp = 0xbf8fdc78 --- Jun 6 17:03:41 orion > kernel: bfe0: link state changed to DOWN > Jun 6 17:04:02 orion kernel: ucom0: ucomreadcb: IOERROR > Jun 6 17:04:02 orion kernel: ucom0: at uhub1 port 1 (addr 2) disconnected > Jun 6 17:04:03 orion kernel: ucom0: detached > > I don't know who is the right person regarding this question. > May be the maintainer of the mpd port knows? > > Alexander? > > > --- /usr/src/sys/dev/usb/usbdevs Wed Jun 6 13:40:36 2007 > > +++ usbdevs Wed Jun 6 13:42:21 2007 > > @@ -830,6 +830,7 @@ > > > > /* CMOTECH products */ > > product CMOTECH CNU510 0x5141 CMOTECH CDMA Technologies USB > > modem > > +product CMOTECH CCU550 0x5533 CDMA 2000 1xRTT/1xEVDO USB modem > > product CMOTECH CNU550 0x5543 CDMA 2000 1xRTT/1xEVDO USB modem > > > > /* Compaq products */ > > --- /usr/src/sys/dev/usb/usb_quirks.c Wed Jun 6 13:40:36 2007 > > +++ usb_quirks.c Wed Jun 6 13:43:06 2007 > > @@ -80,6 +80,8 @@ > > { USB_VENDOR_SILICONPORTALS, USB_PRODUCT_SILICONPORTALS_YAPPHONE, > > 0x100, { > > UQ_AU_INP_ASYNC }}, > > { USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_UN53B, ANY, { UQ_NO_STRINGS > > }}, + { USB_VENDOR_CMOTECH, USB_PRODUCT_CMOTECH_CCU550, > > + ANY, { UQ_ASSUME_CM_OVER_DATA }}, > > { USB_VENDOR_CMOTECH, USB_PRODUCT_CMOTECH_CNU510, > > ANY, { UQ_ASSUME_CM_OVER_DATA }}, > > { USB_VENDOR_CMOTECH, USB_PRODUCT_CMOTECH_CNU550,
Just a side-note. The locking errors you receive most likely will go away if you install the new USB stack (SVN version): http://www.turbocat.net/~hselasky/usb4bsd --HPS _______________________________________________ freebsd-usb@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-usb To unsubscribe, send any mail to "[EMAIL PROTECTED]"