summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/mips/tx39
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libcpu/mips/tx39')
-rw-r--r--c/src/lib/libcpu/mips/tx39/.cvsignore13
-rw-r--r--c/src/lib/libcpu/mips/tx39/Makefile.am11
-rw-r--r--c/src/lib/libcpu/mips/tx39/include/.cvsignore13
-rw-r--r--c/src/lib/libcpu/mips/tx39/include/Makefile.am22
-rw-r--r--c/src/lib/libcpu/mips/tx39/include/tx3904.h63
5 files changed, 122 insertions, 0 deletions
diff --git a/c/src/lib/libcpu/mips/tx39/.cvsignore b/c/src/lib/libcpu/mips/tx39/.cvsignore
new file mode 100644
index 0000000000..525275c115
--- /dev/null
+++ b/c/src/lib/libcpu/mips/tx39/.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/Makefile.am b/c/src/lib/libcpu/mips/tx39/Makefile.am
new file mode 100644
index 0000000000..4a691c2fc2
--- /dev/null
+++ b/c/src/lib/libcpu/mips/tx39/Makefile.am
@@ -0,0 +1,11 @@
+##
+## $Id$
+##
+
+AUTOMAKE_OPTIONS = foreign 1.4
+ACLOCAL_AMFLAGS = -I ../../../../../../aclocal
+
+SUBDIRS = include
+
+include $(top_srcdir)/../../../../../automake/subdirs.am
+include $(top_srcdir)/../../../../../automake/local.am
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