diff options
Diffstat (limited to 'c/src/lib/libcpu/mips/tx39/include')
-rw-r--r-- | c/src/lib/libcpu/mips/tx39/include/.cvsignore | 13 | ||||
-rw-r--r-- | c/src/lib/libcpu/mips/tx39/include/Makefile.am | 22 | ||||
-rw-r--r-- | c/src/lib/libcpu/mips/tx39/include/tx3904.h | 63 |
3 files changed, 98 insertions, 0 deletions
diff --git a/c/src/lib/libcpu/mips/tx39/include/.cvsignore b/c/src/lib/libcpu/mips/tx39/include/.cvsignore new file mode 100644 index 0000000000..525275c115 --- /dev/null +++ b/c/src/lib/libcpu/mips/tx39/include/.cvsignore @@ -0,0 +1,13 @@ +Makefile +Makefile.in +aclocal.m4 +config.cache +config.guess +config.log +config.status +config.sub +configure +depcomp +install-sh +missing +mkinstalldirs diff --git a/c/src/lib/libcpu/mips/tx39/include/Makefile.am b/c/src/lib/libcpu/mips/tx39/include/Makefile.am new file mode 100644 index 0000000000..2c680fb005 --- /dev/null +++ b/c/src/lib/libcpu/mips/tx39/include/Makefile.am @@ -0,0 +1,22 @@ +## +## $Id$ +## + +AUTOMAKE_OPTIONS = foreign 1.4 + +H_FILES = tx3904.h + +$(PROJECT_INCLUDE)/libcpu: + $(mkinstalldirs) $@ + +$(PROJECT_INCLUDE)/libcpu/%.h: %.h + $(INSTALL_DATA) $< $@ + +TMPINSTALL_FILES += $(PROJECT_INCLUDE)/libcpu \ + $(H_FILES:%.h=$(PROJECT_INCLUDE)/libcpu/%.h) + +all-local: $(TMPINSTALL_FILES) + +EXTRA_DIST = tx3904.h + +include $(top_srcdir)/../../../../../automake/local.am diff --git a/c/src/lib/libcpu/mips/tx39/include/tx3904.h b/c/src/lib/libcpu/mips/tx39/include/tx3904.h new file mode 100644 index 0000000000..ac0efae1f6 --- /dev/null +++ b/c/src/lib/libcpu/mips/tx39/include/tx3904.h @@ -0,0 +1,63 @@ +/* + * MIPS Tx3904 specific information + * + * NOTE: This is far from complete. --joel (13 Dec 2000) + * + * $Id$ + */ + +#ifndef __TX3904_h +#define __TX3904_h + +/* + * Timer Base Addresses and Offsets + */ + +#define TX3904_TIMER0_BASE 0xFFFFF000 +#define TX3904_TIMER1_BASE 0xFFFFF100 +#define TX3904_TIMER2_BASE 0xFFFFF200 + +#define TX3904_TIMER_TCR 0x00 +#define TX3904_TIMER_TISR 0x04 +#define TX3904_TIMER_CPRA 0x08 +#define TX3904_TIMER_CPRB 0x0C +#define TX3904_TIMER_ITMR 0x10 +#define TX3904_TIMER_CCDR 0x20 +#define TX3904_TIMER_PGMR 0x30 +#define TX3904_TIMER_WTMR 0x40 +#define TX3904_TIMER_TRR 0xF0 + +#define TX3904_TIMER_READ( _base, _register ) \ + *((volatile unsigned32 *)((_base) + (_register))) + +#define TX3904_TIMER_WRITE( _base, _register, _value ) \ + *((volatile unsigned32 *)((_base) + (_register))) = (_value) + +/* + * Interrupt Vector Numbers + * + * NOTE: Numbers 0-15 directly map to levels on the IRC. + * Number 16 is "1xxxx" per p. 164 of the TX3904 manual. + */ + +#define TX3904_IRQ_INT1 0 +#define TX3904_IRQ_INT2 1 +#define TX3904_IRQ_INT3 2 +#define TX3904_IRQ_INT4 3 +#define TX3904_IRQ_INT5 4 +#define TX3904_IRQ_INT6 5 +#define TX3904_IRQ_INT7 6 +#define TX3904_IRQ_DMAC3 7 +#define TX3904_IRQ_DMAC2 8 +#define TX3904_IRQ_DMAC1 9 +#define TX3904_IRQ_DMAC0 10 +#define TX3904_IRQ_SIO0 11 +#define TX3904_IRQ_SIO1 12 +#define TX3904_IRQ_TMR0 13 +#define TX3904_IRQ_TMR1 14 +#define TX3904_IRQ_TMR2 15 +#define TX3904_IRQ_INT0 16 +#define TX3904_IRQ_SOFTWARE_1 17 +#define TX3904_IRQ_SOFTWARE_2 18 + +#endif |