Index: uspace/drv/bus/usb/usbhub/main.c
===================================================================
--- uspace/drv/bus/usb/usbhub/main.c	(revision 96323d2f793c658b29507bfdb0e22e54a094b732)
+++ uspace/drv/bus/usb/usbhub/main.c	(revision e98e5fc2ee463964ee2251e7c68a307eeadfa445)
@@ -68,5 +68,5 @@
 	printf(NAME ": HelenOS USB hub driver.\n");
 	log_init(NAME);
-	logctl_set_log_level(NAME, LVL_DEBUG);
+	logctl_set_log_level(NAME, LVL_NOTE);
 	return usb_driver_main(&usb_hub_driver);
 }
Index: uspace/drv/bus/usb/usbhub/port.c
===================================================================
--- uspace/drv/bus/usb/usbhub/port.c	(revision 96323d2f793c658b29507bfdb0e22e54a094b732)
+++ uspace/drv/bus/usb/usbhub/port.c	(revision e98e5fc2ee463964ee2251e7c68a307eeadfa445)
@@ -55,5 +55,5 @@
 static int usb_hub_port_device_gone(usb_hub_port_t *port, usb_hub_dev_t *hub);
 static void usb_hub_port_reset_completed(usb_hub_port_t *port,
-    usb_port_status_t status);
+    usb_hub_dev_t *hub, usb_port_status_t status);
 static int get_port_status(usb_hub_port_t *port, usb_port_status_t *status);
 static int add_device_phase1_worker_fibril(void *arg);
@@ -243,5 +243,5 @@
 	/* Port reset, set on port reset complete. */
 	if (status & USB_HUB_PORT_C_STATUS_RESET) {
-		usb_hub_port_reset_completed(port, status);
+		usb_hub_port_reset_completed(port, hub, status);
 	}
 
@@ -282,5 +282,5 @@
  * @param status Port status mask
  */
-void usb_hub_port_reset_completed(usb_hub_port_t *port,
+void usb_hub_port_reset_completed(usb_hub_port_t *port, usb_hub_dev_t *hub,
     usb_port_status_t status)
 {
@@ -292,9 +292,10 @@
 	if (enabled) {
 		port->reset_status = RESET_OK;
-		usb_log_debug("Port %u reset complete.\n", port->port_number);
+		usb_log_debug("(%p-%u): Port reset complete.\n", hub,
+		    port->port_number);
 	} else {
 		port->reset_status = RESET_FAIL;
-		usb_log_warning("Port %u reset complete but port not enabled.",
-		    port->port_number);
+		usb_log_warning("(%p-%u): Port reset complete but port not "
+		    "enabled.", hub, port->port_number);
 	}
 	fibril_condvar_broadcast(&port->reset_cv);
@@ -304,6 +305,6 @@
 	int rc = usb_hub_port_clear_feature(port, USB_HUB_FEATURE_C_PORT_RESET);
 	if (rc != EOK) {
-		usb_log_error("Failed to clear port %u reset change: %s.",
-		    port->port_number, str_error(rc));
+		usb_log_error("(%p-%u): Failed to clear port reset change: %s.",
+		    hub, port->port_number, str_error(rc));
 	}
 }
@@ -349,5 +350,5 @@
 }
 
-static int port_enable(usb_hub_port_t *port, bool enable)
+static int port_enable(usb_hub_port_t *port, usb_hub_dev_t *hub, bool enable)
 {
 	if (enable) {
@@ -355,6 +356,6 @@
 		    usb_hub_port_set_feature(port, USB_HUB_FEATURE_PORT_RESET);
 		if (rc != EOK) {
-			usb_log_error("Port reset failed: %s.\n",
-			    str_error(rc));
+			usb_log_error("(%p-%u): Port reset failed: %s.\n",
+			    hub, port->port_number, str_error(rc));
 			return rc;
 		}
@@ -417,9 +418,11 @@
 	    port->port_number);
 	/* Reset port */
-	ret = port_enable(port, true);
+	ret = port_enable(port, hub, true);
 	if (ret != EOK) {
-		usb_log_error("Failed to reset port %u\n", port->port_number);
+		usb_log_error("(%p-%u): Failed to reset port.", hub,
+		    port->port_number);
 		if (usb_release_default_address(exch) != EOK)
-			usb_log_warning("Failed to release default address\n");
+			usb_log_warning("(%p-%u): Failed to release default "
+			    "address.", hub, port->port_number);
 		ret = EIO;
 		goto out;
@@ -432,5 +435,5 @@
 		usb_log_error("(%p-%u): Failed to enumerate device: %s", hub,
 		    port->port_number, str_error(ret));
-		const int ret = port_enable(port, false);
+		const int ret = port_enable(port, hub, false);
 		if (ret != EOK) {
 			usb_log_warning("(%p-%u)Failed to disable port (%s), "
Index: uspace/drv/bus/usb/usbhub/usbhub.c
===================================================================
--- uspace/drv/bus/usb/usbhub/usbhub.c	(revision 96323d2f793c658b29507bfdb0e22e54a094b732)
+++ uspace/drv/bus/usb/usbhub/usbhub.c	(revision e98e5fc2ee463964ee2251e7c68a307eeadfa445)
@@ -159,6 +159,7 @@
 	}
 	hub_dev->running = true;
-	usb_log_info("Controlling hub '%s' (%zu ports).\n",
-	    usb_device_get_name(hub_dev->usb_device), hub_dev->port_count);
+	usb_log_info("Controlling hub '%s' (%p: %zu ports).\n",
+	    usb_device_get_name(hub_dev->usb_device), hub_dev,
+	    hub_dev->port_count);
 
 	return EOK;
@@ -190,5 +191,6 @@
 		async_usleep(100000);
 		if (!tries--) {
-			usb_log_error("Can't remove hub, still running.\n");
+			usb_log_error("(%p): Can't remove hub, still running.",
+			    hub);
 			return EBUSY;
 		}
@@ -206,11 +208,11 @@
 	const int ret = ddf_fun_unbind(hub->hub_fun);
 	if (ret != EOK) {
-		usb_log_error("Failed to unbind '%s' function: %s.\n",
-		   HUB_FNC_NAME, str_error(ret));
+		usb_log_error("(%p) Failed to unbind '%s' function: %s.",
+		   hub, HUB_FNC_NAME, str_error(ret));
 		return ret;
 	}
 	ddf_fun_destroy(hub->hub_fun);
 
-	usb_log_info("USB hub driver, stopped and cleaned.\n");
+	usb_log_info("(%p) USB hub driver stopped and cleaned.", hub);
 	return EOK;
 }
@@ -227,5 +229,5 @@
     uint8_t *change_bitmap, size_t change_bitmap_size, void *arg)
 {
-	usb_log_debug("hub_port_changes_callback\n");
+//	usb_log_debug("hub_port_changes_callback\n");
 	usb_hub_dev_t *hub = arg;
 	assert(hub);
@@ -268,5 +270,5 @@
 
 	/* Get hub descriptor. */
-	usb_log_debug("Retrieving descriptor\n");
+	usb_log_debug("(%p): Retrieving descriptor.", hub_dev);
 	usb_pipe_t *control_pipe =
 	    usb_device_get_default_pipe(hub_dev->usb_device);
@@ -279,10 +281,11 @@
 	    sizeof(usb_hub_descriptor_header_t), &received_size);
 	if (opResult != EOK) {
-		usb_log_error("Failed to receive hub descriptor: %s.\n",
-		    str_error(opResult));
+		usb_log_error("(%p): Failed to receive hub descriptor: %s.\n",
+		    hub_dev, str_error(opResult));
 		return opResult;
 	}
 
-	usb_log_debug("Setting port count to %d.\n", descriptor.port_count);
+	usb_log_debug("(%p): Setting port count to %d.\n", hub_dev,
+	    descriptor.port_count);
 	hub_dev->port_count = descriptor.port_count;
 
@@ -303,24 +306,25 @@
 
 	if (!hub_dev->power_switched) {
-		usb_log_info(
-		   "Power switching not supported, ports always powered.\n");
+		usb_log_info("(%p): Power switching not supported, "
+		    "ports always powered.", hub_dev);
 		return EOK;
 	}
 
-	usb_log_info("Hub port power switching enabled (%s).\n",
+	usb_log_info("(%p): Hub port power switching enabled (%s).\n", hub_dev,
 	    hub_dev->per_port_power ? "per port" : "ganged");
 
 	for (size_t port = 0; port < hub_dev->port_count; ++port) {
-		usb_log_debug("Powering port %zu.\n", port);
+		usb_log_debug("(%p): Powering port %zu.", hub_dev, port);
 		const int ret = usb_hub_port_set_feature(
 		    &hub_dev->ports[port], USB_HUB_FEATURE_PORT_POWER);
 
 		if (ret != EOK) {
-			usb_log_error("Cannot power on port %u: %s.\n",
-			    hub_dev->ports[port].port_number, str_error(ret));
+			usb_log_error("(%p-%zu): Cannot power on port: %s.\n",
+			    hub_dev, hub_dev->ports[port].port_number,
+			    str_error(ret));
 		} else {
 			if (!hub_dev->per_port_power) {
-				usb_log_debug("Ganged power switching, "
-				    "one port is enough.\n");
+				usb_log_debug("(%p) Ganged power switching, "
+				    "one port is enough.", hub_dev);
 				break;
 			}
@@ -351,5 +355,4 @@
 	}
 
-	// TODO: Make sure that the cast is correct
 	const size_t config_size =
 	    usb_device_descriptors(usb_device)->full_config_size;
@@ -391,6 +394,6 @@
 	if (status & USB_HUB_STATUS_OVER_CURRENT) {
 		/* Hub should remove power from all ports if it detects OC */
-		usb_log_warning("Detected hub over-current condition, "
-		    "all ports should be powered off.");
+		usb_log_warning("(%p) Detected hub over-current condition, "
+		    "all ports should be powered off.", hub_dev);
 		return;
 	}
@@ -405,7 +408,7 @@
 		    &hub_dev->ports[port], USB_HUB_FEATURE_PORT_POWER);
 		if (ret != EOK) {
-			usb_log_warning("HUB OVER-CURRENT GONE: Cannot power on"
-			    " port %u: %s\n", hub_dev->ports[port].port_number,
-			    str_error(ret));
+			usb_log_warning("(%p-%u): HUB OVER-CURRENT GONE: Cannot"
+			    " power on port: %s\n", hub_dev,
+			    hub_dev->ports[port].port_number, str_error(ret));
 		} else {
 			if (!hub_dev->per_port_power)
@@ -426,5 +429,5 @@
 	assert(hub_dev);
 	assert(hub_dev->usb_device);
-	usb_log_debug("Global interrupt on a hub\n");
+	usb_log_debug("(%p): Global interrupt on th hub.",  hub_dev);
 	usb_pipe_t *control_pipe =
 	    usb_device_get_default_pipe(hub_dev->usb_device);
@@ -438,10 +441,11 @@
 	    &status, sizeof(usb_hub_status_t), &rcvd_size);
 	if (opResult != EOK) {
-		usb_log_error("Could not get hub status: %s\n",
+		usb_log_error("(%p): Could not get hub status: %s.", hub_dev,
 		    str_error(opResult));
 		return;
 	}
 	if (rcvd_size != sizeof(usb_hub_status_t)) {
-		usb_log_error("Received status has incorrect size\n");
+		usb_log_error("(%p): Received status has incorrect size: "
+		    "%zu != %zu", hub_dev, rcvd_size, sizeof(usb_hub_status_t));
 		return;
 	}
@@ -456,6 +460,6 @@
 		    USB_HUB_FEATURE_C_HUB_OVER_CURRENT, 0);
 		if (ret != EOK) {
-			usb_log_error("Failed to clear hub over-current "
-			    "change flag: %s.\n", str_error(opResult));
+			usb_log_error("(%p): Failed to clear hub over-current "
+			    "change flag: %s.\n", hub_dev, str_error(opResult));
 		}
 	}
@@ -480,6 +484,6 @@
 		    USB_HUB_FEATURE_C_HUB_LOCAL_POWER, 0);
 		if (opResult != EOK) {
-			usb_log_error("Failed to clear hub power change "
-			    "flag: %s.\n", str_error(ret));
+			usb_log_error("(%p): Failed to clear hub power change "
+			    "flag: %s.\n", hub_dev, str_error(ret));
 		}
 	}
