Index: uspace/drv/uhci/callback.c
===================================================================
--- uspace/drv/uhci/callback.c	(revision 76b577343e0ea90cd9a356ab816cd9795a65ad55)
+++ uspace/drv/uhci/callback.c	(revision c8ca07eec7591d786696675152ae2dfe7bde8f01)
@@ -48,5 +48,5 @@
 		  instance->callback_in, outcome, act_size);
 		instance->callback_in(
-		  instance->dev, outcome, act_size, instance->arg);
+		  instance->dev, act_size, outcome, instance->arg);
 	} else {
 		assert(instance->callback_out);
Index: uspace/drv/uhci/debug.h
===================================================================
--- uspace/drv/uhci/debug.h	(revision 76b577343e0ea90cd9a356ab816cd9795a65ad55)
+++ uspace/drv/uhci/debug.h	(revision c8ca07eec7591d786696675152ae2dfe7bde8f01)
@@ -60,8 +60,4 @@
 	usb_dprintf( NAME, DEBUG_LEVEL_VERBOSE, fmt, ##args )
 
-#define UHCI_GET_STR_FLAG(reg, flag, msg_set, msg_unset) \
-	((((reg) & (flag)) > 0) ? (msg_set) : (msg_unset))
-
-
 #endif
 /**
Index: uspace/drv/uhci/root_hub/port.c
===================================================================
--- uspace/drv/uhci/root_hub/port.c	(revision 76b577343e0ea90cd9a356ab816cd9795a65ad55)
+++ uspace/drv/uhci/root_hub/port.c	(revision c8ca07eec7591d786696675152ae2dfe7bde8f01)
@@ -1,5 +1,4 @@
 
 #include <errno.h>
-#include <str_error.h>
 //#include <usb/devreq.h> /* for usb_device_request_setup_packet_t */
 #include <usb/usb.h>
@@ -23,21 +22,15 @@
 
 	while (1) {
-		/* Read port status. */
+		uhci_print_info("Port(%d) status address %p:\n",
+		  port_instance->number, port_instance->address);
+
+		/* read register value */
 		port_status_t port_status =
 			port_status_read(port_instance->address);
 
-		uhci_print_info("Port %d: %04X (@ 0x%x) = " \
-		    "%s,%s,%s,%s,[%s,%s],%s,%s,%s,%s\n",
-		    port_instance->number, port_status, port_instance->address,
-		    UHCI_GET_STR_FLAG(port_status, STATUS_SUSPEND, "suspend", "up"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_IN_RESET, "in reset", "-"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_LOW_SPEED, "lowsp", "fullsp"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_RESUME, "resume", "k-state"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_LINE_D_MINUS, "D- on", "D- off"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_LINE_D_PLUS, "D+ on", "D+ off"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_ENABLED_CHANGED, "enblchg", "-"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_ENABLED, "enabled", "disabled"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_CONNECTED_CHANGED, "connchg", "-"),
-		    UHCI_GET_STR_FLAG(port_status, STATUS_CONNECTED, "hasdev", "nodev"));
+		/* debug print */
+		uhci_print_info("Port(%d) status %#.4x:\n",
+		  port_instance->number, port_status);
+		print_port_status(port_status);
 
 		if (port_status & STATUS_CONNECTED_CHANGED) {
@@ -99,6 +92,5 @@
 
 	if (ret != EOK) { /* address assigning went wrong */
-		uhci_print_error("Failed to assign address (port %d): %s.\n",
-		    port->number, str_error(ret));
+		uhci_print_error("Failed(%d) to assign address to the device.\n", ret);
 		uhci_port_set_enabled(port, false);
 		usb_address_keeping_release_default(&uhci_instance->address_manager);
Index: uspace/drv/uhci/uhci.c
===================================================================
--- uspace/drv/uhci/uhci.c	(revision 76b577343e0ea90cd9a356ab816cd9795a65ad55)
+++ uspace/drv/uhci/uhci.c	(revision c8ca07eec7591d786696675152ae2dfe7bde8f01)
@@ -219,5 +219,4 @@
 	return EOK;
 }
-
 /*---------------------------------------------------------------------------*/
 int uhci_debug_checker(void *arg)
@@ -229,14 +228,6 @@
 		reg = pio_read_16(&instance->registers->usbcmd);
 		uhci_print_info("Command register: %X\n", reg);
-
 		reg = pio_read_16(&instance->registers->usbsts);
-		uhci_print_info("Status register: %X (%s,%s,%s,%s,%s,%s)\n",
-		    reg,
-		    UHCI_GET_STR_FLAG(reg, UHCI_STATUS_HALTED, "halted", "-"),
-		    UHCI_GET_STR_FLAG(reg, UHCI_STATUS_PROCESS_ERROR, "prerr", "-"),
-		    UHCI_GET_STR_FLAG(reg, UHCI_STATUS_SYSTEM_ERROR, "syserr", "-"),
-		    UHCI_GET_STR_FLAG(reg, UHCI_STATUS_RESUME, "res", "-"),
-		    UHCI_GET_STR_FLAG(reg, UHCI_STATUS_ERROR_INTERRUPT, "errintr", "-"),
-		    UHCI_GET_STR_FLAG(reg, UHCI_STATUS_INTERRUPT, "intr", "-"));
+		uhci_print_info("Status register: %X\n", reg);
 /*
 		uintptr_t frame_list = pio_read_32(&instance->registers->flbaseadd);
Index: uspace/drv/uhci/uhci_struct/transfer_descriptor.c
===================================================================
--- uspace/drv/uhci/uhci_struct/transfer_descriptor.c	(revision 76b577343e0ea90cd9a356ab816cd9795a65ad55)
+++ uspace/drv/uhci/uhci_struct/transfer_descriptor.c	(revision c8ca07eec7591d786696675152ae2dfe7bde8f01)
@@ -1,25 +1,3 @@
-#include <stdio.h>
 #include "transfer_descriptor.h"
-
-#define BUFFER_LEN 40
-
-static void buffer_to_str(char *str, size_t str_size,
-    uint8_t *buffer, size_t buffer_size)
-{
-	if (buffer_size == 0) {
-		*str = 0;
-		return;
-	}
-	while (str_size >= 4) {
-		snprintf(str, 4, " %02X", (int) *buffer);
-		str += 3;
-		str_size -= 3;
-		buffer++;
-		buffer_size--;
-		if (buffer_size == 0) {
-			break;
-		}
-	}
-}
 
 void transfer_descriptor_init(transfer_descriptor_t *instance,
@@ -41,9 +19,6 @@
 	uhci_print_verbose("Creating status field: %x.\n", instance->status);
 
-	uint32_t maxlen_field = (size == 0) ? 0x7FF : ((uint32_t) size - 1);
-	maxlen_field = (maxlen_field & TD_DEVICE_MAXLEN_MASK)
-	    << TD_DEVICE_MAXLEN_POS;
 	instance->device = 0
-		| (maxlen_field)
+		| (((size - 1) & TD_DEVICE_MAXLEN_MASK) << TD_DEVICE_MAXLEN_POS)
 		| ((target.address & TD_DEVICE_ADDRESS_MASK) << TD_DEVICE_ADDRESS_POS)
 		| ((target.endpoint & TD_DEVICE_ENDPOINT_MASK) << TD_DEVICE_ENDPOINT_POS)
@@ -52,8 +27,4 @@
 	uhci_print_verbose("Creating device field: %x.\n", instance->device);
 
-	char buffer_dump[BUFFER_LEN];
-	buffer_to_str(buffer_dump, BUFFER_LEN, buffer, size);
-	uhci_print_verbose("Buffer dump (%zuB): %s.\n", size, buffer_dump);
-
 	if (size) {
 		instance->buffer_ptr = (uintptr_t)addr_to_phys(buffer);
@@ -61,8 +32,14 @@
 		uhci_print_verbose("Creating buffer field: %p(%p).\n",
 			buffer, instance->buffer_ptr);
+
+		if (size >= 8) {
+			char * buff = buffer;
+
+			uhci_print_verbose("Buffer dump(8B): %x %x %x %x %x %x %x %x.\n",
+				buff[0], buff[1], buff[2], buff[3], buff[4], buff[5], buff[6], buff[7]);
+		}
 	} else {
 		instance->buffer_ptr = 0;
 	}
-
 
 	instance->next_va = NULL;
