Initial commit
[o-du/l2.git] / src / mt / ss_drvr.x
1 /*******************************************************************************
2 ################################################################################
3 #   Copyright (c) [2017-2019] [Radisys]                                        #
4 #                                                                              #
5 #   Licensed under the Apache License, Version 2.0 (the "License");            #
6 #   you may not use this file except in compliance with the License.           #
7 #   You may obtain a copy of the License at                                    #
8 #                                                                              #
9 #       http://www.apache.org/licenses/LICENSE-2.0                             #
10 #                                                                              #
11 #   Unless required by applicable law or agreed to in writing, software        #
12 #   distributed under the License is distributed on an "AS IS" BASIS,          #
13 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
14 #   See the License for the specific language governing permissions and        #
15 #   limitations under the License.                                             #
16 ################################################################################
17 *******************************************************************************/
18
19 /********************************************************************20**
20  
21      Name:     System Services -- Driver tasks
22  
23      Type:     C include file
24  
25      Desc:     Data structure definitions required for driver tasks.
26  
27      File:     ss_drvr.x
28  
29 *********************************************************************21*/
30
31
32 #ifndef __SSDRVRX__
33 #define __SSDRVRX__
34
35 #ifdef __cplusplus
36 extern "C" {
37 #endif
38
39
40 #ifdef SS_DRVR_SUPPORT
41
42 /* individual entry in the table of driver tasks */
43 typedef struct ssDrvrTskEntry
44 {
45    /* Any implementation specific content */
46    SsdDrvrTskEntry dep;
47
48
49    /* Common content */
50    Bool         used;                   /* entry is used or not */
51    Inst         channel;                /* channel ID */
52    ActvTsk      actvTsk;                /* activation function */
53    ISTsk        isTsk;                  /* interrupt service task */
54    ProcId       low;                    /* processor ID -- low */
55    ProcId       high;                   /* processor ID -- high */
56
57    SLockId      lock;                   /* to serialize calls to the
58                                            activation function */
59
60 } SsDrvrTskEntry;
61
62 #endif  /* SS_DRVR_SUPPORT */
63
64
65 #ifdef __cplusplus
66 }
67 #endif
68
69 #endif  /*  __SSDRVRX__  */
70
71
72 \f  
73 /********************************************************************30**
74
75          End of file
76 **********************************************************************/