view doc/Flash-boot-mode-hack @ 293:5b2ebc94cae4
aci3: integrated all Openmoko AT commands except AT@BAND
author
Mychaela Falconia <falcon@freecalypso.org>
date
Sat, 02 Sep 2017 17:37:06 +0000 (2017-09-02)
parents
63c12cba5ed5
children
line source
+ − There are two ways in which a flashed firmware image may be booted, which we
+ − call mode 0 and mode 1 - see the Flash-boot-modes write-up in the
+ − freecalypso-tools repository for the details. All TI official firmwares
+ − including our TCS211 reference version have used flash boot mode 1, and the
+ − present Magnetite firmware is unchanged in this regard.
+ −
+ − Some FCDEV3B boards have a non-understood hardware problem that causes flash
+ − boot to fail (the visible symptom is a dead hang with even JTAG not working)
+ − when the firmware image in flash uses boot mode 1. It is not currently known
+ − how many boards are affected by this problem; it is possible that the Mother's
+ − S/N 001 board is the only one that exhibits this oddity.
+ −
+ − Once the discovery was made that the flash boot problem occurs only when the fw
+ − image uses flash boot mode 1, a workaround became apparent: switch to using
+ − flash boot mode 0. Redesigning Magnetite fw to use interrupt and exception
+ − vectors in the ROM branching to 0x80001C-0x800034 in IRAM is not in line with
+ − the Mother's vision, but a surgical hack to make the Magnetite fw flash image
+ − receive control from the boot ROM in mode 0, disable the boot ROM via the
+ − FFFF:FB10 register and jump to 0 as if in mode 1 is quite doable, and it
+ − accomplishes the job of producing a flash image of FC Magnetite that boots
+ − without a hitch on the flash-boot-challenged FCDEV3B.
+ −
+ − The standard FC Magnetite build is unchanged and unaffected, i.e., the hack in
+ − question is NOT applied by default. However, if you have a board that has
+ − trouble booting the regular Magnetite fwimage.bin that uses flash boot mode 1,
+ − you can run 'make fwimage.mode0' in your build directory to get an image patched
+ − with the flash boot mode 0 hack.