diff options
Diffstat (limited to 'c/src/lib/libbsp/lm32/milkymist/include')
-rw-r--r-- | c/src/lib/libbsp/lm32/milkymist/include/.cvsignore | 4 | ||||
-rw-r--r-- | c/src/lib/libbsp/lm32/milkymist/include/bsp.h | 74 | ||||
-rw-r--r-- | c/src/lib/libbsp/lm32/milkymist/include/system_conf.h | 56 | ||||
-rw-r--r-- | c/src/lib/libbsp/lm32/milkymist/include/tm27.h | 32 |
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 |