annotate scripts/src-version.sh @ 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 84160e9a0383
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 #!/bin/sh
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 tmpfile=/tmp/fc_hg_id$$
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 hg id -in > $tmpfile 2> /dev/null
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 if [ $? != 0 ]
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 then
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 rm -f $tmpfile
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 echo unknown
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 exit 0
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 fi
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 read global local < $tmpfile
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 rm -f $tmpfile
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 global_noplus=`echo $global | tr -d +`
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 local_noplus=`echo $local | tr -d +`
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 if [ "$global" = "$global_noplus" -a "$local" = "$local_noplus" ]
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 then
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 dirty=
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 else
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 dirty=-dirty
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 fi
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25
84160e9a0383 scripts/src-version.sh: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 echo $local_noplus:$global_noplus$dirty