From: Philippe Bertin <philippe@brightsoft.be>
To: linux-hotplug@vger.kernel.org
Subject: Is my hotplug configuration not OK for CDCEther when connecting my Ethernet device over USB ?
Date: Thu, 24 Jul 2003 18:55:54 +0000 [thread overview]
Message-ID: <marc-linux-hotplug-105907295428176@msgid-missing> (raw)
[-- Attachment #1: Type: text/plain, Size: 2453 bytes --]
'Llo All,
I have been using CDCEther recently, a device driver that is to be
driving CDC- devices (over USB, that is). It should be working (as a
design goal) with a standard Linux host. However, up to now I only get
it working in around 5 percent of the cases. At first, I thought that it
was due to the CDCEther- module that my device didn't get started. But
in the running of my tests, I've started suspecting my hotplug
configuration. When it works OK (like I said, in around 5 percent of the
cases), I get a log like in attachment 1 (log_OK). When it does not
work, I get a log like in attachment 2 (log_NOT_OK).
What is happening, is that my Linux CDC host driver (i.e. CDCEther) does
(most of the times) not come to the point of sending the USB- command
'Set Interface 1, Alternate 1'. This is needed before my CDC- device can
start sending/receiving Ethernet frames. I see that CDCEther correctly
claims the USB- device (see the logs), but that's all. Because all
descriptors are fetched by the host (I believe that's done by the USB-
generic part of the kernel, not so ?), and they are correctly answered
by my device. But at the point where the host should send 'Set Intf 1
Alt 0' which should after some time be succeeded by 'Set Intf 1 Alt 1',
nothing happens. I have started thinking that the host only does this
once he has been able to create an eth1- device (see the logs).
IF the system comes to the point of finding the needed hotplug
information (i.e., if there is not that bunch of hotplug- errors in the
log), it looks like there is a valid eth1 created. But in the other
case, I get a whole lot of errors in the log, and there is NO eth1-
device created. In the good case, the CDCEther- driver selects Intf 1
Alt 1, and thus there can be network traffic (which I am still to debug,
but then I'd at least have a working test configuration...) What is
bothering me, is that it SOMETIMES works. Are there reasons to believe
there are some timing issues involved here ?
I am using SuSE linux 8.2, so kernel 2.4.20. I already tried the same
with the new 2.6 standard kernel (using usbnet, the replacing module for
the 2.4- kernel CDCEther module). But apart from having less debug
information, the phenomenon remains the same.
Thanks for any helpful answer,
Kind regards,
Philippe Bertin.
P.S. I think that this newsgroup is the most feasable for my problem,
unless ... linux-usb-devel or -users ?
[-- Attachment #2: log_OK --]
[-- Type: text/plain, Size: 5992 bytes --]
Jul 24 10:32:38 bvwcltbp kernel: hub.c: new USB device 00:1f.2-2, assigned address 17
Jul 24 10:32:38 bvwcltbp kernel: usb.c: kmalloc IF c2cb73a0, numif 2
Jul 24 10:32:38 bvwcltbp kernel: usb.c: skipping descriptor 0x24
Jul 24 10:32:38 bvwcltbp last message repeated 2 times
Jul 24 10:32:38 bvwcltbp kernel: usb.c: skipped 3 class/vendor specific endpoint descriptors
Jul 24 10:32:38 bvwcltbp kernel: usb.c: new device strings: Mfr=1, Product=2, SerialNumber=3
Jul 24 10:32:38 bvwcltbp kernel: usb.c: USB device number 17 default language ID 0x409
Jul 24 10:32:38 bvwcltbp kernel: Manufacturer: [correctly shown]
Jul 24 10:32:38 bvwcltbp kernel: Product: [correctly shown]
Jul 24 10:32:38 bvwcltbp kernel: SerialNumber: [correctly shown]
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: Ethernet information found at device configuration. Trying to use it anyway.
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: Found Header descriptor, CDC version 110.
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: Imperfect filtering support - need sw hashing
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: Can't use SetEthernetMulticastFilters request
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: detected BULK OUT packets of size 64
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: interrupt address: 1
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: interrupt interval: 10
Jul 24 10:32:38 bvwcltbp kernel: usb.c: ignoring set_interface for dev 17, iface 0, alt 0
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: eth1: [Manufacturer, Product ID and Ser Nr correctly shown]
Jul 24 10:32:38 bvwcltbp kernel: CDCEther.c: eth1: [Eth MAC address correctly shown]
Jul 24 10:32:38 bvwcltbp kernel: usb.c: CDCEther driver claimed interface c2cb73b8
Jul 24 10:32:38 bvwcltbp kernel: usb.c: CDCEther driver claimed interface c2cb73a0
Jul 24 10:32:38 bvwcltbp kernel: usb.c: kusbd: /sbin/hotplug add 17
Jul 24 10:32:38 bvwcltbp kernel: usb.c: kusbd: /sbin/hotplug add 17
Jul 24 10:32:38 bvwcltbp kernel: hub.c: port 1, portstatus 303, change 0, 1.5 Mb/s
Jul 24 10:32:38 bvwcltbp kernel: hub.c: port 2, portstatus 103, change 0, 12 Mb/s
Jul 24 10:32:42 bvwcltbp /etc/hotplug/usb.agent[7613]: writing usb-1-17 to /var/run/hotplug/net
Jul 24 10:32:42 bvwcltbp /etc/hotplug/net.agent[7571]: Using HW description eth-usb-1-17
Jul 24 10:32:42 bvwcltbp kernel: CDCEther.c: eth1: set multicast filters
Jul 24 10:32:42 bvwcltbp kernel: CDCEther.c: eth1: too many MC filters for hardware, using allmulti
Jul 24 10:32:42 bvwcltbp last message repeated 4 times
Jul 24 10:32:43 bvwcltbp /etc/hotplug/net.agent[7505]: No HW description found ... exiting
Jul 24 10:32:45 bvwcltbp /etc/hotplug/usb.agent[7706]: writing usb-1-17 to /var/run/hotplug/net
Jul 24 10:32:53 bvwcltbp kernel: eth1: no IPv6 routers present
Jul 24 10:33:02 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:33:02 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:33:02 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:33:22 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:33:22 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:33:22 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:33:42 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:33:42 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:33:42 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:34:02 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:34:02 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:34:02 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:34:22 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:34:22 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:34:22 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:34:42 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:34:42 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:34:42 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:35:02 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:35:02 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:35:02 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:35:22 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:35:22 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:35:22 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:35:42 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:35:42 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:35:42 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:36:02 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:36:02 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:36:02 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:36:22 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:36:22 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:36:22 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:36:42 bvwcltbp kernel: NETDEV WATCHDOG: eth1: transmit timed out
Jul 24 10:36:42 bvwcltbp kernel: CDCEther.c: eth1: Tx timed out.
Jul 24 10:36:42 bvwcltbp kernel: CDCEther.c: eth1: TX status -104
Jul 24 10:37:00 bvwcltbp kernel: usb-uhci.c: interrupt, status 2, frame# 915
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: rx status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: eth1: RX status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: eth1: TX status -110
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: rx status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: eth1: RX status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: rx status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: eth1: RX status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: rx status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: eth1: RX status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: rx status -84
Jul 24 10:37:00 bvwcltbp kernel: CDCEther.c: eth1: RX status -84
[-- Attachment #3: log_NOT_OK --]
[-- Type: text/plain, Size: 8358 bytes --]
Jul 24 10:37:28 bvwcltbp kernel: hub.c: new USB device 00:1f.2-2, assigned address 18
Jul 24 10:37:28 bvwcltbp kernel: usb.c: kmalloc IF c2cb73a0, numif 2
Jul 24 10:37:28 bvwcltbp kernel: usb.c: skipping descriptor 0x24
Jul 24 10:37:28 bvwcltbp last message repeated 2 times
Jul 24 10:37:28 bvwcltbp kernel: usb.c: skipped 3 class/vendor specific endpoint descriptors
Jul 24 10:37:28 bvwcltbp kernel: usb.c: new device strings: Mfr=1, Product=2, SerialNumber=3
Jul 24 10:37:28 bvwcltbp kernel: usb.c: USB device number 18 default language ID 0x409
Jul 24 10:37:28 bvwcltbp kernel: Manufacturer: ALCATEL
Jul 24 10:37:28 bvwcltbp kernel: Product: SpeedTouch 500 Series
Jul 24 10:37:28 bvwcltbp kernel: SerialNumber: 0090D05A60FF
Jul 24 10:37:28 bvwcltbp kernel: usb.c: unhandled interfaces on device
Jul 24 10:37:28 bvwcltbp kernel: usb.c: USB device 18 (vend/prod 0x6b9/0x4062) is not claimed by any active driver.
Jul 24 10:37:28 bvwcltbp kernel: Length = 18
Jul 24 10:37:28 bvwcltbp kernel: DescriptorType = 01
Jul 24 10:37:28 bvwcltbp kernel: USB version = 1.10
Jul 24 10:37:28 bvwcltbp kernel: Vendor:Product = xxxx:yyyy
Jul 24 10:37:28 bvwcltbp kernel: MaxPacketSize0 = 64
Jul 24 10:37:28 bvwcltbp kernel: NumConfigurations = 1
Jul 24 10:37:28 bvwcltbp kernel: Device version = 3.00
Jul 24 10:37:28 bvwcltbp kernel: Device Class:SubClass:Protocol = 02:00:00
Jul 24 10:37:28 bvwcltbp kernel: Communications class
Jul 24 10:37:28 bvwcltbp kernel: Configuration:
Jul 24 10:37:28 bvwcltbp kernel: bLength = 9
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 02
Jul 24 10:37:28 bvwcltbp kernel: wTotalLength = 0050
Jul 24 10:37:28 bvwcltbp kernel: bNumInterfaces = 02
Jul 24 10:37:28 bvwcltbp kernel: bConfigurationValue = 01
Jul 24 10:37:28 bvwcltbp kernel: iConfiguration = 00
Jul 24 10:37:28 bvwcltbp kernel: bmAttributes = c0
Jul 24 10:37:28 bvwcltbp kernel: MaxPower = 0mA
Jul 24 10:37:28 bvwcltbp kernel:
Jul 24 10:37:28 bvwcltbp kernel: Interface: 0
Jul 24 10:37:28 bvwcltbp kernel: Alternate Setting: 0
Jul 24 10:37:28 bvwcltbp kernel: bLength = 9
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 04
Jul 24 10:37:28 bvwcltbp kernel: bInterfaceNumber = 00
Jul 24 10:37:28 bvwcltbp kernel: bAlternateSetting = 00
Jul 24 10:37:28 bvwcltbp kernel: bNumEndpoints = 01
Jul 24 10:37:28 bvwcltbp kernel: bInterface Class:SubClass:Protocol = 02:06:00
Jul 24 10:37:28 bvwcltbp kernel: iInterface = 00
Jul 24 10:37:28 bvwcltbp kernel: Endpoint:
Jul 24 10:37:28 bvwcltbp kernel: bLength = 7
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 05
Jul 24 10:37:28 bvwcltbp kernel: bEndpointAddress = 81 (in)
Jul 24 10:37:28 bvwcltbp kernel: bmAttributes = 03 (Interrupt)
Jul 24 10:37:28 bvwcltbp kernel: wMaxPacketSize = 0008
Jul 24 10:37:28 bvwcltbp kernel: bInterval = 0a
Jul 24 10:37:28 bvwcltbp kernel:
Jul 24 10:37:28 bvwcltbp kernel: Interface: 1
Jul 24 10:37:28 bvwcltbp kernel: Alternate Setting: 0
Jul 24 10:37:28 bvwcltbp kernel: bLength = 9
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 04
Jul 24 10:37:28 bvwcltbp kernel: bInterfaceNumber = 01
Jul 24 10:37:28 bvwcltbp kernel: bAlternateSetting = 00
Jul 24 10:37:28 bvwcltbp kernel: bNumEndpoints = 00
Jul 24 10:37:28 bvwcltbp kernel: bInterface Class:SubClass:Protocol = 0a:00:00
Jul 24 10:37:28 bvwcltbp kernel: iInterface = 00
Jul 24 10:37:28 bvwcltbp kernel: Alternate Setting: 1
Jul 24 10:37:28 bvwcltbp kernel: bLength = 9
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 04
Jul 24 10:37:28 bvwcltbp kernel: bInterfaceNumber = 01
Jul 24 10:37:28 bvwcltbp kernel: bAlternateSetting = 01
Jul 24 10:37:28 bvwcltbp kernel: bNumEndpoints = 02
Jul 24 10:37:28 bvwcltbp kernel: bInterface Class:SubClass:Protocol = 0a:00:00
Jul 24 10:37:28 bvwcltbp kernel: iInterface = 00
Jul 24 10:37:28 bvwcltbp kernel: Endpoint:
Jul 24 10:37:28 bvwcltbp kernel: bLength = 7
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 05
Jul 24 10:37:28 bvwcltbp kernel: bEndpointAddress = 04 (out)
Jul 24 10:37:28 bvwcltbp kernel: bmAttributes = 02 (Bulk)
Jul 24 10:37:28 bvwcltbp kernel: wMaxPacketSize = 0040
Jul 24 10:37:28 bvwcltbp kernel: bInterval = 00
Jul 24 10:37:28 bvwcltbp kernel: Endpoint:
Jul 24 10:37:28 bvwcltbp kernel: bLength = 7
Jul 24 10:37:28 bvwcltbp kernel: bDescriptorType = 05
Jul 24 10:37:28 bvwcltbp kernel: bEndpointAddress = 85 (in)
Jul 24 10:37:28 bvwcltbp kernel: bmAttributes = 02 (Bulk)
Jul 24 10:37:28 bvwcltbp kernel: wMaxPacketSize = 0040
Jul 24 10:37:28 bvwcltbp kernel: bInterval = 00
Jul 24 10:37:28 bvwcltbp kernel: usb.c: kusbd: /sbin/hotplug add 18
Jul 24 10:37:28 bvwcltbp kernel: usb.c: kusbd: /sbin/hotplug add 18
Jul 24 10:37:28 bvwcltbp kernel: hub.c: port 1, portstatus 303, change 0, 1.5 Mb/s
Jul 24 10:37:28 bvwcltbp kernel: hub.c: port 2, portstatus 103, change 0, 12 Mb/s
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 80 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2aeb8e0, burb c2ea06c0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2aeb8e0, burb c2ea06c0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2aeb8e0, burb c2ea06c0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2aeb8e0, burb c2ea06c0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2aeb8e0, burb c2ea06c0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2aeb8e0, burb c2ea06c0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp kernel: usb-uhci.c: ENXIO 80001280, flags 0, urb c2ea06c0, burb c2aeb8e0
Jul 24 10:37:31 bvwcltbp kernel: usbdevfs: USBDEVFS_CONTROL failed dev 18 rqt 128 rq 6 len 9 ret -6
Jul 24 10:37:31 bvwcltbp /etc/hotplug/usb.agent[7919]: cannot get config descriptor 0, No such device or address (6)
Jul 24 10:37:31 bvwcltbp last message repeated 6 times
Jul 24 10:37:31 bvwcltbp /etc/hotplug/usb.agent[7918]: cannot get config descriptor 0, No such device or address (6)
Jul 24 10:37:31 bvwcltbp last message repeated 5 times
reply other threads:[~2003-07-24 18:55 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=marc-linux-hotplug-105907295428176@msgid-missing \
--to=philippe@brightsoft.be \
--cc=linux-hotplug@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.