aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2013-11-25 10:58:02 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2013-11-25 10:58:02 +0000
commit5c0f828a079ee48b194da2796e07eb86af849dc0 (patch)
tree8fd7962348d36d75f1232ab8c7ce8e30571abba0 /sys
parent54366c0bd7d0ea904fb9ab32460c66d57684a7cb (diff)
downloadsrc-5c0f828a079ee48b194da2796e07eb86af849dc0.tar.gz
src-5c0f828a079ee48b194da2796e07eb86af849dc0.zip
Comply to the XHCI specification. Certain input context fields should
always be zero. MFC after: 1 week
Notes
Notes: svn path=/head/; revision=258545
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/usb/controller/xhci.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/usb/controller/xhci.c b/sys/dev/usb/controller/xhci.c
index 58928255c4f2..7402995c6cda 100644
--- a/sys/dev/usb/controller/xhci.c
+++ b/sys/dev/usb/controller/xhci.c
@@ -2540,7 +2540,11 @@ xhci_configure_device(struct usb_device *udev)
xhci_ctx_set_le32(sc, &pinp->ctx_slot.dwSctx2, temp);
- temp = XHCI_SCTX_3_DEV_ADDR_SET(udev->address) |
+ /*
+ * These fields should be initialized to zero, according to
+ * XHCI section 6.2.2 - slot context:
+ */
+ temp = XHCI_SCTX_3_DEV_ADDR_SET(0) |
XHCI_SCTX_3_SLOT_STATE_SET(0);
xhci_ctx_set_le32(sc, &pinp->ctx_slot.dwSctx3, temp);