Index: uspace/drv/test/test1/test1.c
===================================================================
--- uspace/drv/test/test1/test1.c	(revision 0c0f823be60de51c77b4a379e049bb77bd2df4bc)
+++ uspace/drv/test/test1/test1.c	(revision 56fd7cf53b8ee7af3e78e2237e566926562e0291)
@@ -145,13 +145,16 @@
 	ddf_fun_t *fun_a;
 	test1_t *test1;
-	int rc;
-
+	const char *dev_name;
+	int rc;
+
+	dev_name = ddf_dev_get_name(dev);
 	ddf_msg(LVL_DEBUG, "dev_add(name=\"%s\", handle=%d)",
-	    dev->name, (int) dev->handle);
+	    dev_name, (int) ddf_dev_get_handle(dev));
 
 	test1 = ddf_dev_data_alloc(dev, sizeof(test1_t));
 	if (test1 == NULL) {
 		ddf_msg(LVL_ERROR, "Failed allocating soft state.\n");
-		return ENOMEM;
+		rc = ENOMEM;
+		goto error;
 	}
 
@@ -159,5 +162,6 @@
 	if (fun_a == NULL) {
 		ddf_msg(LVL_ERROR, "Failed creating function 'a'.");
-		return ENOMEM;
+		rc = ENOMEM;
+		goto error;
 	}
 
@@ -168,13 +172,13 @@
 		ddf_msg(LVL_ERROR, "Failed binding function 'a'.");
 		ddf_fun_destroy(fun_a);
-		return rc;
+		goto error;
 	}
 
 	ddf_fun_add_to_category(fun_a, "virtual");
 
-	if (str_cmp(dev->name, "null") == 0) {
-		fun_a->ops = &char_device_ops;
+	if (str_cmp(dev_name, "null") == 0) {
+		ddf_fun_set_ops(fun_a,  &char_device_ops);
 		ddf_fun_add_to_category(fun_a, "virt-null");
-	} else if (str_cmp(dev->name, "test1") == 0) {
+	} else if (str_cmp(dev_name, "test1") == 0) {
 		(void) register_fun_verbose(dev,
 		    "cloning myself ;-)", "clone",
@@ -183,5 +187,5 @@
 		    "cloning myself twice ;-)", "clone",
 		    "virtual&test1", 10, EEXISTS, NULL);
-	} else if (str_cmp(dev->name, "clone") == 0) {
+	} else if (str_cmp(dev_name, "clone") == 0) {
 		(void) register_fun_verbose(dev,
 		    "run by the same task", "child",
@@ -189,7 +193,8 @@
 	}
 
-	ddf_msg(LVL_DEBUG, "Device `%s' accepted.", dev->name);
-
-	return EOK;
+	ddf_msg(LVL_DEBUG, "Device `%s' accepted.", dev_name);
+	return EOK;
+error:
+	return rc;
 }
 
@@ -232,5 +237,5 @@
 static int test1_dev_remove(ddf_dev_t *dev)
 {
-	test1_t *test1 = (test1_t *)dev->driver_data;
+	test1_t *test1 = (test1_t *)ddf_dev_data_get(dev);
 	int rc;
 
@@ -260,5 +265,5 @@
 static int test1_dev_gone(ddf_dev_t *dev)
 {
-	test1_t *test1 = (test1_t *)dev->driver_data;
+	test1_t *test1 = (test1_t *)ddf_dev_data_get(dev);
 	int rc;
 
