FreeCalypso > hg > freecalypso-tools
annotate openmoko/flash-modem.sh @ 965:2969032bdfac
fcup-smsend[mult]: fix buglet in K&R C NULL pointer passing
The only 100% safe way to pass a NULL pointer as a function argument
in K&R C is to cast 0 to a pointer type; failing to do so may cause
mysterious bugs (invalid stack frames or garbage in argument registers)
on 64-bit machines. This issue has already been fixed in most of
FC host tools, but I just found some missed spots: passing of NULL UDH
to PDU encoding functions in fcup-smsend[mult] in the case of single
(not concatenated) SMS.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 01 Sep 2023 07:33:51 +0000 |
parents | 8bea9cdd8a89 |
children |
rev | line source |
---|---|
691
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 #!/bin/sh |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 # This script shows how to flash an Openmoko modem (GTA01/02) with a new |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 # firmware image (in either *.m0 or *.bin format) in a fully automated manner |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 # using the new batch mode of fc-loadtool, running from inside the phone. |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 # This script should be used as a starting point by anyone who may be putting |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 # together an automated firmware update mechanism similar to OM's uSD card |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 # automated flasher. |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 # |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 # The flashing commands used here are correct ONLY for Openmoko and similar |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 # modems, _NOT_ for Motorola C1xx phones!!! If you use these commands on a |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 # Mot C1xx phone, you will unrecoverably brick it! |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 if [ $# != 1 ] |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 then |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 echo "usage: $0 firmware-image-file" 1>&2 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 exit 1 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 fi |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 case "$1" in |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 *.bin) |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 BATCH_CMD="flash e-program-bin 0 $1" |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 ;; |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 *.m0) |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 BATCH_CMD="flash e-program-m0 $1" |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 ;; |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 *) |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 echo "error: format of $1 not recognized" 1>&2 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 exit 1 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 esac |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 |
8bea9cdd8a89
openmoko/flash-modem.sh: added for guidance
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 /opt/freecalypso/bin/fc-loadtool -h fic -Plm -t1300 /dev/ttySAC0 $BATCH_CMD |