riff - Raw Image File Flasher version 0.5.2 ================================================================================= Description: ================================================================================= A tool for flashing a device. ================================================================================= Hardware and software requirements: ================================================================================= NOTE that building the tool requires the following libraries and header file to be placed on 'dependencies' folder: libusb.lib (libusb-win32 library for Windows, rename the library to libusb.lib) usb.h LCDriver_CNH1606432.lib (riff-laodercomm library on Igloo) LCDriver.h NOTE: To use riff on internal development board riff-configpack-internal also needs to be installed. To use internal config pack instead of default use 'snowball_internal' config pack. ================================================================================= Usage: ================================================================================= 'riff' build requires 'CDAL' library (CDAL.lib), therefore build the CDAL project before building the project for 'riff'. Use 'Release' build to get less debug messages during runtime. The required lib and executable will be created in a 'output' folder. Copy 'LCDriver_CNH1606432.dll' to 'output' folder to run 'riff.exe' ## Configuration file ## A template config file is provided in the source tree as config/riff.config It will be renamed and placed in /output/riff/config This file can be overridden with a user-specific config file placed in /.riff, or by providing a full path to a config file at runtime, as option on the command line (using the -c option). riff will look for configuration file to use in the following order: 1) Config file provided on command line (using the -c option) at runtime. 2) Config file in user's home directory (/.riff/config) 3) //riff/config ## Running ## Usage: riff [OPTION]...[FILE]... Available command line arguments are: -h, --help Display this help message. -m, --mode ACTION Select the mode. ACTION is `flash` or `erase` -c, --config PATH Give path to configuration file. -f, --flashimage IMAGEPATH Give path to flashimage. -a, --address FLASHADDR Give a start address in hex. -l, --length HEXLENGTH Length of the dump [Byte] in hex. -d, --dumppath DUMPPATH File path on PC where to store dump. -v, --verbose Shows more detailed information. --version Shows version information. Examples: $ riff -f Default mode 'flash' will be used, and configuration originally from config/riff.config but put in /riff will be used (if the user hasn't overridden this file by its own in /.riff/config). The flashimage at the provided path will be flashed onto the device starting at address 0. To start at any other address than 0, use $ riff -f -a
WARNING: NOTE THAT RIFF HAS NO WAY OF KNOWING WHETHER YOU ARE OVERWRITING IMPORTANT SECTIONS ON YOUR DEVICE OR NOT WHEN FLASHING! THE TOOL DOES NOT WARN YOU OR PREVENT YOU FROM PROVIDING ANY ADDRESS TO FLASH TO. In other words: it's up to you to know what you're doing, the tool takes no responsibility for it! Path to flashimage can also be specified in the config file and the -f flag can then be omitted. ================================================================================= Known issues: ================================================================================= 1) Linux can't find device. Power down device and disconnect and reconnect USB cable. Restart the flash tool and power up the device. ================================================================================= Version history and changelog: ================================================================================= 0.3.0 Initial version. 0.4.0 Dump functionality added. 0.4.1 Packaging and README updated. 0.4.2 Larger image file support. 0.5.0 Support for Windows. 0.5.1 Error description for LCD error number 0.5.2 Build fixes, split large writes into 16k chunks ================================================================================= Contact and support ================================================================================= http://igloocommunity.org/support