view doc/Loadtools-on-GTA0x @ 435:0a01e1c4ea54

documentation: added some notes about the importance of preserving our /opt/freecalypso private directory hierarchy
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 04 Nov 2018 21:55:19 +0000
parents 1a658ab756fe
children
line wrap: on
line source

FreeCalypso loadtools are currently a part of FC host tools, but they used to
be a separate package.  In those days that separate package of loadtools could
be built in two ways:

1) One could compile and install loadtools on a general-purpose host system
   such as a GNU/Linux PC or laptop, and then potentially use them to operate
   on multiple Calypso targets of different kinds.

2) One could compile loadtools to run on the application processor of a
   smartphone such as Openmoko GTA0x, in which case it makes no sense for that
   special build of loadtools to support any target other than the specific
   modem in that smartphone.

Loadtools can be built with compalstage support excluded and with
GTA0x-specific modem power control included instead.  This build will still
include a bunch of functions of no relevance to GTA0x, but oh well..

To build loadtools for the GTA0x AP, you'll need to make the following
modifications to loadtools/Makefile:

* Change the CC= line to point to the appropriate cross-compiler (which you'll
  need to provide yourself).

* Change the CFLAGS= line: add the right options to target the ARM920T core in
  the GTA0x AP (e.g., -march=armv4t -mtune=arm920t), and add -DGTA0x_AP_BUILD
  to enable some code that makes sense only when running on the GTA0x AP.

* Change the PROGS= line to not build fc-compalram or fc-buzplay: the latter
  utilities are not applicable to GTA0x.

* Change EXTRA_OBJ= from listing compalload.o to listing compaldummy.o and
  gtapower.o instead.

See loadtools/gta-ap-build.sed for an example.