Index: uspace/drv/bus/usb/xhci/commands.c
===================================================================
--- uspace/drv/bus/usb/xhci/commands.c	(revision 0cabd10c23ba3e03fcb33a0a8bcf6f9d21c62895)
+++ uspace/drv/bus/usb/xhci/commands.c	(revision c9bec1cc8790d7cbdb7ba511eaaf4e550d98dd52)
@@ -167,10 +167,10 @@
 }
 
-static inline xhci_cmd_t *add_cmd(xhci_hc_t *hc, xhci_cmd_t *cmd)
+static inline int add_cmd(xhci_hc_t *hc, xhci_cmd_t *cmd)
 {
 	if (cmd == NULL) {
 		cmd = xhci_alloc_command();
 		if (cmd == NULL)
-			return cmd;
+			return ENOMEM;
 
 		cmd->has_owner = false;
@@ -180,5 +180,5 @@
 	cmd->trb = hc->command_ring.enqueue_trb;
 
-	return cmd;
+	return EOK;
 }
 
@@ -273,5 +273,5 @@
 	TRB_SET_TYPE(trb, XHCI_TRB_TYPE_NO_OP_CMD);
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -288,5 +288,5 @@
 	trb.control |= host2xhci(32, XHCI_REG_RD(hc->xecp, XHCI_EC_SP_SLOT_TYPE) << 16);
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -337,5 +337,5 @@
 	TRB_SET_SLOT(trb, cmd->slot_id);
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -357,5 +357,5 @@
 	TRB_SET_SLOT(trb, cmd->slot_id);
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -383,5 +383,5 @@
 	TRB_SET_SLOT(trb, cmd->slot_id);
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -405,4 +405,6 @@
 	TRB_SET_SLOT(trb, cmd->slot_id);
 
+	add_cmd(hc, cmd);
+
 	return enqueue_trb(hc, &trb, 0, 0);
 }
@@ -421,5 +423,5 @@
 	TRB_SET_SLOT(trb, cmd->slot_id);
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -446,5 +448,5 @@
 	 */
 
-	cmd = add_cmd(hc, cmd);
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
@@ -461,4 +463,6 @@
 	TRB_SET_TYPE(trb, XHCI_TRB_TYPE_RESET_DEVICE_CMD);
 	TRB_SET_SLOT(trb, cmd->slot_id);
+
+	add_cmd(hc, cmd);
 
 	return enqueue_trb(hc, &trb, 0, 0);
Index: uspace/drv/bus/usb/xhci/hc.c
===================================================================
--- uspace/drv/bus/usb/xhci/hc.c	(revision 0cabd10c23ba3e03fcb33a0a8bcf6f9d21c62895)
+++ uspace/drv/bus/usb/xhci/hc.c	(revision c9bec1cc8790d7cbdb7ba511eaaf4e550d98dd52)
@@ -331,6 +331,4 @@
 	XHCI_REG_WR(intr0, XHCI_INTR_ERSTBA_HI, UPPER32(erstptr));
 
-	// TODO: Setup scratchpad buffers
-
 	if (irq) {
 		XHCI_REG_SET(intr0, XHCI_INTR_IE, 1);
