annotate gsm-fw/gpf/osl/os_evt.c @ 672:0dc6f9e8e980

gsm-fw/ccd/asn1_objid.c: _TMS470 conditional: do what the official fw does
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Sun, 28 Sep 2014 19:36:23 +0000
parents 43ca9d5e30cb
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
366
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
1 /*
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
2 * This C module is a reconstruction based on the disassembly of
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
3 * os_evt.obj in frame_na7_db_fl.lib from the Leonardo package.
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
4 */
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
5
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
6 /* set of included headers from COFF symtab: */
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
7 #include <stdio.h>
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
8 #include <string.h>
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
9 #include "gpfconf.h" /* FreeCalypso addition */
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
10 #include "../../nucleus/nucleus.h"
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
11 #include "typedefs.h"
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
12 #include "os.h"
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
13 #include "gdi.h"
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
14 #include "os_types.h"
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
15 #include "os_glob.h"
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
16
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
17 extern T_OS_EVTGRP_TABLE_ENTRY EvtGrpTable[];
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
18
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
19 GLOBAL LONG
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
20 os_SetEvents(OS_HANDLE evt_grp_handle, unsigned event_flags)
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
21 {
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
22 if (!EvtGrpTable[evt_grp_handle].Name[0])
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
23 return(OS_ERROR);
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
24 if (NU_Set_Events(&EvtGrpTable[evt_grp_handle].EvtGrp, event_flags,
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
25 NU_OR) == NU_SUCCESS)
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
26 return(OS_OK);
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
27 else
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
28 return(OS_ERROR);
227bc7a1c305 OSL: os_evt.c started
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
29 }
367
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
30
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
31 GLOBAL LONG
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
32 os_RetrieveEvents(OS_HANDLE evt_grp_handle, unsigned event_flags, char option,
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
33 unsigned *retrieved_events, unsigned suspend)
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
34 {
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
35 if (!EvtGrpTable[evt_grp_handle].Name[0])
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
36 return(OS_ERROR);
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
37 if (NU_Retrieve_Events(&EvtGrpTable[evt_grp_handle].EvtGrp,
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
38 event_flags, option, retrieved_events, suspend)
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
39 == NU_SUCCESS)
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
40 return(OS_OK);
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
41 else
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
42 return(OS_ERROR);
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
43 }
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
44
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
45 GLOBAL LONG
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
46 os_GetEventGroupHandle(char *evt_grp_name, OS_HANDLE *evt_grp_handle)
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
47 {
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
48 int idx;
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
49
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
50 for (idx = 0; idx <= MaxEventGroups; idx++) {
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
51 if (!EvtGrpTable[idx].Name[0])
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
52 break;
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
53 if (!strncmp(EvtGrpTable[idx].Name, evt_grp_name,
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
54 RESOURCE_NAMELEN))
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
55 break;
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
56 }
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
57 if (idx > MaxEventGroups || !EvtGrpTable[idx].Name[0]) {
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
58 *evt_grp_handle = -1;
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
59 return(OS_ERROR);
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
60 }
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
61 *evt_grp_handle = idx;
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
62 return(OS_OK);
c72feb362ef1 os_evt.c: got some bogus-looking code, decompiled as-is
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 366
diff changeset
63 }
368
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
64
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
65 GLOBAL LONG
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
66 os_EventGroupInformation(OS_HANDLE evt_grp_handle, char *Name,
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
67 unsigned *mask_evt, unsigned *tasks_waiting,
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
68 OS_HANDLE *first_task)
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
69 {
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
70 if (!EvtGrpTable[evt_grp_handle].Name[0])
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
71 return(OS_ERROR);
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
72 if (NU_Event_Group_Information(&EvtGrpTable[evt_grp_handle].EvtGrp,
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
73 Name, mask_evt, tasks_waiting,
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
74 first_task) == NU_SUCCESS)
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
75 return(OS_OK);
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
76 else
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
77 return(OS_ERROR);
43ca9d5e30cb os_evt.c: os_EventGroupInformation(): more bogosity
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 367
diff changeset
78 }