Re: ucom0: could not set data multiplex mode

2007-06-06 Thread Махматханов Руслан Казб екович

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(0x), 
Intel(0x), 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.



--
С уважением,
Махматханов Руслан Казбекович

--- /usr/src/sys/dev/usb/usbdevsWed 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.cWed 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,
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: ucom0: could not set data multiplex mode

2007-06-06 Thread Nikolay Pavlov
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(0x), 
 Intel(0x), 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 = 

Re: ucom0: could not set data multiplex mode

2007-06-06 Thread Hans Petter Selasky
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(0x),
   Intel(0x), 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 

Re: ucom0: could not set data multiplex mode

2007-06-06 Thread Nikolay Pavlov
On Wednesday,  6 June 2007 at 17:51:34 +0300, Alexander Motin wrote:
 Nikolay Pavlov wrote:
  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(0x), 
  Intel(0x), 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:
  
  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:
 
   
  I don't know who is the right person regarding this question.
  May be the maintainer of the mpd port knows?
  
  Alexander?
 
 It's a pity, but tty and ng_tty code is still a white region on my
 FreeBSD world map. I have not looked there deep yet and I have no USB
 modem to test it.
 
 I think you should ask somebody of previous ng_tty committers.
 
 -- 
 Alexander Motin [EMAIL PROTECTED]
 Optima Telecom

Ok. The last one person i know how can throw the light upon this is Julian.
If he doesn't know anything regarding this i will submit a PR for future 
investigations.

-- 
==  
- Best regards, Nikolay Pavlov. ---
==  

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: ucom0: could not set data multiplex mode

2007-06-06 Thread Julian Elischer

Nikolay Pavlov wrote:

On Wednesday,  6 June 2007 at 17:51:34 +0300, Alexander Motin wrote:




Ok. The last one person i know how can throw the light upon this is Julian.
If he doesn't know anything regarding this i will submit a PR for future 
investigations.





I haven't been following..
can someone summarise?


also: My ISP wouldn't let me send to the names in cyrilic..

please forward..

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


WARNING: attempt to net_add_domain(netgraph) after domainfinalize() was [ucom0: could not set data multiplex mode]

2007-06-06 Thread Nikolay Pavlov
On Wednesday,  6 June 2007 at 23:37:29 +0300, Nikolay Pavlov wrote:
 On Wednesday,  6 June 2007 at 11:59:41 -0700, Julian Elischer wrote:
  Nikolay Pavlov wrote:
  Here is the initial email about the non-sleepable locks held issue.
  I have got it with my CDMA USB modem in mpd.
  [...]
  
  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
  [...]
  
  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: 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
  
  it looks as if the locking in ng_tty.c is less that well thought out.
  
  I am not an expert in the tty subsystem, but it is possible that the 
  ttyflush call in ngt_open() might be moved out from under the NGTLOCK() 
  call..
  
  certainly you need to examine what is needed there.
  
  maybe a different way of serialising the flush is needed.
  
  I can't look at it now, but I think someone should be able to follow the 
  code to see if ttyflush needs to be locked
  like that.
 
 Ok. Julian i'll submit a PR regarding this problem.
 

http://www.freebsd.org/cgi/query-pr.cgi?pr=113432
Done. 

-- 
==  
- Best regards, Nikolay Pavlov. ---
==  

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: ucom0: could not set data multiplex mode

2007-06-02 Thread Nikolay Pavlov
On Thursday, 31 May 2007 at  1:04:36 -0600, M. Warner Losh wrote:
 In message: [EMAIL PROTECTED]
 Nikolay Pavlov [EMAIL PROTECTED] writes:
 : On Monday, 28 May 2007 at 12:39:44 +0300, Nikolay Pavlov wrote:
 :  Hi folks. 
 :  I have an issue with CCU-550 CDMA modem
 :  (http://www.cmotech.com/eproduct6-1.htm) on recent current. 
 :  Every time i am reattaching it i see this error:
 :  ucom0: could not set data multiplex mode 
 :  
 :  So in order to work with it i have to reboot after each detache
 :  procedure. The only known workaround for this is to delete the 
 :  goto bad; code in /usr/src/sys/dev/usb/umodem.c:
 :  
 :  printf(%s: could not set data multiplex mode\n,
 :  devname);
 :  goto bad;
 :  
 :  Could someone comment on this?
 :  
 :  P.S. Please cc me, becuase i am not subscribe to freebsd-usb or
 :  freebsd-mobile
 :  
 : 
 : May be i should send this to maintainer..?
 
 I thought that NetBSD did something clever in this condition, but it
 doesn't.  Try adding the device to usb_quirks.c.  You'll need an entry
 like the following:
 
  { USB_VENDOR_METRICOM, USB_PRODUCT_METRICOM_RICOCHET_GS,
   0x100, { UQ_ASSUME_CM_OVER_DATA }},

Thanks for response Warner. I want to check the usb_quirks variant
first. Could you please advise me on what this line should be if i have
this on dmesg:

ucom0: CMOTECH CO., LTD. CMOTECH CDMA
Technologies, class 2/0, rev 2.00/0.00, addr 2 on uhub1
ucom0: CMOTECH CO., LTD. CMOTECH CDMA
Technologies, rev 2.00/0.00, addr 2, iclass 2/2
ucom0: data interface 1, has CM over data, has break
ucom0: status change notification available


 
 for whatever values your CCU-550 CDMA modem has.  alternatively, you
 could try the following patch, which may be lame:
 
 Index: umodem.c
 ===
 RCS file: /home/ncvs/src/sys/dev/usb/umodem.c,v
 retrieving revision 1.60
 diff -u -r1.60 umodem.c
 --- umodem.c  7 Sep 2006 00:06:42 -   1.60
 +++ umodem.c  31 May 2007 07:03:49 -
 @@ -279,7 +279,6 @@
   usb_cdc_cm_descriptor_t *cmd;
   char *devinfo = NULL;
   const char *devname;
 - usbd_status err;
   int data_ifcno;
   int i;
   struct ucom_softc *ucom;
 @@ -373,16 +372,8 @@
   } else {
   if (sc-sc_cm_cap  USB_CDC_CM_OVER_DATA) {
   if (sc-sc_acm_cap  USB_CDC_ACM_HAS_FEATURE)
 - err = umodem_set_comm_feature(sc,
 - UCDC_ABSTRACT_STATE, UCDC_DATA_MULTIPLEXED);
 - else
 - err = 0;
 - if (err) {
 - printf(%s: could not set data multiplex 
 mode\n,
 - devname);
 - goto bad;
 - }
 - sc-sc_cm_over_data = 1;
 + umodem_set_comm_feature(sc,
 + UCDC_ABSTRACT_STATE, 
 UCDC_DATA_MULTIPLEXED);sc-sc_cm_over_data = 1;
   }
   }
  
 
 this patch just feels wrong to me, but I suspect it will just work.
 
 
 Warner

-- 
==  
- Best regards, Nikolay Pavlov. ---
==  

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: ucom0: could not set data multiplex mode

2007-05-31 Thread M. Warner Losh
In message: [EMAIL PROTECTED]
Nikolay Pavlov [EMAIL PROTECTED] writes:
: On Monday, 28 May 2007 at 12:39:44 +0300, Nikolay Pavlov wrote:
:  Hi folks. 
:  I have an issue with CCU-550 CDMA modem
:  (http://www.cmotech.com/eproduct6-1.htm) on recent current. 
:  Every time i am reattaching it i see this error:
:  ucom0: could not set data multiplex mode 
:  
:  So in order to work with it i have to reboot after each detache
:  procedure. The only known workaround for this is to delete the 
:  goto bad; code in /usr/src/sys/dev/usb/umodem.c:
:  
:  printf(%s: could not set data multiplex mode\n,
:  devname);
:  goto bad;
:  
:  Could someone comment on this?
:  
:  P.S. Please cc me, becuase i am not subscribe to freebsd-usb or
:  freebsd-mobile
:  
: 
: May be i should send this to maintainer..?

I thought that NetBSD did something clever in this condition, but it
doesn't.  Try adding the device to usb_quirks.c.  You'll need an entry
like the following:

 { USB_VENDOR_METRICOM, USB_PRODUCT_METRICOM_RICOCHET_GS,
0x100, { UQ_ASSUME_CM_OVER_DATA }},

for whatever values your CCU-550 CDMA modem has.  alternatively, you
could try the following patch, which may be lame:

Index: umodem.c
===
RCS file: /home/ncvs/src/sys/dev/usb/umodem.c,v
retrieving revision 1.60
diff -u -r1.60 umodem.c
--- umodem.c7 Sep 2006 00:06:42 -   1.60
+++ umodem.c31 May 2007 07:03:49 -
@@ -279,7 +279,6 @@
usb_cdc_cm_descriptor_t *cmd;
char *devinfo = NULL;
const char *devname;
-   usbd_status err;
int data_ifcno;
int i;
struct ucom_softc *ucom;
@@ -373,16 +372,8 @@
} else {
if (sc-sc_cm_cap  USB_CDC_CM_OVER_DATA) {
if (sc-sc_acm_cap  USB_CDC_ACM_HAS_FEATURE)
-   err = umodem_set_comm_feature(sc,
-   UCDC_ABSTRACT_STATE, UCDC_DATA_MULTIPLEXED);
-   else
-   err = 0;
-   if (err) {
-   printf(%s: could not set data multiplex 
mode\n,
-   devname);
-   goto bad;
-   }
-   sc-sc_cm_over_data = 1;
+   umodem_set_comm_feature(sc,
+   UCDC_ABSTRACT_STATE, 
UCDC_DATA_MULTIPLEXED);sc-sc_cm_over_data = 1;
}
}
 

this patch just feels wrong to me, but I suspect it will just work.


Warner
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: ucom0: could not set data multiplex mode

2007-05-30 Thread Nikolay Pavlov
On Monday, 28 May 2007 at 12:39:44 +0300, Nikolay Pavlov wrote:
 Hi folks. 
 I have an issue with CCU-550 CDMA modem
 (http://www.cmotech.com/eproduct6-1.htm) on recent current. 
 Every time i am reattaching it i see this error:
 ucom0: could not set data multiplex mode 
 
 So in order to work with it i have to reboot after each detache
 procedure. The only known workaround for this is to delete the 
 goto bad; code in /usr/src/sys/dev/usb/umodem.c:
 
 printf(%s: could not set data multiplex mode\n,
 devname);
 goto bad;
 
 Could someone comment on this?
 
 P.S. Please cc me, becuase i am not subscribe to freebsd-usb or
 freebsd-mobile
 

May be i should send this to maintainer..?

-- 
==  
- Best regards, Nikolay Pavlov. ---
==  

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: ucom0: could not set data multiplex mode

2007-05-28 Thread Hans Petter Selasky
On Monday 28 May 2007 11:39, Nikolay Pavlov wrote:
 Hi folks.
 I have an issue with CCU-550 CDMA modem
 (http://www.cmotech.com/eproduct6-1.htm) on recent current.
 Every time i am reattaching it i see this error:
 ucom0: could not set data multiplex mode

 So in order to work with it i have to reboot after each detache
 procedure. The only known workaround for this is to delete the
 goto bad; code in /usr/src/sys/dev/usb/umodem.c:

 printf(%s: could not set data multiplex mode\n,
 devname);
 goto bad;

 Could someone comment on this?

 P.S. Please cc me, becuase i am not subscribe to freebsd-usb or
 freebsd-mobile

I'm not sure if it will help, but there is a new USB stack that you can try:

http://www.turbocat.net/~hselasky/usb4bsd

Download the SVN version. I recommend installing on FreeBSD 6-stable, hence 
there is a small bug in the memory allocation code on FreeBSD 7-current, that 
will cause regular panics.

--HPS
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to [EMAIL PROTECTED]