From f0ef873cca7d6cc07ad7b81a1459d64fae18c723 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 9 May 2001 13:12:23 +0000 Subject: 2001-05-09 Ralf Corsepius * scitab/.cvsignore: Add. * configure.in: Add --enable-console, CPU_CLOCK_RATE_HZ, autoheader bspopt.h. * include/bsp.h: Complete rewrite based on the AMOS-BSP. * README: Update. * bsp_specs: copy from gensh1 --- c/src/lib/libbsp/sh/shsim/include/bsp.h | 92 ++++++++++++++++++++++++--------- 1 file changed, 68 insertions(+), 24 deletions(-) (limited to 'c/src/lib/libbsp/sh/shsim/include') diff --git a/c/src/lib/libbsp/sh/shsim/include/bsp.h b/c/src/lib/libbsp/sh/shsim/include/bsp.h index e2e9c0fb57..ae72550213 100644 --- a/c/src/lib/libbsp/sh/shsim/include/bsp.h +++ b/c/src/lib/libbsp/sh/shsim/include/bsp.h @@ -1,29 +1,53 @@ -/* bsp.h +/* + * This include file contains all board IO definitions. + * + * SH-gdb simulator BSP * - * This include file contains some definitions specific to the - * JMR3904 simulator in gdb. + * Author: Ralf Corsepius (corsepiu@faw.uni-ulm.de) * - * COPYRIGHT (c) 1989-2000. + * COPYRIGHT (c) 2001, Ralf Corsepius, Ulm, Germany + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * COPYRIGHT (c) 2001. * On-Line Applications Research Corporation (OAR). * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://www.OARcorp.com/rtems/license.html. * - * $Id$ + * $Id$ */ -#ifndef __JMR3904_h -#define __JMR3904_h +#ifndef __bsp_h +#define __bsp_h #ifdef __cplusplus extern "C" { #endif #include -#include -#include #include +#include + +/* + * confdefs.h overrides for this BSP: + * - number of termios serial ports (defaults to 1) + * - Interrupt stack space is not minimum if defined. + */ + +#define CONFIGURE_NUMBER_OF_TERMIOS_PORTS 0 +#define CONFIGURE_INTERRUPT_STACK_MEMORY (4 * 1024) + +#include + +/* + * FIXME: One of these would be enough. + */ +#include +#include /* * Define the time limits for RTEMS Test Suite test durations. @@ -31,52 +55,72 @@ extern "C" { * values are in seconds and need to be converted to ticks for the * application. * + * FIXME: This should not be here. */ #define MAX_LONG_TEST_DURATION 300 /* 5 minutes = 300 seconds */ #define MAX_SHORT_TEST_DURATION 3 /* 3 seconds */ /* - * Define the interrupt mechanism for Time Test 27 - * - * NOTE: Following are for XXX and are board independent + * Stuff for Time Test 27 * + * FIXME: This should not be here. */ #define MUST_WAIT_FOR_INTERRUPT 0 -#define Install_tm27_vector( handler ) +#define Install_tm27_vector( handler ) +#define Cause_tm27_intr() +#define Clear_tm27_intr() + +/* Constants */ -#define Cause_tm27_intr() +/* + * Simple spin delay in microsecond units for device drivers. + * This is very dependent on the clock speed of the target. + * + * FIXME: Not applicable with gdb's simulator + * Kept for sourcecode compatibility with other sh-BSPs + */ +#define delay( microseconds ) CPU_delay(microseconds) +#define sh_delay( microseconds ) CPU_delay(microseconds) -#define Clear_tm27_intr() +/* + * Defined in the linker script 'linkcmds' + */ -#define Lower_tm27_intr() +extern unsigned32 HeapStart ; +extern unsigned32 HeapEnd ; +extern unsigned32 WorkSpaceStart ; +extern unsigned32 WorkSpaceEnd ; -/* Constants */ +extern void *CPU_Interrupt_stack_low ; +extern void *CPU_Interrupt_stack_high ; + /* miscellaneous stuff assumed to exist */ extern rtems_configuration_table BSP_Configuration; +extern void bsp_cleanup( void ); + /* * Device Driver Table Entries */ /* - * NOTE: Use the standard Console driver entry + * Redefine CONSOLE_DRIVER_TABLE_ENTRY to redirect /dev/console */ +#undef CONSOLE_DRIVER_TABLE_ENTRY +#define CONSOLE_DRIVER_TABLE_ENTRY \ + BSP_CONSOLE_DRIVER_TABLE_ENTRY, \ + { console_initialize, console_open, console_close, \ + console_read, console_write, console_control } /* * NOTE: Use the standard Clock driver entry */ -/* functions */ - -void bsp_cleanup( void ); - -/* i960_isr_entry set_vector( rtems_isr_entry, unsigned int, unsigned int ); */ - #ifdef __cplusplus } #endif -- cgit v1.2.3