Index: uspace/srv/devman/main.c
===================================================================
--- uspace/srv/devman/main.c	(revision 984a9ba2fa05c490a7066737655ed19130c714e8)
+++ uspace/srv/devman/main.c	(revision 9b1baac695a63afb1850cd44050a52e06635cbd2)
@@ -325,33 +325,4 @@
 	async_set_client_data_destructor(devman_client_data_destroy);
 
-	port_id_t port;
-	rc = async_create_port(INTERFACE_DDF_DRIVER,
-	    devman_connection_driver, NULL, &port);
-	if (rc != EOK) {
-		printf("%s: Error creating DDF driver port: %s\n", NAME, str_error(rc));
-		return rc;
-	}
-
-	rc = async_create_port(INTERFACE_DDF_CLIENT,
-	    devman_connection_client, NULL, &port);
-	if (rc != EOK) {
-		printf("%s: Error creating DDF client port: %s\n", NAME, str_error(rc));
-		return rc;
-	}
-
-	rc = async_create_port(INTERFACE_DEVMAN_DEVICE,
-	    devman_connection_device, NULL, &port);
-	if (rc != EOK) {
-		printf("%s: Error creating devman device port: %s\n", NAME, str_error(rc));
-		return rc;
-	}
-
-	rc = async_create_port(INTERFACE_DEVMAN_PARENT,
-	    devman_connection_parent, NULL, &port);
-	if (rc != EOK) {
-		printf("%s: Error creating devman parent port: %s\n", NAME, str_error(rc));
-		return rc;
-	}
-
 	async_set_fallback_port_handler(devman_forward, NULL);
 
@@ -362,7 +333,29 @@
 
 	/* Register device manager at naming service. */
-	rc = service_register(SERVICE_DEVMAN);
-	if (rc != EOK) {
-		log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering as a service: %s", str_error(rc));
+	rc = service_register(SERVICE_DEVMAN, INTERFACE_DDF_DRIVER,
+	    devman_connection_driver, NULL);
+	if (rc != EOK) {
+		log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering driver port: %s", str_error(rc));
+		return rc;
+	}
+
+	rc = service_register(SERVICE_DEVMAN, INTERFACE_DDF_CLIENT,
+	    devman_connection_client, NULL);
+	if (rc != EOK) {
+		log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering client port: %s", str_error(rc));
+		return rc;
+	}
+
+	rc = service_register(SERVICE_DEVMAN, INTERFACE_DEVMAN_DEVICE,
+	    devman_connection_device, NULL);
+	if (rc != EOK) {
+		log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering device port: %s", str_error(rc));
+		return rc;
+	}
+
+	rc = service_register(SERVICE_DEVMAN, INTERFACE_DEVMAN_PARENT,
+	    devman_connection_parent, NULL);
+	if (rc != EOK) {
+		log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering parent port: %s", str_error(rc));
 		return rc;
 	}
