RTEMS  5.1
bestcomm_glue.h
1 /*===============================================================*\
2 | Project: RTEMS generic MPC5200 BSP |
3 +-----------------------------------------------------------------+
4 | Copyright (c) 2004-2005 |
5 | Embedded Brains GmbH |
6 | Obere Lagerstr. 30 |
7 | D-82178 Puchheim |
8 | Germany |
9 | rtems@embedded-brains.de |
10 +-----------------------------------------------------------------+
11 | The license and distribution terms for this file may be |
12 | found in the file LICENSE in this distribution or at |
13 | |
14 | http://www.rtems.org/license/LICENSE. |
15 | |
16 +-----------------------------------------------------------------+
17 | this file declares glue functions to the Freescale BestComm API |
18 \*===============================================================*/
19 #ifndef _BESTCOMM_GLUE_H
20 #define _BESTCOMM_GLUE_H
21 
22 #include <rtems/irq-extension.h>
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif /* __cplusplus */
27 
28 /*=========================================================================*\
29 | Function: |
30 \*-------------------------------------------------------------------------*/
31 void bestcomm_glue_irq_enable
32 (
33 /*-------------------------------------------------------------------------*\
34 | Purpose: |
35 | enable interrupt for given task number |
36 +---------------------------------------------------------------------------+
37 | Input Parameters: |
38 \*-------------------------------------------------------------------------*/
39  int bestcomm_taskno /* task number to enable */
40  );
41 /*-------------------------------------------------------------------------*\
42 | Return Value: |
43 | none |
44 \*=========================================================================*/
45 
46 /*=========================================================================*\
47 | Function: |
48 \*-------------------------------------------------------------------------*/
49 void bestcomm_glue_irq_disable
50 (
51 /*-------------------------------------------------------------------------*\
52 | Purpose: |
53 | disable interrupt for given task number |
54 +---------------------------------------------------------------------------+
55 | Input Parameters: |
56 \*-------------------------------------------------------------------------*/
57  int bestcomm_taskno /* task number to disable */
58  );
59 /*-------------------------------------------------------------------------*\
60 | Return Value: |
61 | none |
62 \*=========================================================================*/
63 
64 /*=========================================================================*\
65 | Function: |
66 \*-------------------------------------------------------------------------*/
67 void bestcomm_glue_irq_install
68 (
69 /*-------------------------------------------------------------------------*\
70 | Purpose: |
71 | install given function as bestcomm interrupt handler |
72 +---------------------------------------------------------------------------+
73 | Input Parameters: |
74 \*-------------------------------------------------------------------------*/
75  int bestcomm_taskno, /* task number for handler */
76  rtems_interrupt_handler handler, /* function to call */
77  void *arg
78  );
79 /*-------------------------------------------------------------------------*\
80 | Return Value: |
81 | none |
82 \*=========================================================================*/
83 
84 /*=========================================================================*\
85 | Function: |
86 \*-------------------------------------------------------------------------*/
87 void bestcomm_glue_init
88 (
89 /*-------------------------------------------------------------------------*\
90 | Purpose: |
91 | initialize the bestcomm module (if not yet done): |
92 | - load code |
93 | - initialize registers |
94 | - initialize bus arbiter |
95 | - initialize interrupt control |
96 +---------------------------------------------------------------------------+
97 | Input Parameters: |
98 \*-------------------------------------------------------------------------*/
99  void /* none */
100  );
101 /*-------------------------------------------------------------------------*\
102 | Return Value: |
103 | none |
104 \*=========================================================================*/
105 
106 void *bestcomm_malloc(size_t size);
107 
108 void bestcomm_free(void *ptr);
109 
110 #ifdef __cplusplus
111 }
112 #endif /* __cplusplus */
113 
114 #endif /* _BESTCOMM_GLUE_H */
Header file for the Interrupt Manager Extension.
void(* rtems_interrupt_handler)(void *)
Interrupt handler routine type.
Definition: irq-extension.h:79
unsigned size
Definition: tte.h:74