Index: uspace/drv/bus/usb/xhci/hc.c
===================================================================
--- uspace/drv/bus/usb/xhci/hc.c	(revision b80c1ab4fd7df617a684e9fc7af13b2626a47d6e)
+++ uspace/drv/bus/usb/xhci/hc.c	(revision e76c0ea8f951c2e63efa8e948fc849e59dec918b)
@@ -636,5 +636,5 @@
 }
 
-static int create_valid_input_ctx(dma_buffer_t *dma_buf)
+static int create_configure_ep_input_ctx(dma_buffer_t *dma_buf)
 {
 	const int err = dma_buffer_alloc(dma_buf, sizeof(xhci_input_ctx_t));
@@ -645,8 +645,5 @@
 	memset(ictx, 0, sizeof(xhci_input_ctx_t));
 
-	// Quoting sec. 4.6.6: A1, D0, D1 are down, A0 is up.
-	XHCI_INPUT_CTRL_CTX_ADD_CLEAR(ictx->ctrl_ctx, 1);
-	XHCI_INPUT_CTRL_CTX_DROP_CLEAR(ictx->ctrl_ctx, 0);
-	XHCI_INPUT_CTRL_CTX_DROP_CLEAR(ictx->ctrl_ctx, 1);
+	// Quoting sec. 4.6.5 and 4.6.6: A1, D0, D1 are down (already zeroed), A0 is up.
 	XHCI_INPUT_CTRL_CTX_ADD_SET(ictx->ctrl_ctx, 0);
 
@@ -676,5 +673,5 @@
 	/* Issue configure endpoint command (sec 4.3.5). */
 	dma_buffer_t ictx_dma_buf;
-	if ((err = create_valid_input_ctx(&ictx_dma_buf))) {
+	if ((err = create_configure_ep_input_ctx(&ictx_dma_buf))) {
 		goto err_dev_ctx;
 	}
@@ -724,5 +721,5 @@
 	/* Issue configure endpoint command (sec 4.3.5). */
 	dma_buffer_t ictx_dma_buf;
-	const int err = create_valid_input_ctx(&ictx_dma_buf);
+	const int err = create_configure_ep_input_ctx(&ictx_dma_buf);
 	if (err)
 		return err;
@@ -743,5 +740,5 @@
 	/* Issue configure endpoint command (sec 4.3.5). */
 	dma_buffer_t ictx_dma_buf;
-	const int err = create_valid_input_ctx(&ictx_dma_buf);
+	const int err = create_configure_ep_input_ctx(&ictx_dma_buf);
 	if (err)
 		return err;
@@ -759,5 +756,5 @@
 	/* Issue configure endpoint command (sec 4.3.5). */
 	dma_buffer_t ictx_dma_buf;
-	const int err = create_valid_input_ctx(&ictx_dma_buf);
+	const int err = create_configure_ep_input_ctx(&ictx_dma_buf);
 	if (err)
 		return err;
