X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=irq.h;h=2e09926b2710405822940383e86f025ed872c752;hb=1a108a707f13f51161f1bba4723be7a990d92f3e;hp=688af9a9d6d6fdc8835d51bb0783bba509bf3186;hpb=0a6cd808a414dab189b1ffac82df6651dfb4ae34;p=ppcskel.git diff --git a/irq.h b/irq.h index 688af9a..2e09926 100644 --- a/irq.h +++ b/irq.h @@ -1,3 +1,14 @@ +/* + ppcskel - a Free Software replacement for the Nintendo/BroadOn IOS. + IRQ support + +Copyright (C) 2009 Bernhard Urban +Copyright (C) 2009 Sebastian Falbesoner + +# This code is licensed to you under the terms of the GNU GPL, version 2; +# see file COPYING or http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt +*/ + #ifndef __IRQ_H__ #define __IRQ_H__ @@ -41,6 +52,21 @@ #define BW_PI_IRQFLAG (0x0c003000) #define BW_PI_IRQMASK (0x0c003004) +// http://hitmen.c02.at/files/yagcd/yagcd/chap5.html#sec5.4 +#define BW_PI_IRQ_RESET 1 +#define BW_PI_IRQ_DI 2 +#define BW_PI_IRQ_SI 3 +#define BW_PI_IRQ_EXI 4 +#define BW_PI_IRQ_AI 5 +#define BW_PI_IRQ_DSP 6 +#define BW_PI_IRQ_MEM 7 +#define BW_PI_IRQ_VI 8 +#define BW_PI_IRQ_PE_TOKEN 9 +#define BW_PI_IRQ_PE_FINISH 10 +#define BW_PI_IRQ_CP 11 +#define BW_PI_IRQ_DEBUG 12 +#define BW_PI_IRQ_HSP 13 +#define BW_PI_IRQ_HW 14 //hollywood pic /* stolen from libogc - gc/ogc/machine/processor.h */ #define _CPU_ISR_Enable() \ @@ -85,8 +111,10 @@ void irq_shutdown(void); void irq_handler(void); -void irq_enable(u32 irq); -void irq_disable(u32 irq); +void irq_bw_enable(u32 irq); +void irq_bw_disable(u32 irq); +void irq_hw_enable(u32 irq); +void irq_hw_disable(u32 irq); u32 irq_kill(void); void irq_restore(u32 cookie); @@ -99,7 +127,6 @@ static inline void irq_wait(void) } */ -//void irq_set_alarm(u32 ms, u8 enable); #endif #else