Index: uspace/srv/hid/s3c24xx_ts/s3c24xx_ts.c
===================================================================
--- uspace/srv/hid/s3c24xx_ts/s3c24xx_ts.c	(revision ffa2c8ef45390c01f3f4be4827bcd41c32f7951c)
+++ uspace/srv/hid/s3c24xx_ts/s3c24xx_ts.c	(revision 8869f7b310c75def5ca6f30c89f5c71101c214a9)
@@ -44,4 +44,5 @@
 #include <ipc/mouse.h>
 #include <async.h>
+#include <async_obsolete.h>
 #include <unistd.h>
 #include <stdio.h>
@@ -50,6 +51,8 @@
 #include <errno.h>
 #include <inttypes.h>
-
 #include "s3c24xx_ts.h"
+
+// FIXME: remove this header
+#include <kernel/ipc/ipc_methods.h>
 
 #define NAME "s3c24ser"
@@ -280,5 +283,5 @@
 	button = 1;
 	press = 0;
-	async_msg_2(ts->client_phone, MEVENT_BUTTON, button, press);
+	async_obsolete_msg_2(ts->client_phone, MEVENT_BUTTON, button, press);
 
 	s3c24xx_ts_wait_for_int_mode(ts, updn_down);
@@ -321,6 +324,6 @@
 
 	/* Send notifications to client. */
-	async_msg_2(ts->client_phone, MEVENT_MOVE, dx, dy);
-	async_msg_2(ts->client_phone, MEVENT_BUTTON, button, press);
+	async_obsolete_msg_2(ts->client_phone, MEVENT_MOVE, dx, dy);
+	async_obsolete_msg_2(ts->client_phone, MEVENT_BUTTON, button, press);
 
 	ts->last_x = x_pos;
@@ -380,8 +383,8 @@
 	while (1) {
 		callid = async_get_call(&call);
-		switch (IPC_GET_IMETHOD(call)) {
-		case IPC_M_PHONE_HUNGUP:
+		
+		if (!IPC_GET_IMETHOD(call)) {
 			if (ts->client_phone != -1) {
-				async_hangup(ts->client_phone);
+				async_obsolete_hangup(ts->client_phone);
 				ts->client_phone = -1;
 			}
@@ -389,4 +392,7 @@
 			async_answer_0(callid, EOK);
 			return;
+		}
+		
+		switch (IPC_GET_IMETHOD(call)) {
 		case IPC_M_CONNECT_TO_ME:
 			if (ts->client_phone != -1) {
