Device working on USB 2 but not on USB 3, best way to isolate the problem

Erich Dollansky erichfreebsdlist at ovitrap.com
Sun Jul 1 15:07:33 UTC 2012


Hi,

I have now one success and one failure.

I inserted these into the corresponding files:

usbdevs:

vendor VIALabs	 0x2109	VIA Labs

product TOSHIBA TransMemory	 0x6545	USB ThumbDrive
product	VIALabs	USB30SATABridge	0x0700	USB 3.0 SATA Bridge

usb_quirks.c

	USB_QUIRK(TOSHIBA, TransMemory, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE),
	USB_QUIRK(VIALabs, USB30SATABridge, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE),

Toshiba was already defined. The constants were taken from what usbconfig reported.

When I enter now the quirk at the command line, it works for both devices.

When I compile them into the kernel, it only works for the Toshiba device.

Is there anything else I have to consider for a quirk which works from the command line?

Erich

On Sunday, July 01, 2012 07:02:03 AM Erich Dollansky wrote:
> Hi,
> 
> On Saturday, June 30, 2012 10:02:21 PM Hans Petter Selasky wrote:
> > On Saturday 30 June 2012 11:46:10 Erich Dollansky wrote:
> > 
> > You can try to look at the Linux XHCI driver, and the port switching support 
> > they have. It appears that because many old OS'es does not support USB 3.0 out 
> > of the box, mainboards come with EHCI + XHCI and this requires some magic bit 
> > fidling, which is not in the FreeBSD XHCI driver.
> 
> I think that this is plain device dependent. I got meanwhile one device working. I used the quirks. I wonder why they are needed for 3 but not for 2 to make the device working.
> 
> If I find the time, I will do some tests with the other devices.
> 
> Erich
> 
> 


More information about the freebsd-usb mailing list