Index: kernel/arch/ppc32/src/drivers/cuda.c
===================================================================
--- kernel/arch/ppc32/src/drivers/cuda.c	(revision e16e0d595cccccd7668bd8111478ac903c1b3be3)
+++ kernel/arch/ppc32/src/drivers/cuda.c	(revision eada065ed94f5f5b588f03c3685cfed92a7987e8)
@@ -41,4 +41,5 @@
 #include <interrupt.h>
 #include <stdarg.h>
+#include <ddi/device.h>
 
 #define CUDA_IRQ 10
@@ -242,5 +243,5 @@
 }
 
-void cuda_init(devno_t devno, uintptr_t base, size_t size)
+void cuda_init(uintptr_t base, size_t size)
 {
 	cuda = (uint8_t *) hw_map(base, size);
@@ -250,5 +251,5 @@
 	
 	irq_initialize(&cuda_irq);
-	cuda_irq.devno = devno;
+	cuda_irq.devno = device_assign_devno();
 	cuda_irq.inr = CUDA_IRQ;
 	cuda_irq.claim = cuda_claim;
@@ -259,5 +260,4 @@
 	
 	sysinfo_set_item_val("kbd", NULL, true);
-	sysinfo_set_item_val("kbd.devno", NULL, devno);
 	sysinfo_set_item_val("kbd.inr", NULL, CUDA_IRQ);
 	sysinfo_set_item_val("kbd.address.virtual", NULL, base);
Index: kernel/arch/ppc32/src/ppc32.c
===================================================================
--- kernel/arch/ppc32/src/ppc32.c	(revision e16e0d595cccccd7668bd8111478ac903c1b3be3)
+++ kernel/arch/ppc32/src/ppc32.c	(revision eada065ed94f5f5b588f03c3685cfed92a7987e8)
@@ -43,5 +43,4 @@
 #include <proc/uarg.h>
 #include <console/console.h>
-#include <ddi/device.h>
 #include <ddi/irq.h>
 #include <arch/drivers/pic.h>
@@ -122,6 +121,5 @@
 			
 			/* Initialize I/O controller */
-			cuda_init(device_assign_devno(),
-			    bootinfo.macio.addr + 0x16000, 2 * PAGE_SIZE);
+			cuda_init(bootinfo.macio.addr + 0x16000, 2 * PAGE_SIZE);
 		}
 		
