summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/lm32/milkymist/include
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/lm32/milkymist/include')
-rw-r--r--c/src/lib/libbsp/lm32/milkymist/include/.cvsignore4
-rw-r--r--c/src/lib/libbsp/lm32/milkymist/include/bsp.h74
-rw-r--r--c/src/lib/libbsp/lm32/milkymist/include/system_conf.h56
-rw-r--r--c/src/lib/libbsp/lm32/milkymist/include/tm27.h32
4 files changed, 166 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/lm32/milkymist/include/.cvsignore b/c/src/lib/libbsp/lm32/milkymist/include/.cvsignore
new file mode 100644
index 0000000000..a83132db41
--- /dev/null
+++ b/c/src/lib/libbsp/lm32/milkymist/include/.cvsignore
@@ -0,0 +1,4 @@
+stamp-h
+stamp-h.in
+bspopts.h
+bspopts.h.in
diff --git a/c/src/lib/libbsp/lm32/milkymist/include/bsp.h b/c/src/lib/libbsp/lm32/milkymist/include/bsp.h
new file mode 100644
index 0000000000..2d5a91c7c0
--- /dev/null
+++ b/c/src/lib/libbsp/lm32/milkymist/include/bsp.h
@@ -0,0 +1,74 @@
+/* bsp.h
+ *
+ * This include file contains all board IO definitions.
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ *
+ * Yann Sionneau <yann.sionneau@telecom-sudparis.eu>, (GSoC 2010)
+ * Telecom SudParis
+ */
+
+#ifndef _BSP_H
+#define _BSP_H
+
+#include <stdint.h>
+#include <bspopts.h>
+
+#include <rtems.h>
+#include <rtems/console.h>
+#include <rtems/clockdrv.h>
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define BSP_DIRTY_MEMORY 1
+
+#define BSP_HAS_FRAME_BUFFER 1
+
+#define GPIO_DRIVER_TABLE_ENTRY { gpio_initialize, \
+gpio_open, gpio_close, gpio_read, gpio_write, gpio_control}
+
+ /*
+ * lm32 requires certain aligment of mbuf because unaligned uint32_t
+ * accesses are not handled properly.
+ */
+
+#define CPU_U32_FIX
+
+#if defined(RTEMS_NETWORKING)
+#include <rtems/rtems_bsdnet.h>
+struct rtems_bsdnet_ifconfig;
+extern int rtems_minimac_driver_attach (struct rtems_bsdnet_ifconfig *config,
+ int attaching);
+#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_minimac_driver_attach
+#define RTEMS_BSP_NETWORK_DRIVER_NAME "minimac0"
+#endif
+
+ /*
+ * Simple spin delay in microsecond units for device drivers.
+ * This is very dependent on the clock speed of the target.
+ */
+
+#define rtems_bsp_delay( microseconds ) \
+ { \
+ }
+
+/* functions */
+lm32_isr_entry set_vector( /* returns old vector */
+ rtems_isr_entry handler, /* isr routine */
+ rtems_vector_number vector, /* vector number */
+ int type /* RTEMS or RAW intr */
+);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+/* end of include file */
diff --git a/c/src/lib/libbsp/lm32/milkymist/include/system_conf.h b/c/src/lib/libbsp/lm32/milkymist/include/system_conf.h
new file mode 100644
index 0000000000..5f49c91f76
--- /dev/null
+++ b/c/src/lib/libbsp/lm32/milkymist/include/system_conf.h
@@ -0,0 +1,56 @@
+/* system_conf.h
+ * Global System conf
+ *
+ * Milkymist port of RTEMS
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ *
+ */
+
+#ifndef __SYSTEM_CONFIG_H_
+#define __SYSTEM_CONFIG_H_
+
+#define CPU_FREQUENCY (83333333)
+#define UART_BAUD_RATE (115200)
+
+#define MM_TIMER1_COMPARE (0xe0001024)
+#define MM_TIMER1_COUNTER (0xe0001028)
+#define MM_TIMER1_CONTROL (0xe0001020)
+
+#define MM_TIMER0_COMPARE (0xe0001014)
+#define MM_TIMER0_COUNTER (0xe0001018)
+#define MM_TIMER0_CONTROL (0xe0001010)
+
+#define TIMER_ENABLE (0x01)
+#define TIMER_AUTORESTART (0x02)
+
+#define MM_VGA_RESET_MODE (0x01)
+#define MM_VGA_RESET (0xe0003000)
+#define MM_VGA_BASEADDRESS (0xe0003024)
+#define MM_VGA_BASEADDRESS_ACT (0xe0003028)
+
+#define MM_MINIMAC_SETUP (0xe0009000)
+#define MM_MINIMAC_STATE0 (0xe0009008)
+#define MM_MINIMAC_ADDR0 (0xe000900C)
+#define MM_MINIMAC_COUNT0 (0xe0009010)
+
+#define MM_MINIMAC_STATE1 (0xe0009014)
+#define MM_MINIMAC_ADDR1 (0xe0009018)
+#define MM_MINIMAC_COUNT1 (0xe000901C)
+
+#define MM_MINIMAC_STATE2 (0xe0009020)
+#define MM_MINIMAC_ADDR2 (0xe0009024)
+#define MM_MINIMAC_COUNT2 (0xe0009028)
+
+#define MM_MINIMAC_STATE3 (0xe000902C)
+#define MM_MINIMAC_ADDR3 (0xe0009030)
+#define MM_MINIMAC_COUNT3 (0xe0009034)
+
+#define MM_MINIMAC_TXREMAINING (0xe000903C)
+#define MM_MINIMAC_TXADR (0xe0009038)
+
+#endif /* __SYSTEM_CONFIG_H_ */
diff --git a/c/src/lib/libbsp/lm32/milkymist/include/tm27.h b/c/src/lib/libbsp/lm32/milkymist/include/tm27.h
new file mode 100644
index 0000000000..a10e11cab1
--- /dev/null
+++ b/c/src/lib/libbsp/lm32/milkymist/include/tm27.h
@@ -0,0 +1,32 @@
+/*
+ * tm27.h
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ */
+
+#ifndef _RTEMS_TMTEST27
+#error "This is an RTEMS internal file you must not include directly."
+#endif
+
+#ifndef __tm27_h
+#define __tm27_h
+
+/*
+ * Stuff for Time Test 27
+ */
+
+#define MUST_WAIT_FOR_INTERRUPT 0
+
+#define Install_tm27_vector( handler ) set_vector( (handler), 0, 1 )
+
+#define Cause_tm27_intr() /* empty */
+
+#define Clear_tm27_intr() /* empty */
+
+#define Lower_tm27_intr() /* empty */
+
+#endif