source: rtems/c/src/lib/libbsp/hppa1.1/simhppa/include/bsp.h @ 244ecd9

4.104.114.84.95
Last change on this file since 244ecd9 was bd9c3d1, checked in by Joel Sherrill <joel.sherrill@…>, on 04/15/98 at 20:50:31

Numerous changes which in total greatly reduced the amount of source
code in each BSP's bspstart.c. These changes were:

+ confdefs.h now knows libio's semaphore requirements
+ shared/main.c now copies Configuration to BSP_Configuration
+ shared/main.c fills in the Cpu_table with default values

This removed the need for rtems_libio_config() and the constant
BSP_LIBIO_MAX_FDS in every BSP. Plus now the maximum number of open
files can now be set on the gcc command line.

  • Property mode set to 100644
File size: 2.8 KB
Line 
1/*  bsp.h
2 *
3 *  This include file contains all HP PA-RISC simulator definitions.
4 *
5 *  COPYRIGHT (c) 1989-1998.
6 *  On-Line Applications Research Corporation (OAR).
7 *  Copyright assigned to U.S. Government, 1994.
8 *
9 *  The license and distribution terms for this file may be
10 *  found in the file LICENSE in this distribution or at
11 *  http://www.OARcorp.com/rtems/license.html.
12 *
13 *  $Id$
14 */
15
16#ifndef __PXFL_BSP_h
17#define __PXFL_BSP_h
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#include <rtems.h>
24#include <clockdrv.h>
25#include <rtems/ttydrv.h>
26
27/*
28 *  Define the time limits for RTEMS Test Suite test durations.
29 *  Long test and short test duration limits are provided.  These
30 *  values are in seconds and need to be converted to ticks for the
31 *  application.
32 *
33 */
34
35#define MAX_LONG_TEST_DURATION       3   /* 3 seconds */
36#define MAX_SHORT_TEST_DURATION      3   /* 3 seconds */
37
38/*
39 *  Define the interrupt mechanism for Time Test 27
40 */
41
42#define MUST_WAIT_FOR_INTERRUPT 1
43
44#define Install_tm27_vector( handler ) \
45    ( void ) set_vector( handler, HPPA_INTERRUPT_EXTERNAL_INTERVAL_TIMER, 1 );
46
47#define Cause_tm27_intr() \
48  set_itimer( get_itimer() + 20 )
49
50#define Clear_tm27_intr()  \
51  set_eirr( 0x80000000 )
52
53#define Lower_tm27_intr() \
54  { \
55    register unsigned32 ignored; \
56    HPPA_ASM_SSM( HPPA_PSW_I, ignored ); \
57  }
58
59/*
60 *  Simple spin delay in microsecond units for device drivers.
61 *  This is very dependent on the clock speed of the target.
62 */
63
64extern void Clock_delay(rtems_unsigned32 microseconds);
65#define delay( microseconds ) \
66        Clock_delay(microseconds);
67
68/*
69 * Todo: this should be put somewhere else
70 */
71
72#undef CLOCK_DRIVER_TABLE_ENTRY
73#define CLOCK_DRIVER_TABLE_ENTRY { Clock_initialize, NULL, NULL, NULL, NULL, Clock_control }
74rtems_device_driver Clock_control(
75  rtems_device_major_number major,
76  rtems_device_minor_number minor,
77  void *pargp
78);
79
80/*
81 * We printf() to a buffer if multiprocessing, *or* if this is set.
82 * ref: src/lib/libbsp/hppa/pxfl/iosupp/consupp.c
83 */
84
85extern int use_print_buffer;
86
87/*
88 * When not doing printf to a buffer, we do printf thru RTEMS libio
89 * and our tty driver.  Set it up so that console is right.
90 */
91
92#define CONSOLE_DRIVER_TABLE_ENTRY \
93  { tty_initialize, tty_open, tty_close, tty_read, tty_write, tty_control }
94
95#define HPPA_INTERRUPT_EXTERNAL_MPCI        HPPA_INTERRUPT_EXTERNAL_10
96
97rtems_isr_entry set_vector(rtems_isr_entry, rtems_vector_number, int);
98
99void bsp_start( void );
100void bsp_cleanup( void );
101
102/* miscellaneous stuff assumed to exist */
103
104extern rtems_configuration_table BSP_Configuration;     /* owned by BSP */
105extern rtems_cpu_table           Cpu_table;             /* owned by BSP */
106
107extern int cpu_number;         /* from 0; cpu number in a multi cpu system */
108
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114/* end of include file */
Note: See TracBrowser for help on using the repository browser.