Index: kernel/arch/sparc64/include/boot/boot.h
===================================================================
--- kernel/arch/sparc64/include/boot/boot.h	(revision 1167520724b9b526c27b67f2d4bc447ef626240c)
+++ kernel/arch/sparc64/include/boot/boot.h	(revision 5d3d7c2b024a581b55bf33d1145b5c8a62def365)
@@ -33,9 +33,63 @@
  */
 
-#ifndef __sparc64_BOOT_H__
-#define __sparc64_BOOT_H__
+#ifndef KERN_sparc64_BOOT_H_
+#define KERN_sparc64_BOOT_H_
+
 
 #define VMA			0x400000
 #define LMA			VMA
+
+#ifndef __LINKER__
+
+#include <arch/types.h>
+#include <typedefs.h>
+
+#define TASKMAP_MAX_RECORDS	32
+#define MEMMAP_MAX_RECORDS	32
+
+typedef struct {
+	void * addr;
+	uint32_t size;
+} utask_t;
+
+typedef struct {
+	uint32_t count;
+	utask_t tasks[TASKMAP_MAX_RECORDS];
+} taskmap_t;
+
+typedef struct {
+	uintptr_t start;
+	uint32_t size;
+} memzone_t;
+
+typedef struct {
+	uint32_t total;
+	uint32_t count;
+	memzone_t zones[MEMMAP_MAX_RECORDS];
+} memmap_t;
+
+typedef struct {
+	uintptr_t addr;
+	uint32_t width;
+	uint32_t height;
+	uint32_t bpp;
+	uint32_t scanline;
+} screen_t;
+
+typedef struct {
+	uintptr_t addr;
+	uint32_t size;
+} keyboard_t;
+
+typedef struct {
+	taskmap_t taskmap;
+	memmap_t memmap;
+	screen_t screen;
+	keyboard_t keyboard;
+} bootinfo_t;
+
+extern bootinfo_t bootinfo;
+
+#endif
 
 #endif
