view CHANGES @ 443:715c55ba511d

CHANGES: calversion documented
author Mychaela Falconia <falcon@freecalypso.org>
date Wed, 26 Dec 2018 07:22:44 +0000
parents 44f73d56b6f5
children a449ae0a1cec
line wrap: on
line source

Changes in the current code since fc-host-tools-r9a:

* New developer utility fc-rftab2c can convert per-band RF parameter tables
  into C code snippets for inclusion into FreeCalypso firmware sources.

* There have been many different versions of the Calypso silicon made over the
  years, including hardware differences, at least 3 ARM boot ROM versions and
  at least 3 DSP ROM versions.  New target utility calversion (to be run via
  fc-iram) helps identify unknown Calypso chip versions: it reports the ARM
  boot ROM version, the DSP ROM version and the values read from the few
  documented ID registers.

Changes from fc-host-tools-r9 to fc-host-tools-r9a:

* fc-loadtool can now correctly program the flash on Mot C155/156 phones:
  it turns out that their flash is like the one on TI's D-Sample board
  and needs the same partition quirks.

Changes from fc-host-tools-r8 to fc-host-tools-r9:

* mokosrec2bin utility added: it was originally written as a reverse
  engineering aid and was previously maintained in the freecalypso-reveng
  repository, but it has since been repurposed into a legitimate development
  tool.

* Added workarounds for FTDI USB-serial adapters that feed previously
  accumulated serial Rx bytes or outright garbage to newly started serial I/O
  programs:

  + fcup-atinterf back-end program for fcup-* does a sleep of 20 ms followed by
    tcflush(target_fd, TCIFLUSH) on startup to flush any previously accumulated
    serial Rx buffer garbage that would otherwise cause breakage.  The two
    delays in the deep sleep wakeup logic (see doc/Deep-sleep-support) have been
    reduced from 50 to 30 ms each, thus the total length of initial delays has
    been reduced from 100 to 80 ms.

  + In the rvinterf suite (see doc/Rvinterf-tools) a similar startup delay has
    been added in the special corner case of a non-interactive one-shot
    operation being commanded with rvinterf also being launched from the client
    program with -p; see the "Startup synchronization hack" section in the new
    Rvinterf-tools document.

* fcup-smdump now restores the character set selection (AT+CSCS) setting on the
  target to the default "IRA" (ASCII) upon successful completion, after
  initially setting it to "HEX" for the operation; the intent of this change is
  to avoid leaving a strange state for anyone using the AT command interface
  manually after fcup-smdump.

* fcup-smsend bugfix: the corner case of omitting the destination address
  argument with -W now works as documented.

* fcup-settime: minor code rearrangement should slightly reduce the unavoidable
  delay between the time retrieval on the host and that time being set on the
  target.

* A hack that was added in fc-host-tools-r5 solely to support one (1) defective
  FCDEV3B board with a particular flash boot defect has been removed.

* A number of documentation updates have been made: Deep-sleep-support and
  Rvinterf-tools articles are new, RVTMUX and TIFFS-Overview write-ups got
  long-overdue major updates, plus a number of minor updates as usual.

* For those who build the rarely needed ARM7 gcc toolchain from source, an old
  bug in the toolchain/build+install.sh script which was masked on the Mother's
  Slackware system for some reason has been fixed.

Changes from fc-host-tools-r7 to fc-host-tools-r8:

* fc-loadtool can now correctly program the flash on TI's D-Sample board
  after implementing the needed quirk for the Intel 28F640W30B flash chip.

* target-utils (loadagent and friends) serial output code changed to wait for
  the Tx FIFO not full condition instead of FIFO empty; this change makes these
  target utilities actually utilize the Tx FIFO feature of Calypso UARTs.

* New c1xx-calextr utility can extract the factory RF calibration values for
  Mot C1xx phones from a dump of their flash; see doc/Compal-calibration.

* Support for RF tables in FreeCalypso ASCII format (see doc/RF_tables) is
  more complete: there is an ASCII format for the full 512 byte Tx ramps table,
  any ASCII RF table can be converted to native binary with fc-cal2bin, most
  ASCII RF tables can be uploaded directly into FFS with fc-fsio's new
  upload-rf-table command.

* fc-cal2text change: Tx ramps tables are now emitted in the new ASCII format
  with one file for the whole table, not split into 16 single ramp template
  files any more.

* fc-fsio changes:

  + new write-battery-table and write-charging-config commands for uploading
    FreeCalypso-invented battery discharge threshold tables and charging config
    files into the FFS of our FC devices with built-in compilation to binary;

  + added upload-rf-table command for uploading ASCII RF tables directly into
    FFS with built-in compilation to binary;

  + pirelli-magnetite-init command now copies the previously missed
    /gsm/rf/afcdac record.

* fc-tmsh can now upload audio FIR coefficient sets from FIR coefficient table
  files with the new auw-fir command.

* The audio mode configurations that have been added in fc-host-tools-r7 have
  been moved to a separate fc-audio-config repository and are no longer a part
  of the core FC host tools package.

* The UI development aid utility fc-lcdemu which has been excluded from the
  default build set since fc-host-tools-r5 has been moved to a separate
  freecalypso-ui-dev repository and is no longer a part of the core FC host
  tools package.

* rvinterf -X mechanism which pipes LCD output to fc-lcdemu now always inverts
  the RGB565 values as needed, and the -v option has been removed; see usage
  documentation in the freecalypso-ui-dev repository.

* fc-shell: added key command for sending sp MMI CONFIG KEY_SEQUENCE=<string>
  with a lot less typing, and keydown and keyup commands that do the same for
  KEY_PRESS and KEY_RELEASE "config" sysprim commands.

* There is a new suite of tools for talking to the AT command interface
  provided by FreeCalypso phones and modems, primarily for sending and
  retrieving SMS - see doc/User-phone-tools for more info.

Changes from fc-host-tools-r6 to fc-host-tools-r7:

* The way in which loadtools, rvinterf and miscellaneous tools operate on
  serial ports for the purpose of talking to Calypso GSM devices has been
  majorly reworked: the serial port handling code has been factored out into
  libserial, and the new libserial uses Linux-specific direct ioctl calls
  instead of generic termios.  The effect is that you can now use the GSM-
  specific high serial baud rates (up to 812500 bps) with FTDI adapters
  (like the FT2232D adapter commonly used with FCDEV3B) with the standard
  unpatched ftdi_sio kernel driver.  See doc/High-speed-serial for more info.

* Added new utilities tiaud-compile and tiaud-mkvol for generating *.cfg and
  *.vol binary files for the audio mode switching facility of TI's RiViera
  Audio Service, to be uploaded under /aud into FreeCalypso GSM devices.

* A set of audio mode tables is built and installed in
  /opt/freecalypso/aud-fcdev3b for uploading into /aud on FCDEV3B boards.

Changes from fc-host-tools-r5 to fc-host-tools-r6:

* loadtools and rvinterf now set TIOCEXCL on the tty to prevent the common
  error scenario of multiple processes trying to read from the same serial
  port.

* fc-loadtool: added a batch operation mode whereby the tool executes a given
  command script, cleans up (usually powers off) the target and exits.

* fc-loadtool exec command: scripts without slashes in the given name are now
  sought in the current directory.

* fc-fsio format command: if the FFS is already formatted, the tool now prints
  the error returned by the FFS code in the target fw, but does not stop the
  execution of scripts; this change makes production scripts rerun-able.

* exitcodes.h file installed in /opt/freecalypso/include/rvinterf: added
  ERROR_RFFAIL definition for use by fc-rfcal-tools.

Changes from fc-host-tools-r4 to fc-host-tools-r5:

* New install location: everything is now under /opt/freecalypso instead of
  /usr/local/bin and /usr/local/share/freecalypso.

* loadtools: added support for dsample (TI D-Sample) and fcfam (FreeCalypso
  hardware family starting with FCDEV3B) targets.

* loadagent: UART autodetection now works not only with Calypso boot ROM
  version 0300 found in the common Calypso devices, but also with the older
  version 0200 found in the older Calypso silicon on early D-Sample boards.

* loadtools support for C139/140 target: use -h compal -c 1004 command line
  options instead of the previous -h compal -c 1003 to support the newer
  versions of C139/140 boot code which expect "1004" instead of the more
  familiar "1003" in the serially downloaded code image.  The new -c 1004
  option ("1004" signature bytes) should work with all currently known
  Mot/Compal boot code versions, thus -c 1003 is retained only for backward
  compatibility with existing usage.

* fc-fsio: one can now type ls -l and not just the ll shorthand,
  pirelli-get-imei and pirelli-magnetite-init commands added (former
  fc-getpirimei and fc-pirhackinit separate utilities absorbed into fc-fsio),
  help facility added.

* fc-tmsh changes:

  + fc-tmsh now takes the -p option and supports one-shot command invokation
    like fc-fsio and fc-shell;

  + added support for L1/RF test mode commands and other TM3 protocol commands
    (omr, omw, oabbr, oabbw, tm3ver);

  + added ETM_AUDIO commands aul, aus, aur and auw.

* fc-olddump renamed to fc-memdump, can now use either TM3 or ETM memory read
  commands.

* tiffs: added -O option to parse FFS images from the ancient 20020917 firmware
  on the D-Sample.

* New in vitro analysis utilities: fc-cal2text and tiaud-decomp.

* Added tools for working with ringtone melodies: fc-e1decode and fc-e1gen for
  loudspeaker melodies (see doc/Melody_E1) and fc-buzplay (plus target-side
  buzplayer.srec) for devices that use a piezoelectric buzzer.

* rvinterf: added support for the keepalive mechanism, see the description in
  doc/RVTMUX.

* rvinterf & fc-shell: added support for the experimental TCH rerouting feature
  of FreeCalypso Citrine firmware.

* fc-fr2tch, fc-gsm2vm, fc-tch2fr, fc-vm2hex: new utilities for converting
  GSM 06.10 FR codec bits between different formats.

* c139explore & pirexplore: added host shell script wrappers invoking
  fc-compalram and fc-iram with the respective target binaries.

* Internal cleanup and refactoring in various places.

Changes from fc-host-tools-r3 to fc-host-tools-r4:

* Shellcode-based Compal phone break-in utility tfc139 reworked in a new way
  that should work with all Mot C1xx firmwares beyond the original TFC139
  target: see doc/Compal-unlock and doc/TFC139-breakin for the details.

* Documentation and cosmetic code changes to reflect the new understanding of
  TI's TM (Test Mode) predating ETM (Enhanced Test Mode): see doc/RVTMUX for
  a detailed explanation.

* Added support for the old non-enhanced Test Mode memory read command in the
  form of fc-tmsh omr command, fc-fsio omemdump command and fc-olddump utility.

* rvtdump and rvinterf recognize the old all-ASCII GPF trace format emitted by
  the D-Sample firmware from 20020917 and print these traces as ASCII instead
  of hex.

* fc-dspapidump fixed to be independent of host byte order.