[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4AB80646.6020008@imap.cc>
Date: Tue, 22 Sep 2009 01:03:34 +0200
From: Tilman Schmidt <tilman@...p.cc>
To: Alan Stern <stern@...land.harvard.edu>
CC: Matthias Geissert <matthias.geissert@....de>,
Greg KH <greg@...ah.com>, USB list <linux-usb@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: Status of Bug 8094 - ipaq oops on connecting "Vodafone VPA-II"
?
Am 21.09.2009 03:59 schrieb Alan Stern:
> Here's a patch which ought to fix the oops. I trust it won't cause
> any existing devices to start misbehaving. Tilman and Matthias, please
> verify that this works okay on your systems.
It does fix the oops for me. The lines:
ipaq 2-2:1.0: usb_probe_interface
ipaq 2-2:1.0: usb_probe_interface - got id
ipaq 2-2:1.0: PocketPC PDA converter detected
are now followed by
ipaq: probe of 2-2:1.0 failed with error -5
and I end up with only a single
usb 2-2: PocketPC PDA converter now attached to ttyUSB0
instead of two (ttyUSB0 and ttyUSB1) previously.
The device still doesn't work because now rndis_host (which without
the patch didn't even get a chance to look at the interface) complains:
rndis_host 2-2:1.0: usb_probe_interface
rndis_host 2-2:1.0: usb_probe_interface - got id
rndis_host: probe of 2-2:1.0 failed with error -16
But that's a different story which I'll investigate a bit further
on my own before (if necessary) starting a discussion here.
So from my point of view the patch is fine.
Thanks,
Tilman
> A better approach might be to test the bInterfaceClass value, but I
> don't know if that would work; there might be some devices using a
> strange value.
>
> Alan Stern
>
>
>
> Index: usb-2.6/drivers/usb/serial/ipaq.c
> ===================================================================
> --- usb-2.6.orig/drivers/usb/serial/ipaq.c
> +++ usb-2.6/drivers/usb/serial/ipaq.c
> @@ -966,6 +966,15 @@ static int ipaq_calc_num_ports(struct us
> static int ipaq_startup(struct usb_serial *serial)
> {
> dbg("%s", __func__);
> +
> + /* Some of the devices in ipaq_id_table[] are composite, and we
> + * shouldn't bind to all the interfaces. This test will rule out
> + * some obviously invalid possibilities.
> + */
> + if (serial->num_bulk_in < serial->num_ports ||
> + serial->num_bulk_out < serial->num_ports)
> + return -ENODEV;
> +
> if (serial->dev->actconfig->desc.bConfigurationValue != 1) {
> /*
> * FIXME: HP iPaq rx3715, possibly others, have 1 config that
>
--
Tilman Schmidt E-Mail: tilman@...p.cc
Bonn, Germany
Diese Nachricht besteht zu 100% aus wiederverwerteten Bits.
Ungeöffnet mindestens haltbar bis: (siehe Rückseite)
Download attachment "signature.asc" of type "application/pgp-signature" (255 bytes)
Powered by blists - more mailing lists