Index: uspace/drv/test2/test2.c
===================================================================
--- uspace/drv/test2/test2.c	(revision 86d7bfa1b97f6267e7a11878af29c50679b9c7a6)
+++ uspace/drv/test2/test2.c	(revision 8b1e15ac9100f7b9da56e372d2f441ba44db6fcc)
@@ -63,5 +63,5 @@
 	   name, message);
 
-	int rc = child_device_register_wrapper(parent, name,
+	int rc = register_function_wrapper(parent, name,
 	    match_id, match_score);
 
@@ -82,4 +82,5 @@
 {
 	device_t *dev = (device_t *) arg;
+	function_t *fun;
 
 	async_usleep(1000);
@@ -90,9 +91,14 @@
 	    "test1", "virtual&test1", 10);
 
-	add_device_to_class(dev, "virtual");
+	fun = create_function();
+	fun->ftype = fun_exposed;
+	fun->name = "a";
+
+	register_function(fun, dev);
+
+	add_function_to_class(fun, "virtual");
 
 	return EOK;
 }
-
 
 static int add_device(device_t *dev)
@@ -101,5 +107,5 @@
 	    dev->name, (int) dev->handle);
 
-	if (dev->parent == NULL) {
+	if (str_cmp(dev->name, "child") != 0) {
 		fid_t postpone = fibril_create(postponed_birth, dev);
 		if (postpone == 0) {
