Flashing the GSM Firmware

From Openmoko

(Difference between revisions)
Jump to: navigation, search
m (Introduction)
m (Phase 1: Preparations)
Line 40: Line 40:
 
root@om-gta02:~# opkg install http://people.openmoko.org/joerg/calypso_moko_FW/s3c24xx-gpio_1.0+svnr4130-r2.1_armv4t.ipk
 
root@om-gta02:~# opkg install http://people.openmoko.org/joerg/calypso_moko_FW/s3c24xx-gpio_1.0+svnr4130-r2.1_armv4t.ipk
 
</pre>
 
</pre>
* Download http://people.openmoko.org/joerg/calypso_moko_FW/gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-moko9-beta1.m0 and place it into the /home/root directory:
+
* Download http://people.openmoko.org/joerg/calypso_moko_FW/gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-moko9-beta1.m0 and place it into the /home/root directory (for moko10b2 download and unpack the tarball):
 
<pre>
 
<pre>
 
root@om-gta02:~# cd $HOME
 
root@om-gta02:~# cd $HOME

Revision as of 06:31, 18 November 2008

Introduction

This is a step-by-step description of how the firmware is upgraded on a GTA02 with FLUID running on the device. Note that this process tolerates almost no variations. Stray from the instructions at your own peril. Instructions based on a posting by Werner (http://lists.openmoko.org/pipermail/openmoko-devel/2008-April/002605.html), thanks.

Please note: Update to MOKO9-beta firmware isn't recommended by OM, and probably won't fix any recent issues like #1024 et al.

Please see http://people.openmoko.org/joerg/calypso_moko_FW for more recent FW-images. For now there is some moko10beta2, which should fix #666, and also has a new command AT+CSIM. This version is not supposed to fix #1024 We are planning to include this version, renamed to moko10, to the factory image of A7 run. Version string will change though.

We recommend you don't update by following this procedure, unless you feel very comfortable with commandline. Don't miss-spell any FLUID command! There will be a SD-image shortly, that greatly simplifies the whole GSM-update process - we suggest everybody who's not feeling completely comfortable with the procedure described herein to wait for this improved method.

Warning: there are chances to _completely_ brick your GSM modem on messing around with FLUID! Please watch out for typos!

The GSM-firmware didn't differ from GTA01 to GTA02, as the GSM-hardware didn't either. This means you can flash MOKO10 (or any other recent GSM-FW) to GTA01 as well. According to mwester, this worked for him to update from MOKO1 on a GTA01Bv4 to MOKO10b2, by following the steps described herein.


Any reports on successful update, as well as problems encountered, or SIMs seen to work after update, all highly appreciated. Please add to the "discussion" tab of this wikipage. Thanks!

Phase 1: Preparations

  • Download and install a distribution to your device that gives you SSH access. We recommend the fso-console image:
mickey@amethyst$ cd /tmp
mickey@amethyst$ wget http://people.openmoko.org/mickey/images/openmoko-fso-console-image-glibc-ipk--20081028-om-gta02.rootfs.jffs2.summary
mickey@amethyst$ dfu-util -a rootfs -R -D ./openmoko-fso-console-image-glibc-ipk--20081028-om-gta02.rootfs.jffs2.summary
mickey@amethyst$ wget http://people.openmoko.org/mickey/images/uImage-2.6.24+r10+gitr75999+54524f4531c8b262431b794fea610d81bb351c86-r10-om-gta02.bin
mickey@amethyst$ dfu-util -a kernel -R -D ./uImage-2.6.24+r10+gitr75999+54524f4531c8b262431b794fea610d81bb351c86-r10-om-gta02.bin
root@om-gta02:~# opkg install http://people.openmoko.org/joerg/calypso_moko_FW/fluid_0.0+svn20070817-r2_armv4t_eabi.ipk
root@om-gta02:~# opkg install http://people.openmoko.org/joerg/calypso_moko_FW/s3c24xx-gpio_1.0+svnr4130-r2.1_armv4t.ipk
root@om-gta02:~# cd $HOME
root@om-gta02:~# wget http://people.openmoko.org/joerg/calypso_moko_FW/gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-moko9-beta1.m0

Phase 2: The Lobotomy

  • Make sure nothing is accessing the GSM modem. If you're using the fso-console image from the link above, this will happen automagically on boot. On other systems, kill processes as you see fit.
  • Powercycle the modem:
root@om-gta02:~# echo 0 >/sys/bus/platform/devices/neo1973-pm-gsm.0/power_on
root@om-gta02:~# echo 1 >/sys/bus/platform/devices/neo1973-pm-gsm.0/power_on
root@om-gta02:~# s3c24xx-gpio b7=0
root@om-gta02:~# echo "AT@POFF" >/dev/ttySAC0
  • Launch the FLUID binary:
root@om-gta02:~# cd /usr/sbin
root@om-gta02:/usr/sbin# FLUID_PORT=/dev/ttySAC0 FLUID_FLOWCONTROL=h fluid.exe \
-oO -b 115200 \
-f $HOME/gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-moko9-beta1.m0

It should say something like this (takes a few seconds to load the file):

FLUID Revision 2.27, ...
Bootloader: (reset target)
  • Start a second SSH session and start the modem:
root@om-gta02:~# s3c24xx-gpio b7=1

FLUID should now say something like this:

(fluid, version 3) ok
Checksumming (269 * 8kB = 2152kB):  ok
Flash Detect: (0xEC, 0x22A0) Samsung K5A3240CT ok
Program: (34 sectors, 267*8k=2136k) (*******************) ok

Note: If you get this instead: MESSAGE: File cmd.m0 not found, then you didn't do the cd /usr/sbin. Please pay attention ;-)

If FLUID does nothing, curse your bad luck and repeat the reset sequence.

  • To verify that everything went well, do this in either of the two sessions:
root@om-gta02:~# cat /dev/ttySAC0 &
root@om-gta02:~# echo -en 'AT\r' >/dev/ttySAC0
root@om-gta02:~# echo -en 'AT+CGMR\r' >/dev/ttySAC0
+CGMR: "HW: GTA, GSM: gsm_ac_gp_fd_pu_em_cph_ds_vc_cal_amd8_ts0-Moko9-beta1"
root@om-gta02:~# kill %1

In some case you may recive this:

(fluid, version 3) ok
Checksumming (269 * 8kB = 2152kB):  ok
Flash Detect: (0xEC, 0x22A0) Samsung K5A3240CT ok
Program: (0 sectors, 0*8k=0k) () ok

If so reflash some older firmware that can be found here (http://people.openmoko.org/joerg/calypso_moko_FW/) -- but never downgrade to a version earlier than Moko6, or you will render the GSM unusable (certain internal data structures changed between Moko5 and Moko6).

Personal tools

Introduction

This is a step-by-step description of how the firmware is upgraded on a GTA02 with FLUID running on the device. Note that this process tolerates almost no variations. Stray from the instructions at your own peril. Instructions based on a posting by Werner (http://lists.openmoko.org/pipermail/openmoko-devel/2008-April/002605.html), thanks.

Please note: Update to MOKO9-beta firmware isn't recommended by OM, and probably won't fix any recent issues like #1024 et al.

Please see http://people.openmoko.org/joerg/calypso_moko_FW for more recent FW-images. For now there is some moko10beta2, which should fix #666, and also has a new command AT+CSIM. This version is not supposed to fix #1024 We are planning to include this version, renamed to moko10, to the factory image of A7 run. Version string will change though.

We recommend you don't update by following this procedure, unless you feel very comfortable with commandline. Don't miss-spell any FLUID command! There will be a SD-image shortly, that greatly simplifies the whole GSM-update process - we suggest everybody who's not feeling completely comfortable with the procedure described herein to wait for this improved method.

Warning: there are chances to _completely_ brick your GSM modem on messing around with FLUID! Please watch out for typos!

The GSM-firmware didn't differ from GTA01 to GTA02, as the GSM-hardware didn't either. This means you can flash MOKO10 (or any other recent GSM-FW) to GTA01 as well. According to mwester, this worked for him to update from MOKO1 on a GTA01Bv4 to MOKO10b2, by following the steps described herein.


Any reports on successful update, as well as problems encountered, or SIMs seen to work after update, all highly appreciated. Please add to the "discussion" tab of this wikipage. Thanks!

Phase 1: Preparations

  • Download and install a distribution to your device that gives you SSH access. We recommend the fso-console image:
mickey@amethyst$ cd /tmp
mickey@amethyst$ wget http://people.openmoko.org/mickey/images/openmoko-fso-console-image-glibc-ipk--20081028-om-gta02.rootfs.jffs2.summary
mickey@amethyst$ dfu-util -a rootfs -R -D ./openmoko-fso-console-image-glibc-ipk--20081028-om-gta02.rootfs.jffs2.summary
mickey@amethyst$ wget http://people.openmoko.org/mickey/images/uImage-2.6.24+r10+gitr75999+54524f4531c8b262431b794fea610d81bb351c86-r10-om-gta02.bin
mickey@amethyst$ dfu-util -a kernel -R -D ./uImage-2.6.24+r10+gitr75999+54524f4531c8b262431b794fea610d81bb351c86-r10-om-gta02.bin
root@om-gta02:~# opkg install http://people.openmoko.org/joerg/calypso_moko_FW/fluid_0.0+svn20070817-r2_armv4t_eabi.ipk
root@om-gta02:~# opkg install http://people.openmoko.org/joerg/calypso_moko_FW/s3c24xx-gpio_1.0+svnr4130-r2.1_armv4t.ipk
root@om-gta02:~# cd $HOME
root@om-gta02:~# wget http://people.openmoko.org/joerg/calypso_moko_FW/gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-moko9-beta1.m0

Phase 2: The Lobotomy

  • Make sure nothing is accessing the GSM modem. If you're using the fso-console image from the link above, this will happen automagically on boot. On other systems, kill processes as you see fit.
  • Powercycle the modem:
root@om-gta02:~# echo 0 >/sys/bus/platform/devices/neo1973-pm-gsm.0/power_on
root@om-gta02:~# echo 1 >/sys/bus/platform/devices/neo1973-pm-gsm.0/power_on
root@om-gta02:~# s3c24xx-gpio b7=0
root@om-gta02:~# echo "AT@POFF" >/dev/ttySAC0
  • Launch the FLUID binary:
root@om-gta02:~# cd /usr/sbin
root@om-gta02:/usr/sbin# FLUID_PORT=/dev/ttySAC0 FLUID_FLOWCONTROL=h fluid.exe \
-oO -b 115200 \
-f $HOME/gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-moko9-beta1.m0

It should say something like this (takes a few seconds to load the file):

FLUID Revision 2.27, ...
Bootloader: (reset target)
  • Start a second SSH session and start the modem:
root@om-gta02:~# s3c24xx-gpio b7=1

FLUID should now say something like this:

(fluid, version 3) ok
Checksumming (269 * 8kB = 2152kB):  ok
Flash Detect: (0xEC, 0x22A0) Samsung K5A3240CT ok
Program: (34 sectors, 267*8k=2136k) (*******************) ok

Note: If you get this instead: MESSAGE: File cmd.m0 not found, then you didn't do the cd /usr/sbin. Please pay attention ;-)

If FLUID does nothing, curse your bad luck and repeat the reset sequence.

  • To verify that everything went well, do this in either of the two sessions:
root@om-gta02:~# cat /dev/ttySAC0 &
root@om-gta02:~# echo -en 'AT\r' >/dev/ttySAC0
root@om-gta02:~# echo -en 'AT+CGMR\r' >/dev/ttySAC0
+CGMR: "HW: GTA, GSM: gsm_ac_gp_fd_pu_em_cph_ds_vc_cal_amd8_ts0-Moko9-beta1"
root@om-gta02:~# kill %1

In some case you may recive this:

(fluid, version 3) ok
Checksumming (269 * 8kB = 2152kB):  ok
Flash Detect: (0xEC, 0x22A0) Samsung K5A3240CT ok
Program: (0 sectors, 0*8k=0k) () ok

If so reflash some older firmware that can be found here (http://people.openmoko.org/joerg/calypso_moko_FW/) -- but never downgrade to a version earlier than Moko6, or you will render the GSM unusable (certain internal data structures changed between Moko5 and Moko6).