Index: arch/ppc32/src/boot/boot.S
===================================================================
--- arch/ppc32/src/boot/boot.S	(revision edc89bd06235d952cbfa29940f60b97cb3bf9c02)
+++ arch/ppc32/src/boot/boot.S	(revision d99d8c8981900bab307449e417882d0a2e868c73)
@@ -36,4 +36,9 @@
 .global kernel_image_start
 kernel_image_start:
+
+	# load temporary stack
+	
+	lis sp, end_stack@ha
+	addi sp, sp, end_stack@l
 	
 	# r10 contains physical address to memmap_t
@@ -70,2 +75,7 @@
 	
 	b main_bsp
+
+.section K_DATA_START, "aw", @progbits
+	
+	.space TEMP_STACK_SIZE
+end_stack:
Index: arch/ppc32/src/drivers/cuda.c
===================================================================
--- arch/ppc32/src/drivers/cuda.c	(revision edc89bd06235d952cbfa29940f60b97cb3bf9c02)
+++ arch/ppc32/src/drivers/cuda.c	(revision d99d8c8981900bab307449e417882d0a2e868c73)
@@ -49,4 +49,9 @@
 
 
+void cuda_init(void)
+{
+}
+
+
 static void cuda_packet(const __u8 data)
 {
Index: arch/ppc32/src/exception.S
===================================================================
--- arch/ppc32/src/exception.S	(revision edc89bd06235d952cbfa29940f60b97cb3bf9c02)
+++ arch/ppc32/src/exception.S	(revision d99d8c8981900bab307449e417882d0a2e868c73)
@@ -85,4 +85,5 @@
 .global exc_decrementer
 exc_decrementer:
+	rfi
 	b exc_decrementer
 
Index: arch/ppc32/src/ppc32.c
===================================================================
--- arch/ppc32/src/ppc32.c	(revision edc89bd06235d952cbfa29940f60b97cb3bf9c02)
+++ arch/ppc32/src/ppc32.c	(revision d99d8c8981900bab307449e417882d0a2e868c73)
@@ -29,5 +29,5 @@
 #include <arch.h>
 #include <arch/console.h>
-
+#include <arch/drivers/cuda.h>
 #include <arch/mm/memory_init.h>
 
@@ -35,4 +35,5 @@
 {
 	ppc32_console_init();
+	cuda_init();
 }
 
