Re: USB Storage Device Not Working

balajirrao <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <20071107201025.GC20369@yogi>
On Wed, Nov 07, 2007 at 02:57:20PM -0500, Alan Stern wrote:
> Please reply to both the mailing and to me.
> 
> On Thu, 8 Nov 2007, balajirrao wrote:
> 
> > On Wed, Nov 07, 2007 at 02:10:17PM -0500, Alan Stern wrote:
> > > On Wed, 7 Nov 2007, balajirrao wrote:
> > > 
> > > > Hello people,
> > > > 
> > > > My usb storage device suddenly stopped being detected in Linux. It
> > > > continued to work properly in Windows and Solaris. While trying to find
> > > > out more about the problem, i tried rmmod ehci_hcd, and then the device
> > > > started working properly in Full Speed (it is actually a high speed
> > > > device). And, in windows, i get a warning saying that the device is
> > > > plugged into a non high speed port.
> > > 
> > > I don't get it.  You say the device works properly under Windows, but
> > > you also say that Windows displays a warning message about a problem
> > > with the device.  These statements can't both be true.
> > > 
> > It works properly in the sense, it works under OHCI (Full Speed) but.
> > Windows only complains that a high speed usb device is plugged into a
> > non high speed usb port, and that it can function faster if plugged into
> > a high speed port. This status message is not true, as i have been using
> > the same port and the same device for a long time.
> 
> You mean the port is connected to both an EHCI and an OHCI controller, 
> but Windows assigns the device to the OHCI controller and then 
> complains that it isn't running at high speed, right?
> 
> > > Have you tried using the device on a different computer?  Does it run 
> > > okay at high speed on the other machine?
> > > 
> > > Do other high speed devices work okay on your computer?
> > Yes. Absolutely.
> 
> There are three questions above.  Which question does your "Yes. 
> Absolutely." answer, and what are the answers to the other two 
> questions?
> 
> > > > I run kernel version 2.6.24-rc2. I get the 3strikes error quite number
> > > > of times. I tried a lot to debug this by going through the sources, but
> > > > i was unsuccessful.
> > > > 
> > > > I think this is case of hardware malfunction which the kernel does not
> > > > handle. I guess the device needed to be handed over to the companion
> > > > controllers on detection of this condition.
> > > 
> > > It does sound like a hardware malfunction, but from your description 
> > > there's no way to tell whether the malfunction is in the device or in 
> > > your computer's EHCI controller.
> > Right. But i have tried other high speed devices on my machine and it
> > works fine.
> 
> Which indicates that your EHCI controller is okay and hence the device 
> must be broken.
> 
> > > Why do you think the kernel detected a hardware malfunction?  The log 
> > > messages you included don't indicate any such detection.
> > > 
> > Oh! is it ? Does'nt the 3strikes message indicate that ? I saw in the
> > kernel sources that it indicates a status of -EPROTO. Does it not
> > indicate a hardware malfunction ? Also, in ehci-q.c, a comment above the
> > printing code talks about 'serious "cant proceed faults" reported by
> > hardware"'. Hence i guessed that it was a hardware malfunction. CMIIW.
> 
> It's a hardware fault (i.e., unexpected result), but not necessarily a
> malfunction.  For example, it could simply indicate that there's some
> temporary noise in the USB data signals.  It doesn't always mean that
> the device is broken.  Retrying the request will sometimes work.
> 
> > > > Please help me fix this bug. Thank you in advance for any help. Please
> > > > CC me, as i am not subscribed to the list.
> > > 
> > > Are you sure this is a fixable bug?  We can't do anything to repair
> > > hardware failures.
> > > 
> > No. I am sure its a fixable bug.
> > * Other high speed devices work in my computer.
> > * The device does not get detected in Linux in all the computers i have
> >  tried.
> > * On all the machines, the hardware was usable in windows but only at
> >  full speed.
> 
> Ah, so these are the answers to my questions above.  They indicate that 
> the device really is broken, since it no longer runs at high speed on 
> any machine.  I don't see how we can fix your device.
> 
No! It's not what i wanted from linux-usb-devel either :)
> Right now the kernel doesn't have any means for automatically forcing
> devices to run at full speed when they fail to enumerate at high speed,
> although adding such a feature might not be a bad idea.  However you
> can force a particular USB port to run at full speed by hand.  The
> command is:
> 
> 	echo P >/sys/class/usb_host/usb_hostN/companion
> 
> where P is the port number and N is the bus number of the EHCI 
> controller.
> 
Thank you very much for the command. It worked fine.
And, about that feature - I am interested in developing it. Can you
please help me as to how to go about it ? 

Thank you.
> Alan Stern
> 
regards,

Balaji Rao

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.