[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: