Index: kernel/arch/abs32le/src/abs32le.c
===================================================================
--- kernel/arch/abs32le/src/abs32le.c	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/abs32le/src/abs32le.c	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -49,5 +49,4 @@
 #include <syscall/syscall.h>
 #include <console/console.h>
-#include <sysinfo/sysinfo.h>
 #include <memstr.h>
 
Index: kernel/arch/amd64/include/interrupt.h
===================================================================
--- kernel/arch/amd64/include/interrupt.h	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/amd64/include/interrupt.h	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -55,5 +55,4 @@
 #define IRQ_PIC_SPUR  7
 #define IRQ_MOUSE     12
-#define IRQ_NE2000    9
 
 /* This one must have four least significant bits set to ones */
Index: kernel/arch/amd64/src/amd64.c
===================================================================
--- kernel/arch/amd64/src/amd64.c	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/amd64/src/amd64.c	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -214,22 +214,8 @@
 		}
 	}
-	
-	/*
-	 * This is the necessary evil until the userspace driver is entirely
-	 * self-sufficient.
-	 */
-	sysinfo_set_item_val("i8042", NULL, true);
-	sysinfo_set_item_val("i8042.inr_a", NULL, IRQ_KBD);
-	sysinfo_set_item_val("i8042.inr_b", NULL, IRQ_MOUSE);
-	sysinfo_set_item_val("i8042.address.physical", NULL,
-	    (uintptr_t) I8042_BASE);
-	sysinfo_set_item_val("i8042.address.kernel", NULL,
-	    (uintptr_t) I8042_BASE);
 #endif
 	
 	if (irqs_info != NULL)
 		sysinfo_set_item_val(irqs_info, NULL, true);
-	
-	sysinfo_set_item_val("netif.ne2000.inr", NULL, IRQ_NE2000);
 }
 
Index: kernel/arch/arm32/src/arm32.c
===================================================================
--- kernel/arch/arm32/src/arm32.c	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/arm32/src/arm32.c	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -38,5 +38,4 @@
 #include <genarch/fb/fb.h>
 #include <abi/fb/visuals.h>
-#include <sysinfo/sysinfo.h>
 #include <console/console.h>
 #include <ddi/irq.h>
Index: kernel/arch/ia32/include/interrupt.h
===================================================================
--- kernel/arch/ia32/include/interrupt.h	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/ia32/include/interrupt.h	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -55,5 +55,4 @@
 #define IRQ_PIC_SPUR  7
 #define IRQ_MOUSE     12
-#define IRQ_NE2000    5
 
 /* This one must have four least significant bits set to ones */
Index: kernel/arch/ia32/src/ia32.c
===================================================================
--- kernel/arch/ia32/src/ia32.c	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/ia32/src/ia32.c	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -168,22 +168,8 @@
 		}
 	}
-	
-	/*
-	 * This is the necessary evil until the userspace driver is entirely
-	 * self-sufficient.
-	 */
-	sysinfo_set_item_val("i8042", NULL, true);
-	sysinfo_set_item_val("i8042.inr_a", NULL, IRQ_KBD);
-	sysinfo_set_item_val("i8042.inr_b", NULL, IRQ_MOUSE);
-	sysinfo_set_item_val("i8042.address.physical", NULL,
-	    (uintptr_t) I8042_BASE);
-	sysinfo_set_item_val("i8042.address.kernel", NULL,
-	    (uintptr_t) I8042_BASE);
 #endif
 	
 	if (irqs_info != NULL)
 		sysinfo_set_item_val(irqs_info, NULL, true);
-	
-	sysinfo_set_item_val("netif.ne2000.inr", NULL, IRQ_NE2000);
 }
 
Index: kernel/arch/ia32/src/mm/frame.c
===================================================================
--- kernel/arch/ia32/src/mm/frame.c	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/ia32/src/mm/frame.c	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -46,4 +46,6 @@
 #include <print.h>
 
+#define PHYSMEM_LIMIT32  UINT64_C(0x100000000)
+
 size_t hardcoded_unmapped_ktext_size = 0;
 size_t hardcoded_unmapped_kdata_size = 0;
@@ -56,15 +58,16 @@
 		uint64_t base64 = e820table[i].base_address;
 		uint64_t size64 = e820table[i].size;
-
+		
 #ifdef KARCH_ia32
 		/*
 		 * Restrict the e820 table entries to 32-bits.
 		 */
-		if (base64 >= 0x100000000ULL)
+		if (base64 >= PHYSMEM_LIMIT32)
 			continue;
-		if (base64 + size64 > 0x100000000ULL)
-			size64 -= base64 + size64 - 0x100000000ULL;
+		
+		if (base64 + size64 > PHYSMEM_LIMIT32)
+			size64 = PHYSMEM_LIMIT32 - base64;
 #endif
-
+		
 		uintptr_t base = (uintptr_t) base64;
 		size_t size = (size_t) size64;
Index: kernel/arch/ia64/include/interrupt.h
===================================================================
--- kernel/arch/ia64/include/interrupt.h	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/ia64/include/interrupt.h	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -61,5 +61,4 @@
 #define IRQ_KBD    (0x01 + LEGACY_INTERRUPT_BASE)
 #define IRQ_MOUSE  (0x0c + LEGACY_INTERRUPT_BASE)
-#define IRQ_NE2000 (0x09 + LEGACY_INTERRUPT_BASE)
 
 /** General Exception codes. */
Index: kernel/arch/ia64/src/ia64.c
===================================================================
--- kernel/arch/ia64/src/ia64.c	(revision 61ac34d70fecba6cf8b984c7b70622fdeec7ab57)
+++ kernel/arch/ia64/src/ia64.c	(revision 116cb910fa4dc220c3e250c165417a58ca7c95b0)
@@ -127,5 +127,6 @@
 }
 
-void arch_post_cpu_init(void){
+void arch_post_cpu_init(void)
+{
 }
 
@@ -192,5 +193,6 @@
 	
 #ifdef CONFIG_I8042
-	i8042_instance_t *i8042_instance = i8042_init((i8042_t *) I8042_BASE, IRQ_KBD);
+	i8042_instance_t *i8042_instance = i8042_init((i8042_t *) I8042_BASE,
+	    IRQ_KBD);
 	if (i8042_instance) {
 		kbrd_instance_t *kbrd_instance = kbrd_init();
@@ -201,16 +203,6 @@
 		}
 	}
-	
-	sysinfo_set_item_val("i8042", NULL, true);
-	sysinfo_set_item_val("i8042.inr_a", NULL, IRQ_KBD);
-	sysinfo_set_item_val("i8042.inr_b", NULL, IRQ_MOUSE);
-	sysinfo_set_item_val("i8042.address.physical", NULL,
-	    (uintptr_t) I8042_BASE);
-	sysinfo_set_item_val("i8042.address.kernel", NULL,
-	    (uintptr_t) I8042_BASE);
-#endif
-
-	sysinfo_set_item_val("netif.ne2000.inr", NULL, IRQ_NE2000);
-
+#endif
+	
 	sysinfo_set_item_val("ia64_iospace", NULL, true);
 	sysinfo_set_item_val("ia64_iospace.address", NULL, true);
