xhci: Add Intel U1/U2 timeout policy.
authorSarah Sharp <sarah.a.sharp@linux.intel.com>
Wed, 16 May 2012 20:36:24 +0000 (13:36 -0700)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Fri, 18 May 2012 22:42:04 +0000 (15:42 -0700)
commite3567d2c15a7a8e2f992a5f7c7683453ca406d82
tree2442117f7358e50f49cfecd030a6017d392f474c
parent3b3db026414bba1c8f45c49d5eeaefd48d66e1ae
xhci: Add Intel U1/U2 timeout policy.

All Intel xHCI host controllers support USB 3.0 Link Power Management.

The Panther Point xHCI host controller needs the xHCI driver to
calculate the U1 and U2 timeout values, because it will blindly accept a
MEL that would cause scheduling issues.

The Lynx Point xHCI host controller will reject MEL values that are too
high, but internally it implements the same algorithm that is needed for
Panther Point xHCI.

Simplify the code paths by just having the xHCI driver calculate what
the U1/U2 timeouts should be.  Comments on the policy are in the code.

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
drivers/usb/host/xhci-pci.c
drivers/usb/host/xhci.c
drivers/usb/host/xhci.h