We have USB ECHI port 1 integrated with SMSC PHY (USB 3326) on Beagle Board. I have connected a high speed Mass Storage (USB harddisk) to the port, the enumeration happens fine and I am also able to do a data transfer, but after some time, it fails with below message:
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
# ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
hub 2-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
hub 2-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
hub 2-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
ehci-omap ehci-omap.0: port 1 reset error -110
hub 2-0:1.0: hub_port_status failed (err = -32)
hub 2-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
usb 2-1: USB disconnect, address 2
sd 0:0:0:0: [sda] Result: hostbyte=0x01 driverbyte=0x00
end_request: I/O error, dev sda, sector 226436535
Buffer I/O error on device sda1, logical block 47837202
lost page write due to I/O error on sda1
Buffer I/O error on device sda1, logical block 69593106
<so on>
I have also tried connecting a self powered HUB, this fails as well. Other USB devices like Ethernet, Mouse, Keyboard, etc fail after similarly.
We have done USB eye diagram tests and found no issues with hardware as such.
Any pointers on these should be helpful, let me know if you need any further info.
FYI, I am using drivers/usb/host/ehci-omap.c on latest OMAP GIT.
Hardware reference manual for Beagle can be found here,
http://www.beagleboard.org/uploads/Beagle_HW_Reference_Manual_A_5.pdf
Regards,
Khasim
On Wed, 30 Apr 2008 14:12:49 +0530, "Syed Mohammed, Khasim" <kha...@ti.com>
wrote:
is this mass storage really High Speed? If mouse and keyboard fail
similarly
it could be that you're using a full speed storage device.
From Beagle Manual:
"NOTE: Beagle USB Host only supports HS USB (480Mbp/S). Low Speed
and Full Speed devices are not supported unless they are connected
through a USB Hub prior to connection to the Beagle. The OTG port
does support LS and FS devices."
also try applying this patch to wait a bit more for reset bit to be
cleared:
diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
index 4e065e5..3b2a228 100644
--- a/drivers/usb/host/ehci-hub.c
+++ b/drivers/usb/host/ehci-hub.c
@@ -734,7 +734,7 @@ static int ehci_hub_control (
* this bit; seems too long to spin routinely...
*/
retval = handshake(ehci, status_reg,
- PORT_RESET, 0, 750);
+ PORT_RESET, 0, 1250);
if (retval != 0) {
ehci_err (ehci, "port %d reset error %d\n",
wIndex + 1, retval);
--
Best Regards,
Felipe Balbi
http://felipebalbi.com
m...@felipebalbi.com
Op 30 apr 2008, om 10:42 heeft Syed Mohammed, Khasim het volgende
geschreven:
> Hi all,
>
> We have USB ECHI port 1 integrated with SMSC PHY (USB 3326) on
> Beagle Board. I have connected a high speed Mass Storage (USB
> harddisk) to the port, the enumeration happens fine and I am also
> able to do a data transfer, but after some time, it fails with below
> message:
> ehci-omap ehci-omap.0: port 1 reset error -110
> hub 2-0:1.0: hub_port_status failed (err = -32)
> # ehci-omap ehci-omap.0: port 1 reset error -110
> hub 2-0:1.0: hub_port_status failed (err = -32)
I'm having similar issues with usbon the beagleboard:
usb 1-1: USB disconnect, address 2
usb 1-1.3: USB disconnect, address 7
eth0: unregister 'asix' usb-ehci-omap.0-1.3, ASIX AX8817x USB 2.0
Ethernet
usb 1-1: clear tt 4 (9082) error -19
usb 1-1: clear tt 4 (9082) error -19
I tried various combinations of the usb-ethernet adaptor with and
without hub and found:
* no hub, low cpu load + slow transfer (e.g. download over adsl):
transferring a few MiBs is OK
* hub, low cpu load + slow transfer: transferring ~ 1MiB is OK
* big cpu load (e.g. using scp): 128KiB max
I didn't dare to try a USB disk yet :)
regards,
Koen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iD8DBQFIGDdTMkyGM64RGpERAhm8AJ9KfZy30s9i+iupAHdvrXQt5b0pQwCcDhtI
dz6wcEMGT++ps1nJ7SdgtVY=
=5ZVu
-----END PGP SIGNATURE-----
On Wed, 30 Apr 2008 11:09:37 +0200, Koen Kooi <k.k...@student.utwente.nl>
wrote:
false overcurrent indication maybe ?
try modprobe ehci_hcd ignore_oc=1
>
> regards,
>
> Koen
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.5 (Darwin)
>
> iD8DBQFIGDdTMkyGM64RGpERAhm8AJ9KfZy30s9i+iupAHdvrXQt5b0pQwCcDhtI
> dz6wcEMGT++ps1nJ7SdgtVY=
> =5ZVu
> -----END PGP SIGNATURE-----
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majo...@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
I've uploaded a kernel with your timeout patch and a modular ehci_hcd
(so you need to unpack modules.tgz into your rootfs) to here:
http://amethyst.openembedded.net/~koen/beagleboard/usbtest/
I'm currently 700 km from my beagleboard, so testing is appreciated :)
regards,
Koen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iD8DBQFIGEfvMkyGM64RGpERAk/cAJ0T3DKFfouuyQUiTrZj33POfqTBKQCdGu0m
uvY9AAnoacU189vQK2gZZd8=
=ow2T
-----END PGP SIGNATURE-----
On Wed, 30 Apr 2008 12:20:28 +0200, Koen Kooi <k.k...@student.utwente.nl>
Maybe someone else could test it, I'm still waiting mine to come :-p
> > I've uploaded a kernel with your timeout patch and a modular ehci_hcd
> > (so you need to unpack modules.tgz into your rootfs) to here:
> >
> > http://amethyst.openembedded.net/~koen/beagleboard/usbtest/
> >
> > I'm currently 700 km from my beagleboard, so testing is appreciated :)
>
> Maybe someone else could test it, I'm still waiting mine to come :-p
I'm having a different problem, I'm running a 500 Mhz beagle and
trying to connect to a USRP (www.ettus.com). I've seen the firmware
load once or twice, but mostly I get this :
root@beagleboard:~# modprobe ehci_hcd ignore_oc=1
<3>Clock usbhost_48m_fck didn't enable in 100000 tries
Clock usbhost_48m_fck didn't enable in 100000 tries
<6>ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
<6>ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1
ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1
<6>ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
<6>ehci-omap ehci-omap.0: USB 0.0 started, EHCI 1.00, driver 10 Dec
2004, overcurrent ignored
ehci-omap ehci-omap.0: USB 0.0 started, EHCI 1.00, driver 10 Dec 2004,
overcurrent ignored
<6>usb usb1: configuration #1 chosen from 1 choice
usb usb1: configuration #1 chosen from 1 choice
<6>hub 1-0:1.0: USB hub found
hub 1-0:1.0: USB hub found
<6>hub 1-0:1.0: 3 ports detected
hub 1-0:1.0: 3 ports detected
root@beagleboard:~# lsusb
Bus 1 Device 1: ID 1d6b:0002
Bus 001 Device 001: ID 1d6b:0002
root@beagleboard:~# <6>usb 1-1: new high speed USB device using
ehci-omap and address 2
usb 1-1: new high speed USB device using ehci-omap and address 2
<6>usb 1-1: configuration #1 chosen from 1 choice
usb 1-1: configuration #1 chosen from 1 choice
root@beagleboard:~#
root@beagleboard:~# usrper load_standard_bits
usrper: found unconfigured usrp; needs firmware.
<7>usb 1-1: usbfs: USBDEVFS_CONTROL failed cmd usrper rqt 64 rq 160
len 6 ret -71
write_internal_ram failed: error sending control message: Protocol error
usrp: failed to load firmware /usr/share/usrp/rev4/std.ihx.
usrper: failed
root@beagleboard:~#
Was usbdevfs mounted with:
mount -t usbdevfs none /proc/bus/usb
?
regards,
Koen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iD8DBQFIGdLIMkyGM64RGpERAoUpAKCS64btvlseR1bCO96FWQgVZ5naFgCeJyk1
qTPq3Db5lxNm9kHpRJf0shc=
=60Oe
-----END PGP SIGNATURE-----
>
> Was usbdevfs mounted with:
>
> mount -t usbdevfs none /proc/bus/usb
Yes, usbfs is mounted.
I collected the errors after trying to load the USRP firmware with the
.22 kernel installed.
root@beagleboard:/usr/share/gnuradio/examples/audio# lsusb
Bus 001 Device 008: ID fffe:0002
Bus 001 Device 007: ID 07a6:8515 ADMtek, Inc.
Bus 001 Device 004: ID 0d8c:0103 C-Media Electronics, Inc.
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc.
Bus 001 Device 001: ID 0000:0000
Bus 1 Device 8: ID fffe:0002
Bus 1 Device 7: ID 07a6:8515 ADMtek, Inc.
Bus 1 Device 1: ID 0000:0000
Bus 1 Device 4: ID 0d8c:0103 C-Media Electronics, Inc.
Bus 1 Device 2: ID 05e3:0608 Genesys Logic, Inc.
root@beagleboard:/usr/share/gnuradio/examples/audio# usrper load_standard_bits
usrper: found unconfigured usrp; needs firmware.
<6>usb 1-1.1: USB disconnect, address 8
usb 1-1.1: USB disconnect, address 8
<6>usb 1-1.1: new high speed USB device using ehci-omap and address 9
usb 1-1.1: new high speed USB device using ehci-omap and address 9
<6>usb 1-1.1: configuration #1 chosen from 1 choice
usb 1-1.1: configuration #1 chosen from 1 choice
<7>usb 1-1.1: usbfs: USBDEVFS_CONTROL failed cmd usrper rqt 64 rq 2
len 64 ret -71
usb_control_msg failed: error se<7>usb 1-1.1: usbfs: USBDEVFS_CONTROL
failed cmd usrper rqt 64 rq 9 len 1 ret -71
nding control message: Protocol <7>usb 1-1.1: usbfs: USBDEVFS_CONTROL
failed cmd usrper rqt 64 rq 9 len 1 ret -71
error
usb_control_msg failed: e<7>usb 1-1.1: usbfs: USBDEVFS_CONTROL failed
cmd usrper rqt 64 rq 9 len 1 ret -71
rror sending control message: Pr<7>usb 1-1.1: usbfs: USBDEVFS_CONTROL
failed cmd usrper rqt 64 rq 9 len 1 ret -71
otocol error
usb_control_msg fa<7>usb 1-1.1: usbfs: USBDEVFS_CONTROL failed cmd
usrper rqt 64 rq 9 len 1 ret -71
iled: error sending control mess<7>usb 1-1.1: usbfs: USBDEVFS_CONTROL
failed cmd usrper rqt 64 rq 9 len 1 ret -71
age: Protocol error
usb_control_msg failed: error sending control message: Protocol error
usb_control_msg failed: error sending control message: Protocol error
usb_control_msg failed: error sending control message: Protocol error
usb_control_msg failed: error sending control message: Protocol error
usrp: failed to load fpga bitstream /usr/share/usrp/rev4/std_2rxhb_2tx.rbf.
usrper: failed
root@beagleboard:/usr/share/gnuradio/examples/audio# <6>usb 1-1.1: USB
disconnect, address 9
usb 1-1.1: USB disconnect, address 9
<6>usb 1-1.3: USB disconnect, address 7
usb 1-1.3: USB disconnect, address 7
<6>usb 1-1.4: USB disconnect, address 4
usb 1-1.4: USB disconnect, address 4
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)
<3>hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
<3>ehci-omap ehci-omap.0: port 1 reset error -110
ehci-omap ehci-omap.0: port 1 reset error -110
<3>hub 1-0:1.0: hub_port_status failed (err = -32)
hub 1-0:1.0: hub_port_status failed (err = -32)