Index: uspace/drv/fb/amdm37x_dispc/amdm37x_dispc.c
===================================================================
--- uspace/drv/fb/amdm37x_dispc/amdm37x_dispc.c	(revision bf9cb2ff74be98b6ea519f4cd121a9fe9ff54ebc)
+++ uspace/drv/fb/amdm37x_dispc/amdm37x_dispc.c	(revision 8e4a408d3222959baf54e62461fd1575e23f4fda)
@@ -34,4 +34,5 @@
  */
 
+#include <align.h>
 #include <assert.h>
 #include <errno.h>
Index: uspace/drv/fb/amdm37x_dispc/main.c
===================================================================
--- uspace/drv/fb/amdm37x_dispc/main.c	(revision bf9cb2ff74be98b6ea519f4cd121a9fe9ff54ebc)
+++ uspace/drv/fb/amdm37x_dispc/main.c	(revision 8e4a408d3222959baf54e62461fd1575e23f4fda)
@@ -35,9 +35,9 @@
  */
 
+#include <ddf/driver.h>
 #include <ddf/log.h>
 #include <errno.h>
 #include <str_error.h>
 #include <stdio.h>
-#include <ops/graph_dev.h>
 #include <graph.h>
 
@@ -46,11 +46,11 @@
 #define NAME  "amdm37x_dispc"
 
-static graph_dev_ops_t graph_vsl_dev_ops = {
-	.connect = (connect_func) &graph_visualizer_connection
-};
+static void graph_vsl_connection(ipc_callid_t iid, ipc_call_t *icall, void *arg)
+{
+	visualizer_t *vsl;
 
-static ddf_dev_ops_t graph_fun_ops = {
-	.interfaces[GRAPH_DEV_IFACE] = &graph_vsl_dev_ops
-};
+	vsl = (visualizer_t *) ddf_fun_data_get((ddf_fun_t *)arg);
+	graph_visualizer_connection(vsl, iid, icall, NULL);
+}
 
 static int amdm37x_dispc_dev_add(ddf_dev_t *dev)
@@ -74,5 +74,5 @@
 	vis->reg_svc_handle = ddf_fun_get_handle(fun);
 
-	ddf_fun_set_ops(fun, &graph_fun_ops);
+	ddf_fun_set_conn_handler(fun, graph_vsl_connection);
 	/* Hw part */
 	amdm37x_dispc_t *dispc =
Index: uspace/drv/fb/kfb/kfb.c
===================================================================
--- uspace/drv/fb/kfb/kfb.c	(revision bf9cb2ff74be98b6ea519f4cd121a9fe9ff54ebc)
+++ uspace/drv/fb/kfb/kfb.c	(revision 8e4a408d3222959baf54e62461fd1575e23f4fda)
@@ -40,5 +40,4 @@
 #include <task.h>
 #include <graph.h>
-#include <ops/graph_dev.h>
 #include "port.h"
 #include "kfb.h"
@@ -60,20 +59,4 @@
 };
 
-static graph_dev_ops_t graph_vsl_dev_ops = {
-	.connect = (connect_func) &graph_visualizer_connection
-};
-
-ddf_dev_ops_t graph_vsl_device_ops = {
-	.interfaces[GRAPH_DEV_IFACE] = &graph_vsl_dev_ops
-};
-
-static graph_dev_ops_t graph_rnd_dev_ops = {
-	.connect = (connect_func) &graph_renderer_connection
-};
-
-ddf_dev_ops_t graph_rnd_device_ops = {
-	.interfaces[GRAPH_DEV_IFACE] = &graph_rnd_dev_ops
-};
-
 int main(int argc, char *argv[])
 {
Index: uspace/drv/fb/kfb/port.c
===================================================================
--- uspace/drv/fb/kfb/port.c	(revision bf9cb2ff74be98b6ea519f4cd121a9fe9ff54ebc)
+++ uspace/drv/fb/kfb/port.c	(revision 8e4a408d3222959baf54e62461fd1575e23f4fda)
@@ -207,4 +207,12 @@
 };
 
+static void graph_vsl_connection(ipc_callid_t iid, ipc_call_t *icall, void *arg)
+{
+	visualizer_t *vsl;
+
+	vsl = (visualizer_t *) ddf_fun_data_get((ddf_fun_t *)arg);
+	graph_visualizer_connection(vsl, iid, icall, NULL);
+}
+
 int port_init(ddf_dev_t *dev)
 {
@@ -346,5 +354,5 @@
 		return ENOMEM;
 	}
-	ddf_fun_set_ops(fun_vs, &graph_vsl_device_ops);
+	ddf_fun_set_conn_handler(fun_vs, &graph_vsl_connection);
 
 	visualizer_t *vs = ddf_fun_data_alloc(fun_vs, sizeof(visualizer_t));
