RTEMS  5.0.0
bsp.h
Go to the documentation of this file.
1 
9 /* bsp.h
10  *
11  * This include file contains all mrm board IO definitions.
12  */
13 
14 /*
15  * COPYRIGHT (c) 1989-2009.
16  * On-Line Applications Research Corporation (OAR).
17  *
18  * The license and distribution terms for this file may be
19  * found in the file LICENSE in this distribution or at
20  * http://www.rtems.org/license/LICENSE.
21  */
22 
23 #ifndef LIBBSP_M68K_MRM332_BSP_H
24 #define LIBBSP_M68K_MRM332_BSP_H
25 
36 #include <bspopts.h>
38 
39 #include <rtems.h>
40 #include <rtems/bspIo.h>
41 #include <mrm332.h>
42 
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46 
47 #define CONSOLE_SCI
48 
49 /* externals */
50 
51 extern char _etext[];
52 extern char _copy_start[];
53 extern char _edata[];
54 extern char _clear_start[];
55 extern char end[];
56 extern bool _copy_data_from_rom;
57 
58 /* constants */
59 
60 #ifdef __START_C__
61 #define STACK_SIZE "#0x800"
62 #else
63 #define STACK_SIZE 0x800
64 #endif
65 
66 /* macros */
67 
68 #define RAW_PUTS(str) \
69  { register char *ptr = str; \
70  while (*ptr) SCI_output_char(*ptr++); \
71  }
72 
73 #define RAW_PUTI(n) { \
74  register int i, j; \
75  \
76  RAW_PUTS("0x"); \
77  for (i=28;i>=0;i -= 4) { \
78  j = (n>>i) & 0xf; \
79  SCI_output_char( (j>9 ? j-10+'a' : j+'0') ); \
80  } \
81  }
82 
83 /* miscellaneous stuff assumed to exist */
84 
85 extern rtems_isr_entry M68Kvec[]; /* vector table address */
86 
87 extern int stack_size;
88 extern int stack_start;
89 
90 /* functions */
91 
92 rtems_isr_entry set_vector(
93  rtems_isr_entry handler,
94  rtems_vector_number vector,
95  int type
96 );
97 
98 void Spurious_Initialize(void);
99 
100 void _UART_flush(void);
101 
102 void outbyte(char);
103 
104 #ifdef __cplusplus
105 }
106 #endif
107 
110 #endif
rtems_isr_entry set_vector(rtems_isr_entry handler, rtems_vector_number vector, int type)
Install an interrupt handler.
Definition: setvec.c:28
DEFAULT_INITIAL_EXTENSION Support.
ISR_Vector_number rtems_vector_number
Control block type used to manage the vectors.
Definition: intr.h:47
Interface to Kernel Print Methods.