1 /*
2  * dspbridge/mpu_api/inc/qosti_dspdecl.h
3  *
4  * DSP-BIOS Bridge driver support functions for TI OMAP processors.
5  *
6  * Copyright (C) 2007 Texas Instruments, Inc.
7  *
8  * This program is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU Lesser General Public License as published
10  * by the Free Software Foundation version 2.1 of the License.
11  *
12  * This program is distributed .as is. WITHOUT ANY WARRANTY of any kind,
13  * whether express or implied; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  */
17 
18 #ifndef _QOSTI_DSPDECL_H
19 
20 #define _QOSTI_DSPDECL_H
21 
22 // The QOS command codes (to match the DSP side equivalents).
23 
24 /*
25 
26  *  ======== QOS_TI_Msg ========
27 
28  *  The enumeration defines the control command selector for *cmd*
29 
30  *  for the QOS_TI layer messages.
31 
32  */
33 
34 typedef enum QOS_TI_Msg {
35 
36 	QOS_TI_ERROR,
37 
38 	QOS_TI_GETCPULOAD,
39 
40 	QOS_TI_GETMEMSTAT,
41 
42 	QOS_TI_GETSHAREDSCRATCH,
43 
44 } QOS_TI_Msg;
45 
46 /*
47 
48  *  ======== QOS_TI_MsgArg1 ========
49 
50  *  The enumeration defines the control command selector for *arg1*
51 
52  *  of the QOS_TI_GETMEMSTAT message.
53 
54  */
55 
56 typedef enum QOS_TI_GetMemStatArg1 {
57 
58 	/* Arg1: Range 0-0x100 used for HEAPID of a BIOS MEM Segment with Heap */
59 
60 	ALLHEAPS = 0x100,	/* Get aggregate mem-stat info combining all heaps. */
61 
62 	NUMHEAPS		/* Get number BIOS MEM segments with Heaps */
63 } QOS_TI_GetMemStatArg1;
64 
65 /*
66 
67  *  ======== QOS_TI_GetMemStatArg2 ========
68 
69  *  The enumeration defines the control command selector for *arg2*
70 
71  *  of the QOS_TI_GETMEMSTAT message.
72 
73  */
74 
75 typedef enum QOS_TI_GetMemStatArg2 {
76 
77 	USED_HEAPSIZE = 0x100,
78 
79 	LARGEST_FREE_BLOCKSIZE
80 } QOS_TI_GetMemStatArg2;
81 
82 /*
83 
84  *  ======== QOS_TI_GetSharedScratchMsgArg2 ========
85 
86  *  The enumeration defines the control command selector for *arg2*
87 
88  *  of the QOS_TI_GETSHAREDSCRATCH message.
89 
90  */
91 
92 typedef enum QOS_TI_GetSharedScratchMsgArg2 {
93 
94 	/*
95 
96 	 * If Arg2 is NOT set to ALL_SCRATCHGROUPS then  the assigned value
97 
98 	 * taken as the Scratch Group/Mutex Id
99 
100 	 */
101 
102 	ALL_SCRATCHGROUPS
103 } QOS_TI_GetSharedScratchMsgArg2;
104 
105 #endif
106 
107