#include "video_low.h"
#include "input.h"
#include "console.h"
+#include "ohci.h"
+#include "irq.h"
#define MINIMUM_MINI_VERSION 0x00010001
exception_init();
dsp_reset();
- // clear interrupt mask
- write32(0x0c003004, 0);
+ irq_initialize();
+ irq_bw_enable(BW_PI_IRQ_RESET);
+ irq_bw_enable(BW_PI_IRQ_HW); //hollywood pic
+ irq_hw_enable(IRQ_OHCI0);
ipc_initialize();
ipc_slowping();
VIDEO_SetFrameBuffer(get_xfb());
VISetupEncoder();
+ ohci_init();
+
u32 version = ipc_getvers();
u16 mini_version_major = version >> 16 & 0xFFFF;
u16 mini_version_minor = version & 0xFFFF;
; // better ideas welcome!
}
+ /*
print_str_noscroll(112, 112, "ohai, world!\n");
-
testOTP();
-
printf("bye, world!\n");
+ */
- // enable RESET interrupt
- write32(0x0c003004, 1<<1);
-#define _CPU_ISR_Enable() \
- { register u32 _val = 0; \
- __asm__ __volatile__ ( \
- "mfmsr %0\n" \
- "ori %0,%0,0x8000\n" \
- "mtmsr %0" \
- : "=&r" ((_val)) : "0" ((_val)) \
- ); \
+ while(1) {
+ // just to get sure we are still in this loop
+ //_CPU_ISR_Enable() // don't know why this is needed...
+ //udelay(100000);
+ //printf("x");
}
- _CPU_ISR_Enable()
-
- while(1) {}
return 0;
}