Index: kernel/generic/include/cap/cap.h
===================================================================
--- kernel/generic/include/cap/cap.h	(revision fa3ed5b2ad5250dbbe32d35a1db4cf866f983ba6)
+++ kernel/generic/include/cap/cap.h	(revision 2df21755623b239a0d57f0639a0bfcf636cd3d5b)
@@ -60,13 +60,8 @@
 } kobject_type_t;
 
-struct task;
-
-struct call;
-struct irq;
-struct phone;
-struct waitq;
+struct kobject;
 
 typedef struct kobject_ops {
-	void (*destroy)(void *);
+	void (*destroy)(struct kobject *);
 } kobject_ops_t;
 
@@ -77,5 +72,5 @@
 /*
  * Everything in kobject_t except for the atomic reference count, the capability
- * list and its lock is imutable.
+ * list and its lock is immutable.
  */
 typedef struct kobject {
@@ -87,12 +82,4 @@
 	/** List of published capabilities associated with the kobject */
 	list_t caps_list;
-
-	union {
-		void *raw;
-		struct call *call;
-		struct irq *irq;
-		struct phone *phone;
-		struct waitq *waitq;
-	};
 } kobject_t;
 
@@ -141,7 +128,5 @@
 extern void cap_free(struct task *, cap_handle_t);
 
-extern kobject_t *kobject_alloc(unsigned int);
-extern void kobject_free(kobject_t *);
-extern void kobject_initialize(kobject_t *, kobject_type_t, void *);
+extern void kobject_initialize(kobject_t *, kobject_type_t);
 extern kobject_t *kobject_get(struct task *, cap_handle_t, kobject_type_t);
 extern void kobject_add_ref(kobject_t *);
