Index: uspace/app/sportdmp/sportdmp.c
===================================================================
--- uspace/app/sportdmp/sportdmp.c	(revision cecba66ea48d60cfa59865e98aeda663808e42c7)
+++ uspace/app/sportdmp/sportdmp.c	(revision b1f36e3cd6479914de8e2dc0bc820a9d75ddfaff)
@@ -29,5 +29,5 @@
 #include <char_dev_iface.h>
 #include <errno.h>
-#include <ipc/serial_ctl.h>
+#include <io/serial.h>
 #include <loc.h>
 #include <stdio.h>
@@ -44,4 +44,5 @@
 	sysarg_t baud = 9600;
 	service_id_t svc_id;
+	serial_t *serial;
 
 	int arg = 1;
@@ -113,13 +114,16 @@
 	async_sess_t *sess = loc_service_connect(svc_id, INTERFACE_DDF,
 	    IPC_FLAG_BLOCKING);
-	if (!sess) {
+	if (sess == NULL) {
 		fprintf(stderr, "Failed connecting to service\n");
+		return 2;
 	}
 
-	async_exch_t *exch = async_exchange_begin(sess);
-	rc = async_req_4_0(exch, SERIAL_SET_COM_PROPS, baud,
-	    SERIAL_NO_PARITY, 8, 1);
-	async_exchange_end(exch);
+	rc = serial_open(sess, &serial);
+	if (rc != EOK) {
+		fprintf(stderr, "Failed opening serial port\n");
+		return 2;
+	}
 
+	rc = serial_set_comm_props(serial, baud, SERIAL_NO_PARITY, 8, 1);
 	if (rc != EOK) {
 		fprintf(stderr, "Failed setting serial properties\n");
@@ -147,4 +151,6 @@
 
 	free(buf);
+	serial_close(serial);
+	async_hangup(sess);
 	return 0;
 }
