One more thing. I added this device to the omninet driver.
lsusb -v shows the device as:
Bus 004 Device 003: ID 0586:1500 ZyXEL Communications Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0586 ZyXEL Communications Corp.
idProduct 0x1500
bcdDevice 0.01
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 46
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x60
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 bytes 8 once
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 bytes 8 once
bInterval 255
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 bytes 64 once
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 bytes 64 once
bInterval 0
Does it recognize this as a modem? Does it matter? The log from vgetty
shows:
07/05 11:14:01 dem vgetty: experimental test release 0.9.32 / with
duplex patch
07/05 11:14:01 dem mgetty: interim release 1.1.35-Feb22
07/05 11:14:01 dem reading generic configuration from config
file /usr/local/etc/mgetty+sendfax/voice.conf
07/05 11:14:01 dem reading program vgetty configuration from config
file /usr/local/etc/mgetty+sendfax/voice.conf
07/05 11:14:01 dem reading port modem configuration from config
file /usr/local/etc/mgetty+sendfax/voice.conf
07/05 11:14:01 dem check for lockfiles
07/05 11:14:01 dem locking the line
07/05 11:14:01 dem tio_get_rs232_lines: TIOCMGET failed: Invalid
argument
07/05 11:14:01 dem WARNING: DSR is off - modem turned off or bad cable?
07/05 11:14:01 dem lowering DTR to reset Modem
07/05 11:14:01 dem TIOCMBIC failed: Invalid argument
07/05 11:14:01 dem send: \d\d\d+++\d\d\dATH0&D3[0d]
07/05 11:14:04 dem waiting for ``OK'' ** found **
07/05 11:14:05 dem send: ATZ2&FS2=255[0d]
07/05 11:14:05 dem waiting for ``OK'' ** found **
07/05 11:14:05 dem send: ATS0=0[0d]
07/05 11:14:05 dem waiting for ``OK'' ** found **
07/05 11:14:05 dem send: AT+FAA=1[0d]
07/05 11:14:05 dem waiting for ``OK'' ** found **
07/05 11:14:05 dem mdm_send: 'ATI'
07/05 11:14:05 dem ZyXEL Omni 56K (Plus/Pro) detected
07/05 11:14:05 dem mdm_send: 'ATI1'
07/05 11:14:05 dem additional info: 'Omni56K Plus 2.02'
07/05 11:14:05 dem mdm_send: 'AT+FCLASS=2.0' -> OK
07/05 11:14:05 dem mdm_send: 'AT+FAA=1;+FCR=1' -> OK
07/05 11:14:05 dem mdm_send: 'AT+FBO=1' -> OK
07/05 11:14:05 dem mdm_send: 'AT+FNR=1,1,1,0' -> OK
07/05 11:14:05 dem mdm_send: 'AT+FLI="1 514 3985099"' -> OK
07/05 11:14:05 dem mdm_send: 'AT+FCC=1,5,0,2,0,0,0,0' -> OK
07/05 11:14:05 dem detecting voice modem type
07/05 11:14:07 dem ZyXEL Omni 56K detected
07/05 11:14:08 dem initializing ZyXEL Omni 56K voice modem
07/05 11:14:09 dem waiting...
The failures are serial-line related. Is there a way to force the
driver to see this as a serial device/modem?
David
On Wed, 2006-07-05 at 10:49 -0400, David Ronis wrote:
> Hi Oliver,
>
>
> You were write, adding
>
> < { USB_DEVICE(0x0586,0x1500), /* ZYZEL OMNI 56K Plus */
> < .driver_info = NO_UNION_NORMAL, /* has no union descriptor */
> < },
>
> to cdc-acm.c leads to a kernel oops as soon as I plug in the USB cable.
> I've pasted the traceback below. I'm going to go back to playing with
> the omninet driver, but I suspect I won't be able to figure out how to
> fix the "broken" features. The reason why I suspected that the acm
> driver would work was because of a report at linux-usb.org, at
>
> http://www.qbik.ch/usb/devices/search_res.php?pattern=zyxel
>
> which has the following entry:
>
> Details for: Zyxel Omni 56K Plus
> Status partially supported
> ( Analog modem, USB and RS232 )
> ( Category: Comm )
>
> ID
> 0x0586:0x1500
> Driver
> acm
> Linux-USB link
> http://www.qbik.ch/usb/devices/showdev.php?id=999
> Vendor link
> http://www.zyxel.com/product/modem/o56kusb.htm
> Comment
> This device is likely already
> supported under a different ID
> ( 0ace:1602 )
> Submitted by
> Erik Romijn ( erik <at> toltech.nl )
> Submitted on
> Wed, 17 Nov 2004 13:42:09 +0100
> Last edited on
> Wed, 17 Nov 2004 13:42:09 +0100
>
> The other ID claims to be supported by the acm driver. In any event,
> the report is probably out of date, and says nothing about getting the
> acm driver to recognize it.
>
> Thanks again for your help.
>
> David
>
> Here's the traceback
>
> Jul 5 10:35:01 ronispc kernel: Oops: 0000 [#1]
> Jul 5 10:35:01 ronispc kernel: SMP
> Jul 5 10:35:01 ronispc kernel: Modules linked in: cdc_acm autofs
> snd_seq_dummy
> snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss
> snd_mixer_oss
> nfsd exportfs lockd sunrpc ipv6 xt_limit ipt_LOG xt_state ip_conntrack
> nfnetlink
> xt_tcpudp iptable_filter ip_tables x_tables ohci_hcd intel_agp
> snd_hda_intel sn
> d_hda_codec snd_pcm snd_timer snd snd_page_alloc usblp uhci_hcd ehci_hcd
> usbcore
> i2c_i801 ohci1394 ieee1394 agpgart
> Jul 5 10:35:01 ronispc kernel: CPU: 1
> Jul 5 10:35:01 ronispc kernel: EIP: 0060:[<f89f7eb7>] Not tainted
> VLI
> Jul 5 10:35:01 ronispc kernel: EFLAGS: 00010246 (2.6.17.3 #32)
> Jul 5 10:35:01 ronispc kernel: EIP is at acm_probe+0x132/0x7ba
> [cdc_acm]
> Jul 5 10:35:01 ronispc kernel: eax: f37a9a00 ebx: f89fa3c0 ecx:
> 00000000
> edx: f37a9a00
> Jul 5 10:35:01 ronispc kernel: esi: 00000000 edi: f89fa3e8 ebp:
> f309fc00
> esp: f26abd80
> Jul 5 10:35:01 ronispc kernel: ds: 007b es: 007b ss: 0068
> Jul 5 10:35:01 ronispc kernel: Process modprobe (pid: 5335,
> threadinfo=f26aa000
> task=f26c1070)
> Jul 5 10:35:01 ronispc kernel: Stack: f309fc00 00000000 f26abddc
> c012a22b 00000
> 000 f37a9a00 f26abd94 c012a237
> Jul 5 10:35:01 ronispc kernel: f26abdc0 c212fe40 00000000
> 00000000 00000
> 000 00000002 00000000 c03e6580
> Jul 5 10:35:01 ronispc kernel: f26abddc c0353d40 f26abe3c
> f374c1c0 f89fa
> 568 f89fa3c0 f37a9a00 f89fa3e8
> Jul 5 10:35:01 ronispc kernel: Call Trace:
> Jul 5 10:35:01 ronispc kernel: <c012a22b> call_usermodehelper_keys
> +0xcb/0xd7
> <c012a237> __call_usermodehelper+0x0/0x6c
> Jul 5 10:35:01 ronispc kernel: <f88ff325> usb_probe_interface
> +0x68/0xa3 [usbco
> re] <c0233c60> driver_probe_device+0x43/0xb3
> Jul 5 10:35:01 ronispc kernel: <c02ee7a2> klist_dec_and_del+0x16/0x1a
> <c0233d
> 44> __driver_attach+0x0/0x79
> Jul 5 10:35:01 ronispc kernel: <c0233dbb> __driver_attach+0x77/0x79
> <c023361c
> > bus_for_each_dev+0x58/0x77
> Jul 5 10:35:01 ronispc kernel: <c0233baa> driver_attach+0x26/0x2a
> <c0233d44>
> __driver_attach+0x0/0x79
> Jul 5 10:35:01 ronispc kernel: <c02331f6> bus_add_driver+0x78/0x149
> <f88ff0ea
> > usb_register_driver+0x6c/0xec [usbcore]
> Jul 5 10:35:01 ronispc kernel: <f89b80d2> acm_init+0xd2/0x103
> [cdc_acm] <c013
> 51ec> sys_init_module+0x139/0x1add
> Jul 5 10:35:01 ronispc kernel: <c02f0b35> __mutex_lock_slowpath
> +0x1da/0x434 <
> f88f70c9> usb_buffer_alloc+0x0/0x2e [usbcore]
> Jul 5 10:35:01 ronispc kernel: <c0102c53> syscall_call+0x7/0xb
> Jul 5 10:35:01 ronispc kernel: Code: ff 89 44 24 14 0f b6 47 04 89 44
> 24 04 89
> 2c 24 e8 5f f1 ef ff 89 c6 8b 4c 24 14 85 c9 0f 84 91 02 00 00 85 c0 0f
> 84 89 02
> 00 00 <8b> 46 04 80 78 05 0a 0f 84 81 00 00 00 8b 54 24 14 8b 42 04 80
> Jul 5 10:35:01 ronispc kernel: EIP: [<f89f7eb7>] acm_probe+0x132/0x7ba
> [cdc_acm
> ] SS:ESP 0068:f26abd80
>
>
> On Wed, 2006-07-05 at 00:51 +0200, Oliver Neukum wrote:
> > Am Dienstag, 4. Juli 2006 23:48 schrieb David Ronis:
> > > Thanks Oliver,
> > >
> > >
> > > On Tue, 2006-07-04 at 21:50 +0200, Oliver Neukum wrote:
> > > > Am Dienstag, 4. Juli 2006 16:44 schrieb David Ronis:
> > > > > Thanks for the reply. The output of lsusb -v follows at the end. As
> > > >
> > > > This device does not report itself to be a modem.
> > >
> > > So presumably there's some simple place to force the driver to recognize
> > > this device? I tried this with the omninet driver (it was trivial to do
> >
> > It wouldn't work, because acm doesn't use the packets omninet uses.
> > The very fact that it works with the omninet driver shows that you are
> > close.
> > If you absolutely insist on trying cdc-acm, it is this list:
> > static struct usb_device_id acm_ids[] = {
> > from drivers/usb/class/cdc-acm.c
> >
> > Do you have traces of this modem working under other operating
> > systems?
> >
> > Regards
> > Oliver
> >
>
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel