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 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel