source: rtems/c/src/lib/libbsp/unix/posix/include/bsp.h @ 0e4c603

4.104.114.84.95
Last change on this file since 0e4c603 was 0e4c603, checked in by Joel Sherrill <joel.sherrill@…>, on 08/11/95 at 14:24:44

clean up -- interrupt support is in place

  • Property mode set to 100644
File size: 2.8 KB
Line 
1/*  bsp.h
2 *
3 *  This include file contains all POSIX BSP definitions.
4 *
5 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
6 *  On-Line Applications Research Corporation (OAR).
7 *  All rights assigned to U.S. Government, 1994.
8 *
9 *  This material may be reproduced by or for the U.S. Government pursuant
10 *  to the copyright license under the clause at DFARS 252.227-7013.  This
11 *  notice must appear in all copies of this file and its derivatives.
12 *
13 *  $Id$
14 */
15
16#ifndef __POSIX_BSP_h
17#define __POSIX_BSP_h
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#include <rtems.h>
24#include <clockdrv.h>
25#include <iosupp.h>
26#include <libcsupport.h>
27#include <signal.h>
28
29/*
30 *  Define the time limits for RTEMS Test Suite test durations.
31 *  Long test and short test duration limits are provided.  These
32 *  values are in seconds and need to be converted to ticks for the
33 *  application.
34 *
35 */
36
37#define MAX_LONG_TEST_DURATION       300 /* 5 minutes = 300 seconds */
38#define MAX_SHORT_TEST_DURATION      3   /* 3 seconds */
39
40/*
41 *  Stuff for Time Test 27
42 */
43
44#define MUST_WAIT_FOR_INTERRUPT 1
45
46#define Install_tm27_vector( handler ) \
47    set_vector( (handler), 16, 1 )
48
49#define Cause_tm27_intr()  \
50    raise( 16 )
51
52#define Clear_tm27_intr()
53
54#define Lower_tm27_intr() \
55    _ISR_Set_level( 0 );
56
57#define RAM_START 0
58#define RAM_END   0x100000
59
60/* miscellaneous stuff assumed to exist */
61
62extern rtems_configuration_table BSP_Configuration;
63
64/*
65 * Define this to use signals for MPCI shared memory driver.
66 * If undefined, the shared memory driver will poll from the
67 * clock interrupt.
68 * Ref: ../shmsupp/getcfg.c
69 *
70 * BEWARE:: many UN*X kernels and debuggers become severely confused when
71 *          debugging programs which use signals.  The problem is *much*
72 *          worse when using multiple signals, since ptrace(2) tends to
73 *          drop all signals except 1 in the case of multiples.
74 *          On hpux9, this problem was so bad, we couldn't use interrupts
75 *          with the shared memory driver if we ever hoped to debug
76 *          RTEMS programs.
77 *          Maybe systems that use /proc don't have this problem...
78 */
79 
80/* #define INTERRUPT_EXTERNAL_MPCI        SIGUSR1 */
81 
82/* functions */
83
84rtems_isr_entry set_vector(rtems_isr_entry, rtems_vector_number, int);
85void bsp_start( void );
86void bsp_cleanup( void );
87
88/* miscellaneous stuff assumed to exist */
89
90extern rtems_configuration_table BSP_Configuration;     /* owned by BSP */
91extern rtems_cpu_table           Cpu_table;             /* owned by BSP */
92
93extern int                       rtems_argc;
94extern char                    **rtems_argv;
95extern char                    **rtems_envp;
96
97extern rtems_unsigned32          bsp_isr_level;
98
99extern char *rtems_progname;    /* UNIX executable name */
100
101extern int cpu_number;
102
103#ifdef __cplusplus
104}
105#endif
106
107#endif
108/* end of include file */
Note: See TracBrowser for help on using the repository browser.