# HG changeset patch # User Mychaela Falconia # Date 1445399285 0 # Node ID 3f44bb6108b907fa1b6c68f01371e333712b4257 # Parent 7f42cf4bca796ef4e7ad90c18553d0dec3060c23 README written for tcs211-l1-reconst diff -r 7f42cf4bca79 -r 3f44bb6108b9 README --- a/README Wed Oct 21 03:18:53 2015 +0000 +++ b/README Wed Oct 21 03:48:05 2015 +0000 @@ -1,20 +1,26 @@ -This is a special debug version of leo2moko intended for use by FreeCalypso -developers only; it does not provide any additional features for Freerunner -users beyond standard leo2moko-r1 aka moko12; non-developer users are advised -to stay with the just-mentioned stable release. +The purpose of this Hg tree (derived from leo2moko-debug) is to facilitate an +attempt at reconstructing an L1 source that would match the binary object +version we got with our TCS211 semi-src delivery from Sotovik. -The primary intended use of this debug fw version is to enable FreeCalypso -developers to troubleshoot misbehavior in our current gcc-built fw version -by comparing the operation of the fw against a known working reference; -the debug features added in this version are: +The source tree contained herein does NOT compile all the way into a complete +firmware image, instead the link step currently fails because most L1 modules +have been replaced with dummies. The purpose of this tree is not to produce a +complete fw image, but to facilitate compilation of individual C modules pulled +from the LoCosto L1 source in the TCS211 environment. + +The envisioned mode of usage is as follows: -* Same AT-over-RVTMUX mechanism as implemented in FreeCalypso mainline; +1. Choose an individual L1 C module to work on. + +2. Copy the source for the chosen module from the LoCosto source in the place + of the dummy in this tree. -* ETM FFS access protocol changed from TMFFS1 (used by some TI Windows tools, - apparently) to TMFFS2 (the version adopted for FreeCalypso) to allow the - flash file system to be manipulated with fc-fsio while this fw is running. +3. Run ./winebuild.sh in the g23m directory and examine the output in + report.txt. If the imported C module fails to compile, massage it until it + passes compilation. -* The pf_TaskEntry() function in the guts of GPF has been patched to not - disable system traces. Verbose traces from various entities still need - to be enabled explicitly, but the expected responses to sysprim commands - are no longer suppressed. +4. Once compilation passes, look at the generated COFF object in + g23m/__out__/gsm*/obj/l1_{ext,int}. Disassemble it with the tiobjd tool + from freecalypso-reveng, and compare against the disassembly of the + original ("official") binary blob version we got. Massage the reconstructed + source until it compiles into object code that matches the original.