Bug 46311 - Any USB camera device doesn't work if it is connected to intel HM70 chipset xhci port2,3.
Summary: Any USB camera device doesn't work if it is connected to intel HM70 chipset x...
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: USB (show other bugs)
Hardware: All Linux
: P1 high
Assignee: Sarah Sharp
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-08-22 14:15 UTC by mikemai
Modified: 2012-09-14 20:10 UTC (History)
1 user (show)

See Also:
Kernel Version: kernel 3.4.4
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description mikemai 2012-08-22 14:15:27 UTC
Model: Lenovo Ideapad Z500

Hardware: Intel HM70 chipset

OS version: Linpus Lite 1.6 , Fedora 17, Ubuntu 12.1

Reproduce step: Enter OS, any USB camera device doesn't work, can't see any camera

Comment: 

Any USB (camera) device doesn't work in intel HM70 chipset USB xhci port2, 3.  
This is because in HM70 chipset, xhci port2 and port3 should be set to USB 2.0.
But Linux kernel's usb driver do not know it. 
After initialize the USB controller, those two port will be set to USB 3.0 .
(In drivers/usb/host/pci-quirk.c , XUSB2PR and USB_PSSEN register are be initialized to 0xffffffff)
This will cause USB xhci port2, 3 doesn't work normally in HM70.
Comment 1 Sarah Sharp 2012-09-14 20:10:48 UTC
Hi Mike,

The fix for this is now in Greg KH's USB tree, and should be on its way to Linus' kernel shortly.  The commit ID is a96874a2a92feaef607ddd3137277a788cb927a6 "Intel xhci: Only switch the switchable ports".  Can you test with Greg's usb-linus branch and make sure that this fixes your issue?

git clone git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git -b usb-linus

I'm setting this issue as resolved, so let me know if the patch doesn't work for you.

Sarah Sharp

Note You need to log in before you can comment on or make changes to this bug.