Bug#627098: linux-image-2.6.32-5-686: rndis_host fails to recognize usb device
On Fri, Jul 22, 2011 at 02:02:25AM +0200, Ben Hutchings wrote:
> On Sat, 2011-07-16 at 11:59 -0400, Mark Glassberg wrote:
> > On Wed, Jul 13, 2011 at 12:55:44PM +0000, Ben Hutchings wrote:
> > > Can you try a newer version (2.6.39 from testing/unstable or 3.0-rc6 from
> > > experimental)?
> >
> > I don't know if 2.6.39 can be used on my squeeze system, so I burned the
> > first cd of wheeze and installed it. The installer had problems with my
> > usb modem/router, so I finished the install and rebooted without it. I
> > then connected the usb modem/router, but the kernel and/or rndis_host
> > failed.
>
> That's annoying, because we got that device working... but it looks like
> I dropped the bug fix from the Debian package of 2.6.39. However the
> bug fix will be back again in Linux 3.0.
>
> > I then disconnected the usb modem/router and connected the PC Port.
> > Again, it failed. The /var/log/messages file is attached.
> >
> > Please let me know if there are any arguments which should be used with
> > rndis_host or any of the other modules. Also, was it necessary to install
> > wheeze?
>
> It shouldn't be, but you would need to upgrade initramfs-tools and
> linux-base as well as the linux-image-* package.
>
> > And finally, how do I go about using 3.0-rc6?
>
> You would first have to add a line to /etc/apt/sources.list referring to
> a mirror of the 'experimental' suite.
>
> Please can you test the attached patch against the experimental version,
> following the instructions at:
> <http://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-common-official>.
>
> Ben.
>
> --
> Ben Hutchings
> Absolutum obsoletum. (If it works, it's out of date.) - Stafford Beer
> From afa0c8df93e460eabb63aa1afcc044bc000affc5 Mon Sep 17 00:00:00 2001
> From: Ben Hutchings <ben@decadent.org.uk>
> Date: Fri, 22 Jul 2011 01:56:57 +0200
> Subject: [PATCH] rndis_host: Poll status before control channel on 2Wire PC
> Port
>
> Apply the RNDIS_DRIVER_DATA_POLL_STATUS quirk to this device.
>
> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
> ---
> drivers/net/usb/rndis_host.c | 5 +++++
> 1 files changed, 5 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/usb/rndis_host.c b/drivers/net/usb/rndis_host.c
> index 255d6a4..067db14 100644
> --- a/drivers/net/usb/rndis_host.c
> +++ b/drivers/net/usb/rndis_host.c
> @@ -610,6 +610,11 @@ static const struct usb_device_id products [] = {
> USB_CLASS_COMM, 2 /* ACM */, 0x0ff),
> .driver_info = (unsigned long) &rndis_poll_status_info,
> }, {
> + /* 2Wire PC Port */
> + USB_DEVICE_AND_INTERFACE_INFO(0x1630, 0x0011,
> + USB_CLASS_COMM, 2 /* ACM */, 0x0ff),
> + .driver_info = (unsigned long) &rndis_poll_status_info,
> +}, {
> /* RNDIS is MSFT's un-official variant of CDC ACM */
> USB_INTERFACE_INFO(USB_CLASS_COMM, 2 /* ACM */, 0x0ff),
> .driver_info = (unsigned long) &rndis_info,
> --
> 1.7.5.4
>
I booted the 3.0 kernel and both devices were recognized. I then unplugged
both, removed /etc/network/interfaces, and rebooted. When I plugged in the
PC Port, I got the following messages:
[ 106.024038] usb 3-1: new full speed USB device number 2 using uhci_hcd
[ 106.203038] usb 3-1: New USB device found, idVendor=1630, idProduct=0011
[ 106.203105] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0[ 106.203163] usb 3-1: Product: 2Wire PC Port
[ 106.203215] usb 3-1: Manufacturer: 2Wire Inc
[ 106.312267] usbcore: registered new interface driver cdc_ether
[ 106.346573] rndis_host 3-1:1.0: eth2: register 'rndis_host' at usb-0000:00:1d.1-1, RNDIS device (poll status before control), 00:d0:9e:3c:25:ed
[ 106.347424] usbcore: registered new interface driver rndis_host
[ 106.432669] cfg80211: Calling CRDA to update world regulatory domain
[ 106.465011] usbcore: registered new interface driver rndis_wlan
[ 106.556970] udev[327]: renamed network interface eth2 to eth4
I then created a new /etc/network/interfaces for eth4. Unfortunately, when I
enteered "ifup eth4" I got the following messages:
[ 170.280070] usb 3-1: USB disconnect, device number 2
[ 170.281850] rndis_host 3-1:1.0: eth4: unregister 'rndis_host' usb-0000:00:1d.1-1, RNDIS device (poll status before control)
It looks like the kernel disconnected the device, so I couldn't configure it or
bring it up.
Mark
Reply to: