USB 2.0 problems (I/O errors with ehci driver)
From: Jan Buckow (IchWillSpass_at_web.de)
Date: 01/04/04
- Next message: Vigil: "Re: Best Fanless 3D Video Card"
- Previous message: Noel Llopis: "Hardware for a low-power server"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 4 Jan 2004 06:34:23 -0800
Hi,
I bought a USB 2.0 PCI card (manufacturer Hama, chip
ALi M5273).
The card works fine using Windows XP.
Using Linux, however, I have severe problems. I can
only use the card with the slow usb-ohci module, otherwise
I get I/O errors.
Here is what happens:
1. I use the hotplug services; my system is a Suse 9.0
with current patches; i.e. I use kernel 2.4.21-144-athlon
which is configured for good performance on athlon systems
(I have an ECS board K7S5A with Athlon 1800+).
2. when I plug in an USB 2.0 memory stick I see the following
in /var/log/messages:
Jan 3 21:11:25 baileys kernel: hub.c: new USB device 00:0f.3-6,
assigned address 2
Jan 3 21:11:25 baileys kernel: usb.c: USB device 2 (vend/prod
0x5dc/0x200) is not claimed by any active driver.
Jan 3 21:11:28 baileys kernel: Initializing USB Mass Storage
driver...
Jan 3 21:11:28 baileys kernel: usb.c: registered new driver
usb-storage
Jan 3 21:11:28 baileys kernel: scsi1 : SCSI emulation for USB Mass
Storage devices
Jan 3 21:11:28 baileys kernel: Vendor: FSC Model:
MEMORYBIRD USB2 Rev: 0
Jan 3 21:11:28 baileys kernel: Type: Direct-Access
ANSI SCSI revision: 02
Jan 3 21:11:28 baileys kernel: WARNING: USB Mass Storage data
integrity not assured
Jan 3 21:11:28 baileys kernel: USB Mass Storage device found at 2
Jan 3 21:11:28 baileys kernel: USB Mass Storage support
registered.
Jan 3 21:11:28 baileys insmod: Using
/lib/modules/2.4.21-144-athlon/kernel/drivers/usb/storage/usb-storage.o
Jan 3 21:11:28 baileys insmod: Symbol version prefix ''
Jan 3 21:11:28 baileys kernel: Attached scsi removable disk sda at
scsi1, channel 0, id 0, lun 0
Jan 3 21:11:28 baileys kernel: SCSI device sda: 251904 512-byte
hdwr sectors (129 MB)
Jan 3 21:11:28 baileys kernel: sda: Write Protect is off
Jan 3 21:11:28 baileys kernel: sda: sda1
3. when I mount the device and do some copying the following happens:
cmds:
> mount /media/sda1/
> time cp -rup /media/sda1/* .
[...]
cp: reading `/media/sda1/filed.jpg': Input/output error
cp: reading `/media/sda1/filee.jpg': Input/output error
cp: reading `/media/sda1/filef.jpg': Input/output error
[...]
/var/log/messages:
[...]
Jan 3 21:29:18 baileys kernel: SCSI disk error : host 1 channel 0
id 0 lun 0 return code = 70000
Jan 3 21:29:18 baileys kernel: I/O error: dev 08:01, sector
140718
Jan 3 21:29:18 baileys kernel: SCSI disk error : host 1 channel 0
id 0 lun 0 return code = 70000
Jan 3 21:29:18 baileys kernel: I/O error: dev 08:01, sector
140719
[...]
Some files are copied correctly. The errors do not start
immediately. The
amount of data copied varies. On the memory stick are about 105
MByte of
data. Sometimes the errors start almost immediately, on other times
the
errors occur after 95% of all the data is already copied.
4. The errors do not occur if I unload the ehci_hcd and then try
again. The
errors also do not occur if I use Windows XP
My conclusion is that this has something to do with the linux USB2.0
implementation or configuration. My guesses: IRQ settings, ehci
driver,
usb kernel configuration. But what can I do? (Further information is
attached
below, i.e. output from dmesg, infos from BIOS, kernel configuration,
loaded
modules, output from usbview, /proc/bus/usb/devices).
Remarks:
- I tried with ACPI switched on and off (-> same problems)
- I enabled/disabled the slow on-board USB (-> same problems)
I'd be very grateful for every hint. I simply don't know how to
proceed.
Thanks,
Jan
------ attachment 1: dmesg -> usb relevent parts -------------
[...]
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
ehci_hcd 00:0f.3: ALi Corporation. [ALi] USB 2.0 Controller
ehci_hcd 00:0f.3: irq 10, pci mem e08cce00
usb.c: new USB bus registered, assigned bus number 1
PCI: 00:0f.3 PCI cache line size set incorrectly (32 bytes) by
BIOS/FW.
PCI: 00:0f.3 PCI cache line size corrected to 64.
ehci_hcd 00:0f.3: USB 2.0 enabled, EHCI 1.00, driver 2003-Jun-19/2.4
hub.c: USB hub found
hub.c: 6 ports detected
usb-uhci.c: $Revision: 1.275 $ time 00:25:26 Nov 14 2003
usb-uhci.c: High bandwidth mode enabled
usb-uhci.c: v1.275:USB Universal Host Controller Interface driver
uhci.c: USB Universal Host Controller Interface driver v1.1
usb-ohci.c: USB OHCI at membase 0xe08df000, IRQ 10
usb-ohci.c: usb-00:0f.2, ALi Corporation. [ALi] USB 1.1 Controller
(#3)
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
usb-ohci.c: USB OHCI at membase 0xe08e1000, IRQ 5
usb-ohci.c: usb-00:0f.1, ALi Corporation. [ALi] USB 1.1 Controller
(#2)
usb.c: new USB bus registered, assigned bus number 3
hub.c: USB hub found
hub.c: 2 ports detected
usb-ohci.c: USB OHCI at membase 0xe08f4000, IRQ 11
usb-ohci.c: usb-00:0f.0, ALi Corporation. [ALi] USB 1.1 Controller
usb.c: new USB bus registered, assigned bus number 4
hub.c: USB hub found
hub.c: 2 ports detected
mice: PS/2 mouse device common for all mice
[...]
usb.c: registered new driver serial
usbserial.c: USB Serial support registered for Generic
usbserial.c: USB Serial Driver core v1.4
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
Linux video capture interface: v1.00
hub.c: new USB device 00:0f.3-6, assigned address 2
usb.c: USB device 2 (vend/prod 0x5dc/0x200) is not claimed by any
active driver.
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
scsi1 : SCSI emulation for USB Mass Storage devices
Vendor: FSC Model: MEMORYBIRD USB2 Rev: 0
Type: Direct-Access ANSI SCSI revision: 02
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
USB Mass Storage support registered.
Attached scsi removable disk sda at scsi1, channel 0, id 0, lun 0
SCSI device sda: 251904 512-byte hdwr sectors (129 MB)
sda: Write Protect is off
[...]
------ attachment 2: modules loaded ---------------------------------
# lsmod | grep usb
usb-storage 71776 1
usbserial 19836 0 (autoclean) (unused)
usb-ohci 19848 0 (unused)
usbcore 64364 1 [usb-storage usbserial usb-ohci
ehci-hcd]
scsi_mod 100788 6 [sd_mod usb-storage st sr_mod sg
ide-scsi]
------ attachment 3: kernel configuration
---------------------------------
# grep USB /boot/config-2.4.21-144-athlon
CONFIG_USB_IRDA=m
CONFIG_USB_AUERISDN=m
CONFIG_INPUT_IFORCE_USB=m
CONFIG_VIDEO_CPIA_USB=m
# ALSA USB devices
CONFIG_SND_USB_AUDIO=m
# USB support
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set
# Miscellaneous USB options
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_BANDWIDTH is not set
# USB Host Controller Drivers
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_UHCI=m
CONFIG_USB_UHCI_ALT=m
CONFIG_USB_OHCI=m
# USB Device Class drivers
CONFIG_USB_AUDIO=m
CONFIG_USB_EMI26=m
# USB Bluetooth can only be used with disabled Bluetooth subsystem
CONFIG_USB_MIDI=m
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_DPCM=y
CONFIG_USB_STORAGE_HP8200e=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
# USB Human Interface Devices (HID)
CONFIG_USB_HID=m
CONFIG_USB_HIDINPUT=y
CONFIG_USB_HIDDEV=y
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set
CONFIG_USB_AIPTEK=m
CONFIG_USB_WACOM=m
CONFIG_USB_KBTAB=m
CONFIG_USB_POWERMATE=m
# USB Imaging devices
CONFIG_USB_DC2XX=m
CONFIG_USB_MDC800=m
CONFIG_USB_SCANNER=m
CONFIG_USB_MICROTEK=m
CONFIG_USB_HPUSBSCSI=m
# USB Multimedia devices
CONFIG_USB_IBMCAM=m
CONFIG_USB_KONICAWC=m
CONFIG_USB_OV511=m
CONFIG_USB_PWC=m
CONFIG_USB_SE401=m
CONFIG_USB_STV680=m
CONFIG_USB_VICAM=m
CONFIG_USB_DSBR=m
CONFIG_USB_DABUSB=m
CONFIG_USB_LOGITECH_CAM=m
# USB Network adaptors
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_KAWETH=m
CONFIG_USB_CATC=m
CONFIG_USB_AX8817X=m
CONFIG_USB_CDCETHER=m
CONFIG_USB_USBNET=m
CONFIG_USB_USBDNET=m
CONFIG_USB_USBDNET_VENDOR=0000
CONFIG_USB_USBDNET_PRODUCT=0000
CONFIG_USB_USBDNET_CLASS=0000
CONFIG_USB_USBDNET_SUBCLASS=0000
# USB port drivers
CONFIG_USB_USS720=m
# USB Serial Converter support
CONFIG_USB_SERIAL=m
# CONFIG_USB_SERIAL_DEBUG is not set
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_BELKIN=m
CONFIG_USB_SERIAL_WHITEHEAT=m
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_VISOR=m
CONFIG_USB_SERIAL_IPAQ=m
CONFIG_USB_SERIAL_IR=m
CONFIG_USB_SERIAL_EDGEPORT=m
CONFIG_USB_SERIAL_EDGEPORT_TI=m
CONFIG_USB_SERIAL_KEYSPAN_PDA=m
CONFIG_USB_SERIAL_KEYSPAN=m
CONFIG_USB_SERIAL_KEYSPAN_USA28=y
CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
CONFIG_USB_SERIAL_KEYSPAN_USA19=y
CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
CONFIG_USB_SERIAL_KEYSPAN_MPR=y
CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
CONFIG_USB_SERIAL_MCT_U232=m
CONFIG_USB_SERIAL_KLSI=m
CONFIG_USB_SERIAL_KOBIL_SCT=m
CONFIG_USB_SERIAL_PL2303=m
CONFIG_USB_SERIAL_CYBERJACK=m
CONFIG_USB_SERIAL_XIRCOM=m
CONFIG_USB_SERIAL_OMNINET=m
CONFIG_USB_SERIAL_SAFE_PADDED=y
CONFIG_USB_SAFE_SERIAL_VENDOR=0000
CONFIG_USB_SAFE_SERIAL_PRODUCT=0000
# USB Miscellaneous drivers
CONFIG_USB_RIO500=m
CONFIG_USB_AUERSWALD=m
CONFIG_USB_TIGL=m
CONFIG_USB_BRLVGER=m
CONFIG_USB_LCD=m
CONFIG_USB_SPEEDTOUCH=m
CONFIG_BLUEZ_HCIUSB=m
CONFIG_BLUEZ_USB_SCO=y
# CONFIG_BLUEZ_USB_ZERO_PACKET is not set
CONFIG_BLUEZ_HCIBFUSB=m
------ attachment 4: BIOS info ---------------------------------
When booting I see the following info right before the boot loader
is invoked:
Onboard Multimed. Device: IRQ 10 Onboard IDE IRQ 14,15
Slot 2 Ethernet IRQ5 Slot 4 USB Controller IRQ10
Slot 4 USB Controller IRQ10 Slot 4 USB Controller IRQ5
Slot 4 USB Controller IRQ11 AGP VGA IRQ10
------- attachment 5: output from usbview ---------------------
ALi Corporation. [ALi] USB 2.0 Controller
Manufacturer: Linux 2.4.21-144-athlon ehci_hcd
Serial Number: 00:0f.3
Speed: 480Mb/s (high)
Number of Ports: 6
Bandwidth allocated: 0 / 800 (0%)
Total number of interrupt requests: 0
Total number of isochronous requests: 0
USB Version: 2.00
Device Class: 09(hub )
Device Subclass: 00
Device Protocol: 01
Maximum Default Endpoint Size: 8
Number of Configurations: 1
Config Number: 1
Number of Interfaces: 1
Attributes: 40
MaxPower Needed: 0mA
Interface Number: 0
Name: hub
Alternate Number: 0
Class: 09(hub )
Sub Class: 0
Protocol: 0
Number of Endpoints: 1
Endpoint Address: 81
Direction: in
Attribute: 3
Type: Int.
Max Packet Size: 2
Interval: 256ms
------- attachment 6: /proc/bus/usb/devices ---------------------
more /proc/bus/usb/devices
T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB OHCI Root Hub
S: SerialNumber=e08f4000
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB OHCI Root Hub
S: SerialNumber=e08e1000
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB OHCI Root Hub
S: SerialNumber=e08df000
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 6
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.04
S: Manufacturer=Linux 2.4.21-144-athlon ehci_hcd
S: Product=ALi Corporation. [ALi] USB 2.0 Controller
S: SerialNumber=00:0f.3
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=256ms
- Next message: Vigil: "Re: Best Fanless 3D Video Card"
- Previous message: Noel Llopis: "Hardware for a low-power server"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|