Index: contrib/arch/uspace/lib/libc/bind
===================================================================
--- contrib/arch/uspace/lib/libc/bind	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
+++ contrib/arch/uspace/lib/libc/bind	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -0,0 +1,16 @@
+/* Bindings to kernel interfaces */
+bind %%:kernel_klog to kernel:kernel_klog;
+bind %%:kernel_console to kernel:kernel_console;
+bind %%:kernel_tls to kernel:kernel_tls;
+bind %%:kernel_thread to kernel:kernel_thread;
+bind %%:kernel_task to kernel:kernel_task;
+bind %%:kernel_program to kernel:kernel_program;
+bind %%:kernel_futex to kernel:kernel_futex;
+bind %%:kernel_smc to kernel:kernel_smc;
+bind %%:kernel_as to kernel:kernel_as;
+bind %%:kernel_ipc to kernel:kernel_sys;
+bind %%:kernel_event to kernel:kernel_event;
+bind %%:kernel_cap to kernel:kernel_cap;
+bind %%:kernel_ddi to kernel:kernel_ddi;
+bind %%:kernel_sysinfo to kernel:kernel_sysinfo;
+bind %%:kernel_debug to kernel:kernel_debug;
Index: contrib/arch/uspace/lib/libc/bind.kernel
===================================================================
--- contrib/arch/uspace/lib/libc/bind.kernel	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ 	(revision )
@@ -1,14 +1,0 @@
-/* Bindings to kernel interfaces */
-bind %%:kernel_klog to kernel:kernel_klog;
-bind %%:kernel_console to kernel:kernel_console;
-bind %%:kernel_tls to kernel:kernel_tls;
-bind %%:kernel_thread to kernel:kernel_thread;
-bind %%:kernel_task to kernel:kernel_task;
-bind %%:kernel_program to kernel:kernel_program;
-bind %%:kernel_as to kernel:kernel_as;
-bind %%:kernel_ipc to kernel:kernel_sys;
-bind %%:kernel_event to kernel:kernel_event;
-bind %%:kernel_cap to kernel:kernel_cap;
-bind %%:kernel_ddi to kernel:kernel_ddi;
-bind %%:kernel_sysinfo to kernel:kernel_sysinfo;
-bind %%:kernel_debug to kernel:kernel_debug;
Index: contrib/arch/uspace/lib/libc/fnc.devmap_device_connect
===================================================================
--- contrib/arch/uspace/lib/libc/fnc.devmap_device_connect	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/fnc.devmap_device_connect	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,2 +1,1 @@
-[devmap_get_phone] ;
-!dev.IPC_M_CONNECT_ME_TO
+!ns.ipc_m_connect_me_to /* device via devmap */
Index: contrib/arch/uspace/lib/libc/fnc.devmap_device_get_count
===================================================================
--- contrib/arch/uspace/lib/libc/fnc.devmap_device_get_count	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/fnc.devmap_device_get_count	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,2 +1,2 @@
-[devmap_get_phone] ;
-!devmap.DEVMAP_DEVICE_GET_COUNT
+[fnc.devmap_get_phone] ;
+!dm_client.device_get_count
Index: contrib/arch/uspace/lib/libc/fnc.devmap_device_get_devices
===================================================================
--- contrib/arch/uspace/lib/libc/fnc.devmap_device_get_devices	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/fnc.devmap_device_get_devices	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,3 +1,4 @@
-[devmap_get_phone] ;
-!devmap.DEVMAP_DEVICE_GET_DEVICES ;
-!devmap.IPC_M_DATA_READ
+[fnc.devmap_get_phone] ;
+!dm_client.device_get_devices {
+	!dm_client.ipc_m_data_read /* buffer */
+}
Index: contrib/arch/uspace/lib/libc/fnc.devmap_device_get_handle
===================================================================
--- contrib/arch/uspace/lib/libc/fnc.devmap_device_get_handle	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/fnc.devmap_device_get_handle	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,3 +1,4 @@
-[devmap_get_phone] ;
-!devmap.DEVMAP_DEVICE_GET_HANDLE ;
-!devmap.IPC_M_DATA_WRITE /* name */
+[fnc.devmap_get_phone] ;
+!dm_client.device_get_handle {
+	!dm_client.ipc_m_data_write /* name */
+}
Index: contrib/arch/uspace/lib/libc/fnc.devmap_get_phone
===================================================================
--- contrib/arch/uspace/lib/libc/fnc.devmap_get_phone	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/fnc.devmap_get_phone	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,2 +1,3 @@
-!ns.IPC_M_CONNECT_ME_TO /* devmap */ +
-NULL
+tentative {
+	!ns.ipc_m_connect_me_to /* devmap */
+}
Index: contrib/arch/uspace/lib/libc/protocol
===================================================================
--- contrib/arch/uspace/lib/libc/protocol	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/protocol	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,1 +1,41 @@
-/* Protocol by which libc uses uspace services */
+/* Protocol according to which libc uses kernel syscalls */
+(
+	!kernel_klog.sys_klog +
+	!kernel_tls.sys_tls_set +
+	!kernel_thread.sys_thread_create +
+	!kernel_thread.sys_thread_get_id +
+	!kernel_thread.sys_thread_exit +
+	!kernel_task.sys_task_set_name +
+	!kernel_task.sys_task_get_id +
+	!kernel_program.sys_program_spawn_loader +
+	!kernel_futex.sys_futex_sleep_timeout +
+	!kernel_futex.sys_futex_wakeup +
+	!kernel_smc.sys_smc_coherence +
+	!kernel_as.sys_as_area_create +
+	!kernel_as.sys_as_area_resize +
+	!kernel_as.sys_as_area_change_flags +
+	!kernel_as.sys_as_area_destroy +
+	!kernel_ipc.sys_ipc_call_sync_fast +
+	!kernel_ipc.sys_ipc_call_sync_slow +
+	!kernel_ipc.sys_ipc_call_async_fast +
+	!kernel_ipc.sys_ipc_call_async_slow +
+	!kernel_ipc.sys_ipc_forward_fast +
+	!kernel_ipc.sys_ipc_forward_slow +
+	!kernel_ipc.sys_ipc_answer_fast +
+	!kernel_ipc.sys_ipc_answer_slow +
+	!kernel_ipc.sys_ipc_hangup +
+	!kernel_ipc.sys_ipc_wait_for_call +
+	!kernel_ipc.sys_ipc_poke +
+	!kernel_event.sys_event_subscribe +
+	!kernel_cap.sys_cap_grant +
+	!kernel_cap.sys_cap_rewoke +
+	!kernel_ddi.sys_enable_iospace +
+	!kernel_ddi.sys_physmem_map +
+	!kernel_ddi.sys_device_assign_devno +
+	!kernel_ddi.sys_preempt_control +
+	!kernel_ddi.sys_ipc_register_irq +
+	!kernel_ddi.sys_ipc_unregister_irq +
+	!kernel_sysinfo.sys_sysinfo_valid +
+	!kernel_sysinfo.sys_sysinfo_value +
+	!kernel_debug.sys_ipc_connect_kbox
+)*
Index: contrib/arch/uspace/lib/libc/protocol.kernel
===================================================================
--- contrib/arch/uspace/lib/libc/protocol.kernel	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ 	(revision )
@@ -1,1 +1,0 @@
-/* Protocol according to which libc uses kernel syscalls */
Index: contrib/arch/uspace/lib/libc/requires
===================================================================
--- contrib/arch/uspace/lib/libc/requires	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ contrib/arch/uspace/lib/libc/requires	(revision 8c52f66d4b0e5b69c829cd73ccc05df3576dc397)
@@ -1,2 +1,16 @@
-/* Interfaces required by libc */
-naming_service ns;
+/* Kernel interfaces required by libc */
+kernel_klog kernel_klog;
+kernel_console kernel_console;
+kernel_tls kernel_tls;
+kernel_thread kernel_thread;
+kernel_task kernel_task;
+kernel_program kernel_program;
+kernel_futex kernel_futex;
+kernel_smc kernel_smc;
+kernel_as kernel_as;
+kernel_ipc kernel_sys;
+kernel_event kernel_event;
+kernel_cap kernel_cap;
+kernel_ddi kernel_ddi;
+kernel_sysinfo kernel_sysinfo;
+kernel_debug kernel_debug;
Index: contrib/arch/uspace/lib/libc/requires.kernel
===================================================================
--- contrib/arch/uspace/lib/libc/requires.kernel	(revision e8e2ae1410b2c4feac7d059af6a832c7c068e182)
+++ 	(revision )
@@ -1,14 +1,0 @@
-/* Kernel interfaces required by libc */
-kernel_klog kernel_klog;
-kernel_console kernel_console;
-kernel_tls kernel_tls;
-kernel_thread kernel_thread;
-kernel_task kernel_task;
-kernel_program kernel_program;
-kernel_as kernel_as;
-kernel_ipc kernel_sys;
-kernel_event kernel_event;
-kernel_cap kernel_cap;
-kernel_ddi kernel_ddi;
-kernel_sysinfo kernel_sysinfo;
-kernel_debug kernel_debug;
