# HG changeset patch # User Mychaela Falconia # Date 1532406171 0 # Node ID 569c3d522e5c11994d863ad4af1502f795309931 # Parent 9363ea39c74c8272d1f5de74b7ee39c16b2d5317 doc/Config-vars: written diff -r 9363ea39c74c -r 569c3d522e5c doc/Config-vars --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/Config-vars Tue Jul 24 04:22:51 2018 +0000 @@ -0,0 +1,143 @@ +The following Bourne shell variables can be set on the ./configure.sh command +line to tweak the firmware build configuration: + +ALLOW_CSIM_GSM + + Per TI's original design, the AT+CSIM command does not allow GSM APDUs + of class 0xA0. Openmoko found some need for them, and they patched + their modem fw to allow these APDUs with AT+CSIM. With our new hybrid + modem fw this policy setting is configurable at build time; the default + is ALLOW_CSIM_GSM=1 (GSM APDUs allowed). + +DISABLE_SLEEP + + The general default is DISABLE_SLEEP=0, and the firmware automatically + enables all of the chipset's available sleep modes on boot. Setting + DISABLE_SLEEP=1 causes all sleep modes to be disabled by default on + boot (they can still be enabled with the AT%SLEEP command); this + setting is needed for FCDEV3B V1 boards that have a hardware bug that + causes breakage when sleep modes are enabled. + +DSAMPLE_FULL_COLOR + + When the firmware's R2D component (normally present only in UI-enabled + builds) is built for any target other than c139, one of TI's D-Sample + framebuffer drivers is enabled: either color or B&W. (The actual + hardware pokes are omitted when the build target is anything other than + dsample, but the framebuffer is still maintained in RAM.) By default + the color framebuffer driver is enabled; setting DSAMPLE_FULL_COLOR=0 + switches to the B&W framebuffer driver. + +L1_DYN_DSP_DWNLD + + This setting enables TI's dynamic DSP patch download mechanism. When + the firmware is built for a Calypso target with DSP ROM version 36 in + the silicon (all FreeCalypso-made hw and most of the supported legacy + targets), L1_DYN_DSP_DWNLD is enabled by default and needs to be kept + enabled for correct operation: the patch code we got from TI for this + ROM is the dynamic download version, and the ARM-side L1 code expects + all of these patches to be present, both the static part and the + dynamic parts. However, one can build our fw with L1_DYN_DSP_DWNLD=0 + for experimental testing, to see what breaks when the dynamic patches + are omitted. + +L1_VOICE_MEMO_AMR + + This setting enables or disables support in L1 and in the RiViera Audio + Service for AMR voice memo recording and playback. This code has not + been properly studied yet and no test AT commands are provided for it, + but it is enabled by default like in TI's original TCS211 fw. + +MELODY_E2 + + This setting enables or disables support in L1 and in the RiViera Audio + Service for playing E2-format melodies. The default is MELODY_E2=1 + like in TI's original TCS211 fw. Note that Melody E1 support is always + enabled; setting MELODY_E2=0 disables only Melody E2, but not E1. + +SERIAL_DYNAMIC_SWITCH + + TI's TCS211 fw includes a provision (only for Bluetooth-enabled fw in + TI's original) to switch one UART between the AT command interface and + RVTMUX while the other UART is fixed for Bluetooth. In FreeCalypso we + have changed this code to work without Bluetooth, for the purpose of + switching the user-facing MODEM UART between AT commands and RVTMUX, + but the mechanism does not work properly yet and is disabled by default. + Enable it with SERIAL_DYNAMIC_SWITCH=1 if you would like to play with + it. + +SPEECH_RECO + + This setting enables or disables support in L1 and in the RiViera Audio + Service for TI's speech recognition mechanism. This code and the + underlying DSP facility itself have not been properly studied yet and + no test AT commands are provided for it, but it is enabled by default + like in TI's original TCS211 fw. + +SUFFIX + + This setting is solely for configuration management. If you make a + build with any of the settings described in this document changed from + the default, you should also pass a SUFFIX=-xxx argument so your special + build will be appropriately identified in the build directory name and + in the firmware version ID string compiled into the image. The naming + of suffixes is up to you, but here are some examples: + + DSAMPLE_FULL_COLOR=0 UI_CONFIG=bigbw SUFFIX=-bw + L1_DYN_DSP_DWNLD=0 SUFFIX=-nodyn + MELODY_E2=0 SUFFIX=-noe2 + SERIAL_DYNAMIC_SWITCH=1 SUFFIX=-sds + SPEECH_RECO=0 SUFFIX=-nosr + TR_BAUD_CONFIG=TR_BAUD_812500 SUFFIX=-812500 + USE_STR2IND=1 SUFFIX=-s2i + +TR_BAUD_CONFIG + + The value of this symbol is an alphanumeric keyword of the form + TR_BAUD_xxxxxx; the default is TR_BAUD_115200. See + src/cs/drivers/drv_core/uart/traceswitch.h for the available baud rate + choices; the most practical use is setting TR_BAUD_CONFIG=TR_BAUD_812500 + when you need to run the RVTMUX serial channel at the maximum possible + baud rate. + +UI_CONFIG + + The 3 allowed values for this setting are bigcolor, bigbw and 84x48, + selecting one of the 3 UI configurations supported by TI's code. The + default is 84x48 when the firmware is built for target c11x or c139, + and bigcolor otherwise. + +USE_STR2IND + + Unlike TI's original firmwares, we build without str2ind by default. + You can enable str2ind with USE_STR2IND=1, but the time to build the fw + will be significantly longer as the compiler has to be run twice for + each C source file, with str2ind sandwiched in between. + +The following Bourne shell variables are used inside the build system in the +individual component build recipes (components/*) but cannot be set on the +./configure.sh line because they are fixed in the overall fw build recipes +(configs/*): + +GPRS + + Self-explanatory: enables or disables GPRS. + +MMI + + TI's original config variable: MMI=0 for the AT-command-controlled + modem configuration or MMI=2 for the UI-enabled configuration with + BMI and MFW. + +SRVC + + TI's original config variable, selects the presence or absence of data + services other than GPRS as follows: + + SRVC=0: voice and SMS only + SRVC=1: CSD and fax enabled + SRVC=2: CSD enabled, but not fax + +Finally, CHIPSET, DSP, RF and AMR variables reflect the physical configuration +of the selected target hw that no amount of software hacking can change. +(The AMR variable indicates the presence or absence of AMR support in the DSP.)