Index: uspace/lib/c/include/ipc/devman.h
===================================================================
--- uspace/lib/c/include/ipc/devman.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/c/include/ipc/devman.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -146,5 +146,4 @@
 typedef enum {
 	DRIVER_DEV_ADD = IPC_FIRST_USER_METHOD,
-	DRIVER_DEV_ADDED,
 	DRIVER_DEV_REMOVE,
 	DRIVER_DEV_GONE,
Index: uspace/lib/c/include/ipc/net.h
===================================================================
--- uspace/lib/c/include/ipc/net.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/c/include/ipc/net.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -305,5 +305,5 @@
  *
  */
-#define IPC_GET_DEVICE_HANDLE(call)  ((devman_handle_t) IPC_GET_ARG2(call))
+#define IPC_GET_DEVICE_HANDLE(call)  ((service_id_t) IPC_GET_ARG2(call))
 
 /** Return the device driver service message argument.
Index: uspace/lib/c/include/ipc/net_net.h
===================================================================
--- uspace/lib/c/include/ipc/net_net.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/c/include/ipc/net_net.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -54,7 +54,5 @@
 	NET_NET_GET_DEVICES_COUNT,
 	/** Return names and device IDs of all devices */
-	NET_NET_GET_DEVICES,
-	/** Notify the networking service about a ready device */
-	NET_NET_DRIVER_READY
+	NET_NET_GET_DEVICES
 } net_messages;
 
Index: uspace/lib/drv/generic/driver.c
===================================================================
--- uspace/lib/drv/generic/driver.c	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/drv/generic/driver.c	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -303,14 +303,4 @@
 }
 
-static void driver_dev_added(ipc_callid_t iid, ipc_call_t *icall)
-{
-	fibril_mutex_lock(&devices_mutex);
-	ddf_dev_t *dev = driver_get_device(IPC_GET_ARG1(*icall));
-	fibril_mutex_unlock(&devices_mutex);
-	
-	if (dev != NULL && driver->driver_ops->device_added != NULL)
-		driver->driver_ops->device_added(dev);
-}
-
 static void driver_dev_remove(ipc_callid_t iid, ipc_call_t *icall)
 {
@@ -460,8 +450,4 @@
 		case DRIVER_DEV_ADD:
 			driver_dev_add(callid, &call);
-			break;
-		case DRIVER_DEV_ADDED:
-			async_answer_0(callid, EOK);
-			driver_dev_added(callid, &call);
 			break;
 		case DRIVER_DEV_REMOVE:
Index: uspace/lib/drv/include/ddf/driver.h
===================================================================
--- uspace/lib/drv/include/ddf/driver.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/drv/include/ddf/driver.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -145,13 +145,4 @@
 	/** Ask driver to offline a specific function */
 	int (*fun_offline)(ddf_fun_t *);
-
-	/**
-	 * Notification that the device was succesfully added.
-	 * The driver can do any blocking operation without
-	 * blocking the device manager.
-	 *
-	 * XXX REMOVE THIS
-	 */
-	void (*device_added)(ddf_dev_t *dev);
 } driver_ops_t;
 
Index: uspace/lib/net/generic/net_remote.c
===================================================================
--- uspace/lib/net/generic/net_remote.c	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/net/generic/net_remote.c	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -167,13 +167,4 @@
 }
 
-int net_driver_ready(async_sess_t *sess, devman_handle_t handle)
-{
-	async_exch_t *exch = async_exchange_begin(sess);
-	int rc = async_req_1_0(exch, NET_NET_DRIVER_READY, handle);
-	async_exchange_end(exch);
-	
-	return rc;
-}
-
 /** @}
  */
Index: uspace/lib/net/include/net_interface.h
===================================================================
--- uspace/lib/net/include/net_interface.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/net/include/net_interface.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -52,5 +52,4 @@
 extern int net_get_devices_req(async_sess_t *, measured_string_t **, size_t *,
     uint8_t **);
-extern int net_driver_ready(async_sess_t *, devman_handle_t);
 extern async_sess_t *net_connect_module(void);
 
Index: uspace/lib/net/include/nil_remote.h
===================================================================
--- uspace/lib/net/include/nil_remote.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/net/include/nil_remote.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -34,4 +34,5 @@
 #define __NET_NIL_REMOTE_H__
 
+#include <ipc/loc.h>
 #include <net/device.h>
 #include <net/packet.h>
Index: uspace/lib/net/nil/nil_remote.c
===================================================================
--- uspace/lib/net/nil/nil_remote.c	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/net/nil/nil_remote.c	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -36,4 +36,5 @@
  */
 
+#include <ipc/loc.h>
 #include <nil_remote.h>
 #include <generic.h>
@@ -123,9 +124,9 @@
 
 int nil_device_req(async_sess_t *sess, nic_device_id_t device_id,
-    devman_handle_t handle, size_t mtu)
+    service_id_t sid, size_t mtu)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
 	int rc = async_req_3_0(exch, NET_NIL_DEVICE, (sysarg_t) device_id,
-	    (sysarg_t) handle, (sysarg_t) mtu);
+	    (sysarg_t) sid, (sysarg_t) mtu);
 	async_exchange_end(exch);
 	return rc;
Index: uspace/lib/nic/include/nic.h
===================================================================
--- uspace/lib/nic/include/nic.h	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/nic/include/nic.h	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -219,7 +219,4 @@
 extern void nic_set_poll_handlers(nic_t *,
 	poll_mode_change_handler, poll_request_handler);
-
-/* Functions called in device_added */
-extern int nic_ready(nic_t *);
 
 /* General driver functions */
Index: uspace/lib/nic/src/nic_driver.c
===================================================================
--- uspace/lib/nic/src/nic_driver.c	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/nic/src/nic_driver.c	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -89,9 +89,4 @@
     nic_iface_t *iface)
 {
-	if (driver_ops) {
-		if (!driver_ops->device_added)
-			driver_ops->device_added = nic_device_added_impl;
-	}
-
 	if (dev_ops) {
 		if (!dev_ops->open)
@@ -464,26 +459,4 @@
 }
 
-/** Notify the NET service that the device is ready
- *
- * @param nic NICF structure
- *
- * @return EOK on success
- *
- */
-int nic_ready(nic_t *nic)
-{
-	fibril_rwlock_read_lock(&nic->main_lock);
-	
-	async_sess_t *session = nic->net_session;
-	devman_handle_t handle = nic->dev->handle;
-	
-	fibril_rwlock_read_unlock(&nic->main_lock);
-	
-	if (session == NULL)
-		return EINVAL;
-	
-	return net_driver_ready(session, handle);
-}
-
 /** Inform the NICF about poll mode
  *
Index: uspace/lib/nic/src/nic_impl.c
===================================================================
--- uspace/lib/nic/src/nic_impl.c	(revision e86b8f0a4a36b968e6ed12053ec2fbf42b8b5f9e)
+++ uspace/lib/nic/src/nic_impl.c	(revision ce7676cd63f24d952e41aa1f7d40bb884e31c3cd)
@@ -805,16 +805,4 @@
 }
 
-/** Default implementation of the device_added method
- *
- * Just calls nic_ready.
- *
- * @param dev
- *
- */
-void nic_device_added_impl(ddf_dev_t *dev)
-{
-	nic_ready((nic_t *) dev->driver_data);
-}
-
 /**
  * Default handler for unknown methods (outside of the NIC interface).
