annotate doc/Compiling @ 600:8f50b202e81f

board preprocessor conditionals: prep for more FC hw in the future This change eliminates the CONFIG_TARGET_FCDEV3B preprocessor symbol and all preprocessor conditionals throughout the code base that tested for it, replacing them with CONFIG_TARGET_FCFAM or CONFIG_TARGET_FCMODEM. These new symbols are specified as follows: CONFIG_TARGET_FCFAM is intended to cover all hardware designs created by Mother Mychaela under the FreeCalypso trademark. This family will include modem products (repackagings of the FCDEV3B, possibly with RFFE or even RF transceiver changes), and also my desired FreeCalypso handset product. CONFIG_TARGET_FCMODEM is intended to cover all FreeCalypso modem products (which will be firmware-compatible with the FCDEV3B if they use TI Rita transceiver, or will require a different fw build if we switch to one of Silabs Aero transceivers), but not the handset product. Right now this CONFIG_TARGET_FCMODEM preprocessor symbol is used to conditionalize everything dealing with MCSI. At the present moment the future of FC hardware evolution is still unknown: it is not known whether we will ever have any beyond-FCDEV3B hardware at all (contingent on uncertain funding), and if we do produce further FC hardware designs, it is not known whether they will retain the same FIC modem core (triband), if we are going to have a quadband design that still retains the classic Rita transceiver, or if we are going to switch to Silabs Aero II or some other transceiver. If we produce a quadband modem that still uses Rita, it will run exactly the same fw as the FCDEV3B thanks to the way we define TSPACT signals for the RF_FAM=12 && CONFIG_TARGET_FCFAM combination, and the current fcdev3b build target will be renamed to fcmodem. OTOH, if that putative quadband modem will be Aero-based, then it will require a different fw build target, the fcdev3b target will stay as it is, and the two targets will both define CONFIG_TARGET_FCFAM and CONFIG_TARGET_FCMODEM, but will have different RF_FAM numbers. But no matter which way we are going to evolve, it is not right to have conditionals on CONFIG_TARGET_FCDEV3B in places like ACI, and the present change clears the way for future evolution.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 01 Apr 2019 01:05:24 +0000
parents d25f6e216566
children b9ad7bd63f59
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 Preparing the development and build environment
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 ===============================================
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 In order to compile our FreeCalypso Magnetite firmware, you will need a
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 Unix/Linux system. Even though we are using a compiler which we got in the
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 form of Windows .exe binaries and thus have to use Wine (see below), everything
531
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
7 that we have built on top of it is Unix-based. The Mother currently uses
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
8 Slackware Linux release 14.2 (32-bit) and previously used Slackware 13.37,
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
9 also 32-bit.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10
531
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
11 You will need to install the following 3 pieces of software on whatever
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 machine you will use to run the FC Magnetite build process:
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13
531
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
14 1. Wine: self-explanatory. The Mother uses the following Slackware package:
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
15
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
16 https://www.freecalypso.org/members/falcon/slackware/wine-1.5.23-i486-1sg.txz
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
17
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
18 I originally used it with Slackware 13.37 and I am still able to use it
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
19 with 14.2 without any issues.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 2. FreeCalypso Wine environment:
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 ftp://ftp.freecalypso.org/pub/GSM/TI_src/wine/installed-env.tar.xz
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 Extract the content of the above tarball into your ~/.wine/drive_c
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 directory - that's all there is to it!
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 3. nowhine wrapper around Wine:
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 ftp://ftp.freecalypso.org/pub/GSM/TI_src/wine/nowhine.c
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31
531
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
32 The purpose of this wrapper is to suppress the following obnoxious whine
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
33 which wine emits on my system:
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
34
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
35 preloader: Warning: failed to reserve range 00010000-00110000
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
36
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
37 Wine will also emits a bunch of other whines if you have to run it
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
38 in an environment without an X11 display (e.g., on a machine that you
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
39 ssh into), and our nowhine wrapper suppresses those as well.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40
531
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
41 If wine does not emit those preloader whines on your system and you
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
42 never find yourself in a situation of having to run without an X11
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
43 display and thus you find our nowhine wrapper to be unnecessary,
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
44 you can skip the wrapper and create a nowhine symlink pointing directly
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
45 to wine.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46
531
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
47 The mokosrec2bin flash image file format conversion utility is now included
6917ea63bffa doc/Compiling: Slackware, Wine and mokosrec2bin updates
Mychaela Falconia <falcon@freecalypso.org>
parents: 522
diff changeset
48 locally and no longer needs to be provided externally.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 Compiling the local helper utilities
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 ====================================
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 (cd helpers; make)
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 Do the above. Most of the build helper scripts used in the FC Magnetite build
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 system are written in Bourne shell, but a few were easier to implement in C.
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 You need to compile these C helper utilities before you can run an actual FC
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 Magnetite firmware build, but these utilities are totally ad hoc and specific
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 to the needs of our fw build system, hence they are not meant to be installed
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 globally on your system - instead they stay within the fc-magnetite tree. You
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 just need to run make in the helpers directory once before any actual firmware
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 builds.
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 Actually building the firmware
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 ==============================
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 In order to build our FreeCalypso Magnetite firmware for a particular target in
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 a particular configuration, run a command like this from the top level of the
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 fc-magnetite tree:
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70
522
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
71 ./configure.sh fcdev3b hybrid
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72
522
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
73 The first required argument to the configure.sh script selects the target, the
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
74 second required argument selects the build configuration recipe, and any further
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
75 arguments beyond these two (optional) allow changing various configurable
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
76 settings that aren't strictly fixed by the hardware target or by the build
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
77 configuration recipe.
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
78
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
79 As of this writing, the following hardware targets are supported:
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80
381
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
81 c11x Motorola C11x/12x
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
82 c139 Motorola C139/140
540
f551ffdfe938 doc/Compiling: update for c155 target support and fc-host-tools-r9
Mychaela Falconia <falcon@freecalypso.org>
parents: 531
diff changeset
83 c155 Motorola C155/156
461
69da44f2909e doc/Compiling: mention that the dsample target is currently D-Sample C05
Mychaela Falconia <falcon@freecalypso.org>
parents: 458
diff changeset
84 dsample TI's D-Sample C05 board (no working radio currently)
251
6c594ce434f8 doc/Compiling: update for the FCDEV3B and for fc-host-tools-r5
Mychaela Falconia <falcon@freecalypso.org>
parents: 220
diff changeset
85 fcdev3b FreeCalypso FCDEV3B
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 gtamodem The Calypso GSM/GPRS modem in Openmoko GTA01/02 smartphones
593
d25f6e216566 doc/Compiling: update for SE J100 target and fc-host-tools-r10
Mychaela Falconia <falcon@freecalypso.org>
parents: 544
diff changeset
87 j100 Sony Ericsson J100
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 pirelli Pirelli DP-L10
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 For the available configurations (the second required argument to the configure
373
9399a83cb394 first round of documentation updates for 2018
Mychaela Falconia <falcon@freecalypso.org>
parents: 311
diff changeset
91 script), look in the configs directory and read the various write-ups under doc.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92
522
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
93 Each configuration is built in its own directory; the name of this build
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
94 directory takes the form of build-$TARGET-$CONFIG$SUFFIX, i.e., for the example
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
95 configure.sh line above, the resulting build directory will be named
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
96 build-fcdev3b-hybrid. The $SUFFIX part is empty by default, but can be set on
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
97 the command line in order to distinguish non-standard builds that had some
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
98 tunable settings changed to values other than the default. For example, if you
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
99 are building the hybrid configuration for the fcdev3b target as above, but you
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
100 need to disable MELODY_E2, you could run the configure script as follows:
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
101
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
102 ./configure.sh fcdev3b hybrid MELODY_E2=0 SUFFIX=-noe2
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
103
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
104 The build directory would then become build-fcdev3b-hybrid-noe2, and the
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
105 specified suffix will also be included in the firmware version ID string that
9363ea39c74c configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
Mychaela Falconia <falcon@freecalypso.org>
parents: 461
diff changeset
106 gets compiled into the image.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 To actually compile the firmware, cd into the created build directory and run
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 make there. Unfortunately the use of TI's proprietary compiler via Wine makes
381
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
110 the build quite slow, but there is a trick to speed it up: if you run some
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
111 other Wine program that stays open and does not exit on its own (e.g., wine cmd)
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
112 in another window and leave it open while you run your FC Magnetite fw build,
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
113 the build will proceed much faster - the presence of another Wine process using
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
114 the wineserver environment will keep Wine from shutting this environment down
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
115 and restarting it for every individual cl470 run, i.e., for each individual C
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
116 source file.
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
117
c6823ed06f9c doc/Compiling: update for C11x and for the speed-up trick
Mychaela Falconia <falcon@freecalypso.org>
parents: 373
diff changeset
118 When the build is done, the flashable firmware image will be in fwimage.bin.
540
f551ffdfe938 doc/Compiling: update for c155 target support and fc-host-tools-r9
Mychaela Falconia <falcon@freecalypso.org>
parents: 531
diff changeset
119 This image is to be flashed with fc-loadtool at a target-dependent base address.
f551ffdfe938 doc/Compiling: update for c155 target support and fc-host-tools-r9
Mychaela Falconia <falcon@freecalypso.org>
parents: 531
diff changeset
120 The build system also produces a short text file named flash-script which is a
f551ffdfe938 doc/Compiling: update for c155 target support and fc-host-tools-r9
Mychaela Falconia <falcon@freecalypso.org>
parents: 531
diff changeset
121 flashing command script for fc-loadtool that erases the correct range of flash
f551ffdfe938 doc/Compiling: update for c155 target support and fc-host-tools-r9
Mychaela Falconia <falcon@freecalypso.org>
parents: 531
diff changeset
122 sectors and then programs fwimage.bin at the right address.
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123
251
6c594ce434f8 doc/Compiling: update for the FCDEV3B and for fc-host-tools-r5
Mychaela Falconia <falcon@freecalypso.org>
parents: 220
diff changeset
124 When building firmware for the FCDEV3B or for the Pirelli, one can build either
6c594ce434f8 doc/Compiling: update for the FCDEV3B and for fc-host-tools-r5
Mychaela Falconia <falcon@freecalypso.org>
parents: 220
diff changeset
125 a flashable image or a RAM-loadable one - or both. Because this part of the
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 build system is common with other targets for which only flash images can be
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 produced, the Makefile always builds the flashable image by default -
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 fwimage.bin is always meant for flash and never for RAM. To build a RAM-
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 loadable image when the target allows it, run 'make ram' - the image will be in
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 ramimage.srec, which you can then load and run on the target with FreeCalypso
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 host tool fc-xram.
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 Running on the hardware
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 =======================
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 In order to run the firmware you have built on your Calypso phone or modem
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 (flash or run in RAM as appropriate), you will need to use FreeCalypso host
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 tools. As of this writing, the latest packaged release is this one:
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139
593
d25f6e216566 doc/Compiling: update for SE J100 target and fc-host-tools-r10
Mychaela Falconia <falcon@freecalypso.org>
parents: 544
diff changeset
140 ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/fc-host-tools-r10.tar.bz2
94
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141
596d86109e44 initial round of documentation
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 Please see target-specific notes for more details.