FreeCalypso > hg > fc-tourmaline
annotate cdg-hybrid/cdginc/p_mdl.val @ 223:740a8e8fc9d7
startup sync logic rework for the new PWON button boot scheme
Previously we added logic to the MMI task to hold off PEI init until
R2D is running, and then extended that condition to wait for FCHG
init too. However, the dependencies of MMI upon R2D and FCHG don't
start until mmiInit(), and that call is driven by Switch_ON() code,
hence the wait for R2D and FCHG init can be made in that code path
instead of the MMI task. Furthermore, with our new way of signaling
PWON button boot to MMI, we need a new wait to ensure that the MMI
task is up - previously this assurance was provided by the wait for
Kp pointers to be set.
Solution: revert our previous PEI init hold-off additions to MMI,
add a new flag indicating MMI task init done, and put the combined
wait for all needed conditions into our new PWON button boot code
in power.c.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 27 Apr 2021 06:24:52 +0000 |
parents | 35f7a1dc9f7d |
children |
rev | line source |
---|---|
14
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 +--------------------------------------------------------------------------+ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 | PROJECT : PROTOCOL STACK | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 | FILE : p_mdl.val | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 | SOURCE : "sap\mdl.pdf" | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 | LastModified : "2002-04-19" | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 | IdAndVersion : "6147.111.97.101" | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 | SrcFileTime : "Thu Nov 29 09:45:46 2007" | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 | Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:52 2016 | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! | |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 +--------------------------------------------------------------------------+ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 /* PRAGMAS |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 * PREFIX : NONE |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 * COMPATIBILITY_DEFINES : NO (require PREFIX) |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 * ALWAYS_ENUM_IN_VAL_FILE: NO |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 * ENABLE_GROUP: NO |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 * CAPITALIZE_TYPENAME: NO |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 #ifndef P_MDL_VAL |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #define P_MDL_VAL |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 #define CDG_ENTER__P_MDL_VAL |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 #define CDG_ENTER__FILENAME _P_MDL_VAL |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 #define CDG_ENTER__P_MDL_VAL__FILE_TYPE CDGINC |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 #define CDG_ENTER__P_MDL_VAL__LAST_MODIFIED _2002_04_19 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 #define CDG_ENTER__P_MDL_VAL__ID_AND_VERSION _6147_111_97_101 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 #define CDG_ENTER__P_MDL_VAL__SRC_FILE_TIME _Thu_Nov_29_09_45_46_2007 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 #include "CDG_ENTER.h" |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 #undef CDG_ENTER__P_MDL_VAL |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 #undef CDG_ENTER__FILENAME |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 /* |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 * Value constants for VAL_ch_type |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 #define CH_TYPE_SACCH (0x0) /* SACCH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 #define CH_TYPE_SDCCH (0x1) /* SDCCH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 #define CH_TYPE_FACCH (0x2) /* FACCH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 #define CH_TYPE_BCCH (0x3) /* BCCH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 #define CH_TYPE_CCCH (0x4) /* CCCH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 #define CH_TYPE_RACH (0x5) /* RACH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 #define CH_TYPE_NBR_CEL_BCCH (0x6) /* Neighbour Cell BCCH */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 /* |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 * Value constants for VAL_sapi |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 #define SAPI_0 (0x0) /* SAPI 0 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 #define SAPI_3 (0x3) /* SAPI 3 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 /* |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 * Value constants for VAL_cs |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 #define CS_T200_EXP (0x0) /* T200 expired (N200 + 1 times) */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 #define CS_REEST_REQ (0x1) /* re-establishment request */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 #define CS_UNSOL_UA_RESP (0x2) /* unsolicited UA response */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 #define CS_UNSOL_DM_RESP (0x3) /* unsolicited DM response */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 #define CS_UNSOL_DM_RESP_MULT_FRM (0x4) /* unsolicited DM response, multiple frame established state */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 #define CS_UNSOL_SUP_RESP (0x5) /* unsolicited supervisory response */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 #define CS_SEQ_ERR (0x6) /* sequence error */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 #define CS_UFRM_W_INC_PARA (0x7) /* U frame with incorrect parameters */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 #define CS_SFRM_W_INC_PARA (0x8) /* S frame with incorrect parameters */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 #define CS_IFRM_W_INC_MBIT (0x9) /* I frame with incorrect use of M bit */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 #define CS_IFRM_W_INC_LEN (0xa) /* I frame with incorrect length */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 #define CS_FRM_NOT_IMPL (0xb) /* frame not implemented */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 #define CS_SABM_MULT_FRM (0xc) /* SABM command, multiple frame established state */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 #define CS_SABM_NO_INFO (0xd) /* SABM command with information field not allowed in this state */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 #define CS_NR_SEQ_ERR (0xe) /* sequence error, perform abnormal release */ |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 #include "CDG_LEAVE.h" |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 |
35f7a1dc9f7d
cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 #endif |