Index: generic/src/adt/bitmap.c
===================================================================
--- generic/src/adt/bitmap.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/adt/bitmap.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,8 @@
  */
 
+ /** @addtogroup genericadt ADT
+ * @ingroup kernel
+ * @{
+ */
 /**
  * @file	bitmap.c
@@ -182,2 +186,6 @@
 	}
 }
+
+ /** @}
+ */
+
Index: generic/src/adt/btree.c
===================================================================
--- generic/src/adt/btree.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/adt/btree.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericadt
+ * @{
  */
 
@@ -994,2 +998,6 @@
 	printf("\n");
 }
+
+ /** @}
+ */
+
Index: generic/src/adt/hash_table.c
===================================================================
--- generic/src/adt/hash_table.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/adt/hash_table.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericadt
+ * @{
  */
 
@@ -169,2 +173,6 @@
 	}
 }
+
+ /** @}
+ */
+
Index: generic/src/adt/list.c
===================================================================
--- generic/src/adt/list.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/adt/list.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericadt
+ * @{
  */
 
@@ -86,2 +90,6 @@
 	list_initialize(head2);
 }
+
+ /** @}
+ */
+
Index: generic/src/console/chardev.c
===================================================================
--- generic/src/console/chardev.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/console/chardev.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,11 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericconsole Console
+ * @ingroup kernel
+ * @{
+ */
+/** @file
  */
 
@@ -68,2 +75,6 @@
 	spinlock_unlock(&chardev->lock);
 }
+
+ /** @}
+ */
+
Index: generic/src/console/cmd.c
===================================================================
--- generic/src/console/cmd.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/console/cmd.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericconsole
+ * @{
  */
 
@@ -61,5 +65,5 @@
 #include <ipc/ipc.h>
 
-/** Data and methods for 'help' command. */
+/* Data and methods for 'help' command. */
 static int cmd_help(cmd_arg_t *argv);
 static cmd_info_t help_info = {
@@ -84,5 +88,5 @@
 };
 
-/** Data and methods for 'description' command. */
+/* Data and methods for 'description' command. */
 static int cmd_desc(cmd_arg_t *argv);
 static void desc_help(void);
@@ -102,5 +106,5 @@
 };
 
-/** Data and methods for 'symaddr' command. */
+/* Data and methods for 'symaddr' command. */
 static int cmd_symaddr(cmd_arg_t *argv);
 static char symaddr_buf[MAX_CMDLINE+1];
@@ -138,5 +142,5 @@
 };
 
-/** Data and methods for 'call0' command. */
+/* Data and methods for 'call0' command. */
 static char call0_buf[MAX_CMDLINE+1];
 static char carg1_buf[MAX_CMDLINE+1];
@@ -158,5 +162,5 @@
 };
 
-/** Data and methods for 'call1' command. */
+/* Data and methods for 'call1' command. */
 static int cmd_call1(cmd_arg_t *argv);
 static cmd_arg_t call1_argv[] = {
@@ -180,5 +184,5 @@
 };
 
-/** Data and methods for 'call2' command. */
+/* Data and methods for 'call2' command. */
 static int cmd_call2(cmd_arg_t *argv);
 static cmd_arg_t call2_argv[] = {
@@ -207,5 +211,5 @@
 };
 
-/** Data and methods for 'call3' command. */
+/* Data and methods for 'call3' command. */
 static int cmd_call3(cmd_arg_t *argv);
 static cmd_arg_t call3_argv[] = {
@@ -240,5 +244,5 @@
 };
 
-/** Data and methods for 'halt' command. */
+/* Data and methods for 'halt' command. */
 static int cmd_halt(cmd_arg_t *argv);
 static cmd_info_t halt_info = {
@@ -249,5 +253,5 @@
 };
 
-/** Data and methods for 'tlb' command. */
+/* Data and methods for 'tlb' command. */
 static int cmd_tlb(cmd_arg_t *argv);
 cmd_info_t tlb_info = {
@@ -293,5 +297,5 @@
 };
 
-/** Data and methods for 'zones' command */
+/* Data and methods for 'zones' command */
 static int cmd_zones(cmd_arg_t *argv);
 static cmd_info_t zones_info = {
@@ -302,5 +306,5 @@
 };
 
-/** Data and methods for 'ipc_task' command */
+/* Data and methods for 'ipc_task' command */
 static int cmd_ipc_task(cmd_arg_t *argv);
 static cmd_arg_t ipc_task_argv = {
@@ -315,5 +319,5 @@
 };
 
-/** Data and methods for 'zone' command */
+/* Data and methods for 'zone' command */
 static int cmd_zone(cmd_arg_t *argv);
 static cmd_arg_t zone_argv = {
@@ -329,5 +333,5 @@
 };
 
-/** Data and methods for 'cpus' command. */
+/* Data and methods for 'cpus' command. */
 static int cmd_cpus(cmd_arg_t *argv);
 cmd_info_t cpus_info = {
@@ -340,5 +344,5 @@
 };
 
-/** Data and methods for 'version' command. */
+/* Data and methods for 'version' command. */
 static int cmd_version(cmd_arg_t *argv);
 cmd_info_t version_info = {
@@ -800,2 +804,6 @@
 	return 1;
 }
+
+ /** @}
+ */
+
Index: generic/src/console/console.c
===================================================================
--- generic/src/console/console.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/console/console.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -26,4 +26,10 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericconsole
+ * @{
+ */
+/** @file
  */
 
@@ -159,2 +165,6 @@
 		stdout->op->write(stdout, c);
 }
+
+ /** @}
+ */
+
Index: generic/src/console/kconsole.c
===================================================================
--- generic/src/console/kconsole.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/console/kconsole.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericconsole
+ * @{
  */
 
@@ -622,2 +626,6 @@
 	return found_start;
 }
+
+ /** @}
+ */
+
Index: generic/src/console/klog.c
===================================================================
--- generic/src/console/klog.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/console/klog.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,12 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericklog KLog
+ * @brief Kernel logging facility
+ * @ingroup kernel
+ * @{
+ */
+/** @file
  */
 
@@ -99,2 +107,6 @@
 	va_end(args);
 }
+
+ /** @}
+ */
+
Index: generic/src/cpu/cpu.c
===================================================================
--- generic/src/cpu/cpu.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/cpu/cpu.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -1,3 +1,3 @@
-/*
+ /*
  * Copyright (C) 2001-2004 Jakub Jermar
  * All rights reserved.
@@ -27,6 +27,17 @@
  */
 
+/** @defgroup cpu CPU
+ * @ingroup kernel
+ * @{
+ * @}
+ */
+
+ /** @addtogroup genericcpu generic
+ * @ingroup cpu
+ * @{
+ */
+
 /**
- * @file	cpu.c
+ * @file
  * @brief	CPU subsystem initialization and listing.
  */
@@ -105,2 +116,6 @@
 	}
 }
+
+ /** @}
+ */
+
Index: generic/src/ddi/ddi.c
===================================================================
--- generic/src/ddi/ddi.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/ddi/ddi.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -26,7 +26,18 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/** @defgroup ddi Device Driver Interface
+ * @ingroup kernel
+ * @{
+ * @}
+ */
+
+ /** @addtogroup genericddi generic
+ * @ingroup ddi
+ * @{
+ */
  
 /**
- * @file	ddi.c
+ * @file
  * @brief	Device Driver Interface functions.
  *
@@ -199,2 +210,6 @@
         return 0;
 }
+
+ /** @}
+ */
+
Index: generic/src/debug/symtab.c
===================================================================
--- generic/src/debug/symtab.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/debug/symtab.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,18 @@
  */
 
+ /** @defgroup debug Debug
+ * @ingroup kernel
+ * @{
+ * @}
+ */
+ 
+ 
+ /** @addtogroup genericdebug generic
+ * @ingroup debug
+ * @{
+ */
+
 /**
- * @file	symtab.c
+ * @file
  * @brief	Kernel symbol resolver.
  */
@@ -193,2 +205,6 @@
 	
 }
+
+ /** @}
+ */
+
Index: generic/src/interrupt/interrupt.c
===================================================================
--- generic/src/interrupt/interrupt.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/interrupt/interrupt.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -26,7 +26,16 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+ /** @defgroup interrupt Interrupt
+  * @ingroup kernel
+  * @{
+  * @}
+  */
 
+ /** @addtogroup genericinterrupt generic
+ * @ingroup interrupt
+ * @{
+ */
 /**
- * @file	interrupt.c
+ * @file
  * @brief	Interrupt redirector.
  *
@@ -147,2 +156,6 @@
 }
 
+
+ /** @}
+ */
+
Index: generic/src/ipc/ipc.c
===================================================================
--- generic/src/ipc/ipc.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/ipc/ipc.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,12 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericipc IPC
+  * @ingroup kernel
+  * @brief Interprocess communication protocol
+ * @{
+ */
+/** @file
  */
 
@@ -524,2 +532,6 @@
 	spinlock_unlock(&task->lock);
 }
+
+ /** @}
+ */
+
Index: generic/src/ipc/ipcrsc.c
===================================================================
--- generic/src/ipc/ipcrsc.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/ipc/ipcrsc.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,10 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericipc
+ * @{
+ */
+/** @file
  */
 
@@ -207,2 +213,6 @@
 	ipc_phone_connect(phone, box);
 }
+
+ /** @}
+ */
+
Index: generic/src/ipc/irq.c
===================================================================
--- generic/src/ipc/irq.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/ipc/irq.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,10 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericipc
+ * @{
+ */
+/** @file
  */
 
@@ -328,2 +334,6 @@
 	}
 }
+
+ /** @}
+ */
+
Index: generic/src/ipc/sysipc.c
===================================================================
--- generic/src/ipc/sysipc.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/ipc/sysipc.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,10 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup genericipc
+ * @{
+ */
+/** @file
  */
 
@@ -586,2 +592,6 @@
 	return 0;
 }
+
+ /** @}
+ */
+
Index: generic/src/lib/elf.c
===================================================================
--- generic/src/lib/elf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/lib/elf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -28,6 +28,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	elf.c
+ * @file
  * @brief	Kernel ELF loader.
  */
@@ -217,2 +221,6 @@
 	return EE_OK;
 }
+
+ /** @}
+ */
+
Index: generic/src/lib/func.c
===================================================================
--- generic/src/lib/func.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/lib/func.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	func.c
+ * @file
  * @brief	Miscellaneous functions.
  */
@@ -188,2 +192,6 @@
 	return result;
 }
+
+ /** @}
+ */
+
Index: generic/src/lib/memstr.c
===================================================================
--- generic/src/lib/memstr.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/lib/memstr.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	memstr.c
+ * @file
  * @brief	Memory string operations.
  *
@@ -111,2 +115,6 @@
 		p[i] = x;	
 }
+
+ /** @}
+ */
+
Index: generic/src/lib/sort.c
===================================================================
--- generic/src/lib/sort.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/lib/sort.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	sort.c
+ * @file
  * @brief	Sorting functions.
  *
@@ -195,2 +199,6 @@
 	return (* (__u32 *) a > * (__u32 *)b) ? 1 : (*(__u32 *)a < * (__u32 *)b) ? -1 : 0;
 }
+
+ /** @}
+ */
+
Index: generic/src/main/kinit.c
===================================================================
--- generic/src/main/kinit.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/main/kinit.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,11 @@
  */
 
+ /** @addtogroup main
+ * @ingroup kernel
+ * @{
+ */
+
 /**
- * @file	kinit.c
+ * @file
  * @brief	Kernel initialization thread.
  *
@@ -191,2 +196,6 @@
 
 }
+
+ /** @}
+ */
+
Index: generic/src/main/main.c
===================================================================
--- generic/src/main/main.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/main/main.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup main
+ * @{
+ */
+
 /**
- * @file	main.c
+ * @file
  * @brief 	Main initialization kernel function for all processors.
  *
@@ -320,2 +324,6 @@
 }
 #endif /* CONFIG_SMP */
+
+ /** @}
+ */
+
Index: generic/src/main/uinit.c
===================================================================
--- generic/src/main/uinit.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/main/uinit.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup main
+ * @{
+ */
+
 /**
- * @file	uinit.c
+ * @file
  * @brief	Userspace bootstrap thread.
  *
@@ -61,2 +65,6 @@
 	userspace(&uarg);
 }
+
+ /** @}
+ */
+
Index: generic/src/main/version.c
===================================================================
--- generic/src/main/version.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/main/version.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup main
+ * @{
+ */
+/** @file
+ */
+
 #include <main/version.h>
 #include <print.h>
@@ -53,2 +59,6 @@
 	printf("%s, release %s (%s)%s\nBuilt%s for %s\n%s\n", project, release, name, revision, timestamp, arch, copyright);
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/as.c
===================================================================
--- generic/src/mm/as.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/as.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,17 @@
  */
 
+ /** @defgroup mm Memory management
+  * @ingroup kernel
+  * @{
+  * @}
+  */
+ 
+ /** @addtogroup genericmm generic
+  * @ingroup mm
+ * @{
+ */
+
 /**
- * @file	as.c
+ * @file
  * @brief	Address space related functions.
  *
@@ -1525,2 +1536,6 @@
 	return (__native) as_area_destroy(AS, address);
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/backend_anon.c
===================================================================
--- generic/src/mm/backend_anon.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/backend_anon.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	backend_anon.c
+ * @file
  * @brief	Backend for anonymous memory address space areas.
  *
@@ -201,2 +205,6 @@
 	mutex_unlock(&area->sh_info->lock);
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/backend_elf.c
===================================================================
--- generic/src/mm/backend_elf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/backend_elf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	backend_elf.c
+ * @file
  * @brief	Backend for address space areas backed by an ELF image.
  */
@@ -301,2 +305,6 @@
 	mutex_unlock(&area->sh_info->lock);
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/backend_phys.c
===================================================================
--- generic/src/mm/backend_phys.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/backend_phys.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	backend_elf.c
+ * @file
  * @brief	Backend for address space areas backed by continuous physical memory.
  */
@@ -87,2 +91,6 @@
 {
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/buddy.c
===================================================================
--- generic/src/mm/buddy.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/buddy.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	buddy.c
+ * @file
  * @brief	Buddy allocator framework.
  *
@@ -317,2 +321,6 @@
 
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/frame.c
===================================================================
--- generic/src/mm/frame.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/frame.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -28,6 +28,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	frame.c
+ * @file
  * @brief	Physical frame allocator.
  *
@@ -1146,2 +1150,6 @@
 }
 
+
+ /** @}
+ */
+
Index: generic/src/mm/page.c
===================================================================
--- generic/src/mm/page.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/page.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	page.c
+ * @file
  * @brief	Virtual Address Translation subsystem.
  *
@@ -135,2 +139,6 @@
 	return page_mapping_operations->mapping_find(as, page);
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/slab.c
===================================================================
--- generic/src/mm/slab.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/slab.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
-/**
- * @file	slab.c
+ /** @addtogroup genericmm
+ * @{
+ */
+
+/**
+ * @file
  * @brief	Slab allocator.
  *
@@ -903,2 +907,6 @@
 	_slab_free(slab->cache, obj, slab);
 }
+
+ /** @}
+ */
+
Index: generic/src/mm/tlb.c
===================================================================
--- generic/src/mm/tlb.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/mm/tlb.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericmm
+ * @{
+ */
+
 /**
- * @file	tlb.c
+ * @file
  * @brief	Generic TLB shootdown algorithm.
  *
@@ -181,2 +185,6 @@
 
 #endif /* CONFIG_SMP */
+
+ /** @}
+ */
+
Index: generic/src/preempt/preemption.c
===================================================================
--- generic/src/preempt/preemption.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/preempt/preemption.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,8 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
  * @file	preemption.c
@@ -52,2 +56,6 @@
 	THE->preemption_disabled--;
 }
+
+ /** @}
+ */
+
Index: generic/src/printf/printf.c
===================================================================
--- generic/src/printf/printf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/printf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
+ */
+
 #include <print.h>
 
@@ -43,2 +49,6 @@
 }
 
+
+ /** @}
+ */
+
Index: generic/src/printf/printf_core.c
===================================================================
--- generic/src/printf/printf_core.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/printf_core.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -28,6 +28,9 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
 /**
- * @file	print.c
+ * @file
  * @brief	Printing functions.
  */
@@ -101,5 +104,5 @@
  * @param count 
  * @param ps output method and its data
- * @return number or printed characters
+ * @return number of printed characters
  */
 static int printf_putnchars(const char * buf, size_t count, struct printf_spec *ps)
@@ -111,5 +114,5 @@
  * @param str string to print
  * @param ps write function specification and support data
- * @return number or printed characters
+ * @return number of printed characters
  */
 static int printf_putstr(const char * str, struct printf_spec *ps)
@@ -129,5 +132,5 @@
  * @param c one character
  * @param ps output method
- * @return number or printed characters
+ * @return number of printed characters
  */
 static int printf_putchar(int c, struct printf_spec *ps)
@@ -150,5 +153,4 @@
 	if (!(flags & __PRINTF_FLAG_LEFTALIGNED)) {
 		while (--width > 0) { 	/* one space is consumed by character itself hence predecrement */
-			/* FIXME: painful slow */
 			if (printf_putchar(' ', ps) > 0)	
 				++counter;
@@ -717,2 +719,6 @@
 }
 
+
+ /** @}
+ */
+
Index: generic/src/printf/snprintf.c
===================================================================
--- generic/src/printf/snprintf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/snprintf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
+ */
+
 #include <print.h>
 #include <printf/printf_core.h>
@@ -42,2 +48,6 @@
 	return ret;
 }
+
+ /** @}
+ */
+
Index: generic/src/printf/sprintf.c
===================================================================
--- generic/src/printf/sprintf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/sprintf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
+ */
+
 #include <print.h>
 
@@ -41,2 +47,6 @@
 	return ret;
 }
+
+ /** @}
+ */
+
Index: generic/src/printf/vprintf.c
===================================================================
--- generic/src/printf/vprintf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/vprintf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
+ */
+
 #include <print.h>
 #include <printf/printf_core.h>
@@ -49,2 +55,6 @@
 
 
+
+ /** @}
+ */
+
Index: generic/src/printf/vsnprintf.c
===================================================================
--- generic/src/printf/vsnprintf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/vsnprintf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,10 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
  */
 
@@ -94,2 +100,6 @@
 	return printf_core(fmt, &ps, ap);
 }
+
+ /** @}
+ */
+
Index: generic/src/printf/vsprintf.c
===================================================================
--- generic/src/printf/vsprintf.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/printf/vsprintf.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
+ */
+
 #include <print.h>
 
@@ -34,2 +40,6 @@
 }
 
+
+ /** @}
+ */
+
Index: generic/src/proc/scheduler.c
===================================================================
--- generic/src/proc/scheduler.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/proc/scheduler.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,18 @@
  */
 
+ /**
+ * @defgroup proc Proc
+ * @ingroup kernel
+ * @{
+ * @}
+ */
+ 
+ /** @addtogroup genericproc generic
+ * @ingroup proc
+ * @{
+ */
+
 /**
- * @file	scheduler.c
+ * @file
  * @brief	Scheduler and load balancing.
  *
@@ -693,2 +705,6 @@
 	interrupts_restore(ipl);
 }
+
+ /** @}
+ */
+
Index: generic/src/proc/task.c
===================================================================
--- generic/src/proc/task.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/proc/task.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericproc
+ * @{
+ */
+
 /**
- * @file	task.c
+ * @file
  * @brief	Task management.
  */
@@ -491,2 +495,6 @@
 	task_kill(TASK->taskid);
 }
+
+ /** @}
+ */
+
Index: generic/src/proc/the.c
===================================================================
--- generic/src/proc/the.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/proc/the.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericproc
+ * @{
+ */
+
 /**
- * @file	the.c
+ * @file
  * @brief	THE structure functions.
  *
@@ -68,2 +72,6 @@
 	*dst = *src;
 }
+
+ /** @}
+ */
+
Index: generic/src/proc/thread.c
===================================================================
--- generic/src/proc/thread.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/proc/thread.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup genericproc
+ * @{
+ */
+
 /**
- * @file	thread.c
+ * @file
  * @brief	Thread management functions.
  */
@@ -609,2 +613,6 @@
 	return 0;
 }
+
+ /** @}
+ */
+
Index: generic/src/security/cap.c
===================================================================
--- generic/src/security/cap.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/security/cap.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -25,4 +25,8 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ /** @addtogroup generic	
+ * @{
  */
 
@@ -176,2 +180,6 @@
 	return 0;
 }
+
+ /** @}
+ */
+
Index: generic/src/smp/ipi.c
===================================================================
--- generic/src/smp/ipi.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/smp/ipi.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	ipi.c
+ * @file
  * @brief	Generic IPI interface.
  */
@@ -62,2 +66,6 @@
 
 #endif /* CONFIG_SMP */
+
+ /** @}
+ */
+
Index: generic/src/synch/condvar.c
===================================================================
--- generic/src/synch/condvar.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/condvar.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,11 @@
  */
 
+ /** @addtogroup sync Synchronization
+ * @ingroup kernel
+ * @{
+ */
+
 /**
- * @file	condvar.c
+ * @file
  * @brief	Condition variables.
  */
@@ -100,2 +105,6 @@
 	return rc;
 }
+
+ /** @}
+ */
+
Index: generic/src/synch/futex.c
===================================================================
--- generic/src/synch/futex.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/futex.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup sync
+ * @{
+ */
+
 /**
- * @file	futex.c
+ * @file
  * @brief	Kernel backend for futexes.
  */
@@ -331,2 +335,6 @@
 	rwlock_write_unlock(&futex_ht_lock);
 }
+
+ /** @}
+ */
+
Index: generic/src/synch/mutex.c
===================================================================
--- generic/src/synch/mutex.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/mutex.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup sync
+ * @{
+ */
+
 /**
- * @file	mutex.c
+ * @file
  * @brief	Mutexes.
  */
@@ -77,2 +81,6 @@
 }
 
+
+ /** @}
+ */
+
Index: generic/src/synch/rwlock.c
===================================================================
--- generic/src/synch/rwlock.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/rwlock.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup sync
+ * @{
+ */
+
 /**
- * @file	rwlock.c
+ * @file
  * @brief	Reader/Writer locks.
  *
@@ -380,2 +384,6 @@
 	spinlock_unlock((spinlock_t *) arg);
 }
+
+ /** @}
+ */
+
Index: generic/src/synch/semaphore.c
===================================================================
--- generic/src/synch/semaphore.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/semaphore.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup sync
+ * @{
+ */
+
 /**
- * @file	semaphore.c
+ * @file
  * @brief	Semaphores.
  */
@@ -90,2 +94,6 @@
 	waitq_wakeup(&s->wq, WAKEUP_FIRST);
 }
+
+ /** @}
+ */
+
Index: generic/src/synch/spinlock.c
===================================================================
--- generic/src/synch/spinlock.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/spinlock.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup sync
+ * @{
+ */
+
 /**
- * @file	spinlock.c
+ * @file
  * @brief	Spinlocks.
  */
@@ -154,2 +158,6 @@
 
 #endif
+
+ /** @}
+ */
+
Index: generic/src/synch/waitq.c
===================================================================
--- generic/src/synch/waitq.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/synch/waitq.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup sync
+ * @{
+ */
+
 /**
- * @file	waitq.c
+ * @file
  * @brief	Wait queue.
  *
@@ -446,2 +450,6 @@
 		goto loop;
 }
+
+ /** @}
+ */
+
Index: generic/src/syscall/copy.c
===================================================================
--- generic/src/syscall/copy.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/syscall/copy.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -26,7 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+    
+ /** @addtogroup generic
+ * @{
+ */
 
 /**
- * @file	copy.c
+ * @file
  * @brief	Copying between kernel and userspace.
  *
@@ -124,2 +128,6 @@
 	return !rc ? EPERM : 0;
 }
+
+ /** @}
+ */
+
Index: generic/src/syscall/syscall.c
===================================================================
--- generic/src/syscall/syscall.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/syscall/syscall.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic
+ * @{
+ */
+
 /**
- * @file	syscall.c
+ * @file
  * @brief	Syscall table and syscall wrappers.
  */
@@ -155,2 +159,6 @@
 	sys_debug_enable_console
 };
+
+ /** @}
+ */
+
Index: generic/src/sysinfo/sysinfo.c
===================================================================
--- generic/src/sysinfo/sysinfo.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/sysinfo/sysinfo.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,4 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+/** @file
+ */
+
 #include <sysinfo/sysinfo.h>
 #include <mm/slab.h>
@@ -300,2 +306,6 @@
 	return ret.val;
 }
+
+ /** @}
+ */
+
Index: generic/src/time/clock.c
===================================================================
--- generic/src/time/clock.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/time/clock.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,16 @@
  */
 
+/** @defgroup others Others
+ * @ingroup kernel
+ * @{
+ * @}
+ */
+
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	clock.c
+ * @file
  * @brief	High-level clock interrupt handler.
  *
@@ -183,2 +193,6 @@
 
 }
+
+ /** @}
+ */
+
Index: generic/src/time/delay.c
===================================================================
--- generic/src/time/delay.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/time/delay.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	delay.c
+ * @file
  * @brief	Active delay function.
  */
@@ -60,2 +64,6 @@
 	interrupts_restore(ipl);
 }
+
+ /** @}
+ */
+
Index: generic/src/time/timeout.c
===================================================================
--- generic/src/time/timeout.c	(revision 279952c3a17490aba34717af97916ac61b060142)
+++ generic/src/time/timeout.c	(revision b45c443eb976adbe668a3f855f749cf0ad3a5b3f)
@@ -27,6 +27,10 @@
  */
 
+ /** @addtogroup generic	
+ * @{
+ */
+
 /**
- * @file	timeout.c
+ * @file
  * @brief	Timeout management functions.
  */
@@ -210,2 +214,6 @@
 	return true;
 }
+
+ /** @}
+ */
+
