FreeCalypso > hg > fc-tourmaline
annotate components/gmm @ 280:82665effff30
keypad boot init overhaul: handle initially held-down keys
This change fixes two previous behavioural defects:
1) On Compal phones, the PWR key had to be released before the boot
sequence would proceed at all - it was stuck in an endless IRQ loop
at the point of Nucleus enabling interrupts, before anything else.
2) On both Compal and sane platforms including Luna, if some regular
non-PWR key was held down at boot time, the boot sequence would
proceed and complete normally, but all non-PWR keypad buttons would
be dead for the remainder of that boot cycle.
The fix is a generic solution - no Compal-specific hack ended up being
needed for the special case of their idiotic PWON-to-ROW4 hw wiring.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 24 Sep 2021 00:47:12 +0000 |
parents | e58a5bb12de4 |
children |
rev | line source |
---|---|
22
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 # Building gmm.lib from the TCS3.2 source |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 CFLAGS="-me -mt -o -pw2 -x -mw" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 # Defines |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 CPPFLAGS=-DCCDTABLES_EXTERN |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 CPPFLAGS="$CPPFLAGS -DOPTION_MULTITHREAD" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 CPPFLAGS="$CPPFLAGS -DNEW_FRAME" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 CPPFLAGS="$CPPFLAGS -DNEW_ENTITY" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 CPPFLAGS="$CPPFLAGS -D_TARGET_" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 CPPFLAGS="$CPPFLAGS -DSHARED_VSI" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 CPPFLAGS="$CPPFLAGS -DALR" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 CPPFLAGS="$CPPFLAGS -DFF_HOMEZONE" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 CPPFLAGS="$CPPFLAGS -DFF_MMI_SAT_ICON" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 CPPFLAGS="$CPPFLAGS -DFF_MMI_SMS_DYNAMIC" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 CPPFLAGS="$CPPFLAGS -DFF_CPHS" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 CPPFLAGS="$CPPFLAGS -D_TMS470" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 CPPFLAGS="$CPPFLAGS -DUART" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 CPPFLAGS="$CPPFLAGS -DFF_ATI" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 CPPFLAGS="$CPPFLAGS -DNWARN" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 CPPFLAGS="$CPPFLAGS -DFF_EM_MODE" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 CPPFLAGS="$CPPFLAGS -DMMI=$MMI" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 if [ "$MMI" = 0 ] |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 then |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 CPPFLAGS="$CPPFLAGS -DACI" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 elif [ "$MMI" = 2 ] |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 then |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 CPPFLAGS="$CPPFLAGS -DMFW" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 fi |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 CPPFLAGS="$CPPFLAGS -DPHONEBOOK_EXTENSION" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 CPPFLAGS="$CPPFLAGS -DGPRS" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 CPPFLAGS="$CPPFLAGS -DAT_INTERPRETER" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 CPPFLAGS="$CPPFLAGS -DUSE_L1FD_FUNC_INTERFACE" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 if [ "$SRVC" != 0 ] |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 then |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 CPPFLAGS="$CPPFLAGS -DFAX_AND_DATA" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 if [ "$SRVC" = 1 ] |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 then |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 CPPFLAGS="$CPPFLAGS -DFF_FAX" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 fi |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 CPPFLAGS="$CPPFLAGS -DUSE_L2FD_FUNC_INTERFACE" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 fi |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 CPPFLAGS="$CPPFLAGS -DSRVC=$SRVC" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 CPPFLAGS="$CPPFLAGS -DCHIPSET=$CHIPSET" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 CPPFLAGS="$CPPFLAGS -DBOARD=41" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 |
38
e58a5bb12de4
experimental support for GPF memory supervision
Mychaela Falconia <falcon@freecalypso.org>
parents:
23
diff
changeset
|
52 if [ "$MEMSUPER" != 0 ] |
e58a5bb12de4
experimental support for GPF memory supervision
Mychaela Falconia <falcon@freecalypso.org>
parents:
23
diff
changeset
|
53 then |
e58a5bb12de4
experimental support for GPF memory supervision
Mychaela Falconia <falcon@freecalypso.org>
parents:
23
diff
changeset
|
54 CPPFLAGS="$CPPFLAGS -DMEMORY_SUPERVISION" |
e58a5bb12de4
experimental support for GPF memory supervision
Mychaela Falconia <falcon@freecalypso.org>
parents:
23
diff
changeset
|
55 fi |
e58a5bb12de4
experimental support for GPF memory supervision
Mychaela Falconia <falcon@freecalypso.org>
parents:
23
diff
changeset
|
56 |
22
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 # Includes |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 SRCDIR=$SRC/g23m-gprs/gmm |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 |
23
fdc83c1ab3ff
components: first automated conversion pass
Mychaela Falconia <falcon@freecalypso.org>
parents:
22
diff
changeset
|
61 CPPFLAGS="$CPPFLAGS -I$SRC/condat/com/inc" |
fdc83c1ab3ff
components: first automated conversion pass
Mychaela Falconia <falcon@freecalypso.org>
parents:
22
diff
changeset
|
62 CPPFLAGS="$CPPFLAGS -I$SRC/gpf/inc" |
fdc83c1ab3ff
components: first automated conversion pass
Mychaela Falconia <falcon@freecalypso.org>
parents:
22
diff
changeset
|
63 CPPFLAGS="$CPPFLAGS -I$SRC/condat/com/include" |
fdc83c1ab3ff
components: first automated conversion pass
Mychaela Falconia <falcon@freecalypso.org>
parents:
22
diff
changeset
|
64 CPPFLAGS="$CPPFLAGS -I../../cdg-hybrid/cdginc" |
fdc83c1ab3ff
components: first automated conversion pass
Mychaela Falconia <falcon@freecalypso.org>
parents:
22
diff
changeset
|
65 CPPFLAGS="$CPPFLAGS -I../../cdg-hybrid/sap-inline" |
fdc83c1ab3ff
components: first automated conversion pass
Mychaela Falconia <falcon@freecalypso.org>
parents:
22
diff
changeset
|
66 CPPFLAGS="$CPPFLAGS -I$SRC/g23m-aci/aci" |
22
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 CPPFLAGS="$CPPFLAGS -I$SRCDIR" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 CPPFLAGS="$CPPFLAGS -I.." |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 CPPFLAGS="$CPPFLAGS -I../config" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 CPPFLAGS="$CPPFLAGS -I$SRC/cs/riviera" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_app" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/abb" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/armio" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/clkm" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/conf" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/dma" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/dsp_dwnld" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/inth" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/memif" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/rhea" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/security" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/spi" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/timer" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/uart" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/ulpd" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 CPPFLAGS="$CPPFLAGS -I$SRC/cs/system" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 CPPFLAGS="$CPPFLAGS -I$SRC/cs/layer1/include" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 CPPFLAGS="$CPPFLAGS -I$SRC/cs/services" |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 # Source modules |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 cfile_str2ind $SRCDIR/gmm_f.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 cfile_str2ind $SRCDIR/gmm_pei.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 cfile_str2ind $SRCDIR/gmm_kernf.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 cfile_str2ind $SRCDIR/gmm_kernl.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 cfile_str2ind $SRCDIR/gmm_kernp.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 cfile_str2ind $SRCDIR/gmm_kerns.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 cfile_str2ind $SRCDIR/gmm_txf.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 cfile_str2ind $SRCDIR/gmm_txp.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 cfile_str2ind $SRCDIR/gmm_txs.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 cfile_str2ind $SRCDIR/gmm_rxf.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 cfile_str2ind $SRCDIR/gmm_rxp.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 cfile_str2ind $SRCDIR/gmm_rxs.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 cfile_str2ind $SRCDIR/gmm_rdyf.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 cfile_str2ind $SRCDIR/gmm_rdyp.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 cfile_str2ind $SRCDIR/gmm_rdys.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 cfile_str2ind $SRCDIR/gmm_syncf.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 cfile_str2ind $SRCDIR/gmm_syncp.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 cfile_str2ind $SRCDIR/gmm_syncs.c |
7ded024bf471
components: pruned import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 cfile_str2ind $SRCDIR/gmm_em.c |