Index: kernel/arch/arm32/include/arch/arch.h
===================================================================
--- kernel/arch/arm32/include/arch/arch.h	(revision c5429fedb8216659204bbbdba42d7f5a845e4dda)
+++ kernel/arch/arm32/include/arch/arch.h	(revision 0e8c1584adefcff10cbc443b9c7e6d09632b6bc9)
@@ -53,4 +53,8 @@
 	size_t cnt;
 	utask_t tasks[TASKMAP_MAX_RECORDS];
+} taskmap_t;
+
+typedef struct {
+	taskmap_t taskmap;
 } bootinfo_t;
 
Index: kernel/arch/arm32/src/arm32.c
===================================================================
--- kernel/arch/arm32/src/arm32.c	(revision c5429fedb8216659204bbbdba42d7f5a845e4dda)
+++ kernel/arch/arm32/src/arm32.c	(revision 0e8c1584adefcff10cbc443b9c7e6d09632b6bc9)
@@ -67,12 +67,12 @@
 void arm32_pre_main(void *entry __attribute__((unused)), bootinfo_t *bootinfo)
 {
-	init.cnt = min3(bootinfo->cnt, TASKMAP_MAX_RECORDS, CONFIG_INIT_TASKS);
+	init.cnt = min3(bootinfo->taskmap.cnt, TASKMAP_MAX_RECORDS, CONFIG_INIT_TASKS);
 
 	size_t i;
 	for (i = 0; i < init.cnt; i++) {
-		init.tasks[i].paddr = KA2PA(bootinfo->tasks[i].addr);
-		init.tasks[i].size = bootinfo->tasks[i].size;
+		init.tasks[i].paddr = KA2PA(bootinfo->taskmap.tasks[i].addr);
+		init.tasks[i].size = bootinfo->taskmap.tasks[i].size;
 		str_cpy(init.tasks[i].name, CONFIG_TASK_NAME_BUFLEN,
-		    bootinfo->tasks[i].name);
+		    bootinfo->taskmap.tasks[i].name);
 	}
 
