diff target-utils/compalstage/README @ 314:48c08499cede

compalstage binaries built
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Wed, 02 Apr 2014 08:02:14 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/target-utils/compalstage/README	Wed Apr 02 08:02:14 2014 +0000
@@ -0,0 +1,33 @@
+FreeCalypso loadtools have been designed from the beginning to work through
+the Calypso chip's own boot ROM.  This approach works great for Openmoko and
+Pirelli targets, but Compal phones unfortunately have this Calypso boot ROM
+disabled at the board level.  To run our own code in these phones instead of
+booting the regular firmware, we need to go through Compal's own boot code.
+The latter allows loading code into IRAM and jumping to it, but not in the
+same way as how we do it through the Calypso boot ROM.
+
+One could argue that the "proper" way to support these Compal phones would be
+to build a different version of our loadagent that is designed to be loaded
+through Compal's boot code instead of the Calypso boot ROM, and then redesign
+our fc-loadtool and fc-xram utilities to work with different loadagents loaded
+in different ways on different target devices.  But I don't feel like doing
+that - too invasive to the once-clean design of loadtools.
+
+Hence I am adopting a different solution that works in the same way as
+OsmocomBB's "chain loading": the IRAM image that is fed to Compal's boot code
+is not our real loadagent, but a tiny piece of code that enables the Calypso
+boot ROM and jumps to it.  All loadtools host programs will include this
+optional "Compal stage" at the beginning, enabled for targets that need it,
+but will then always fall into the Calypso boot ROM IRAM download path.
+
+The approach I'm adopting is doubly inefficient for Mot C139/140 phones whose
+bootloader effectively requires that the downloaded image be ~15 KiB long
+even when we only need to download 32 bytes.  But hey, our ultimate goal is to
+produce our own Calypso phones, rather than hack those made by diabolical
+manufacturers who do not Respect Your Freedom; running our own gsm-fw on the
+Mot C139 is only a transitional step, so making fc-loadtool/fc-xram entry
+slower by a second or two is probably an acceptable price for keeping the
+code clean for the boot-ROM-enabled free world.
+
+In this directory we build the several different versions of compalstage
+needed for different C1xx models.