0xFFFF(1)

NAME
0xFFFF - Open Free Fiasco Firmware Flasher, version 0.9

SYNOPSIS
0xFFFF [options]

DESCRIPTION
0xFFFF is Open Free Fiasco Firmware Flasher for Maemo devices. It support generating and unpacking FIASCO images on local computer. Useful for editing Maemo firmware package for future flash. It support via USB flashing any image type to Maemo device and also "cold" flashing which means flashing dead device with erased bootloader. There is support for booting kernel via USB without flashing to NAND and also changing configuration of Maemo device (enable/disable R&D mode, changing HW revision strings, ...).

0xFFFF is alternative tool to proprietary Nokia flasher-3.5 and fiasco-gen. 0xFFFF generate compatible FIASCO images and also accept FIASCO images generated by Nokia fiasco-gen.

Operations:

-b [cmdline]
    boot default or loaded kernel (default: no cmdline)

-b update
    boot default or loaded kernel to Update mode

-r  reboot device

-l  load kernel and initfs images to RAM

-f  flash all specified images

-c  cold flash 2nd and secondary images

-x [/dev/mtd]
    check for bad blocks on mtd device (default: all)

-E file
    dump all device images to one fiasco image

-e [dir]
    dump all device images (or one -t) to directory (default: current)

Device configuration:

-I  identify, show all information about device

-D 0|1|2
    change root device: 0 - flash, 1 - mmc, 2 - usb

-U 0|1
    disable/enable USB host mode

-R 0|1
    disable/enable R&D mode

-F flags
    change R&D flags, flags are comma separated list, can be empty

-H rev
    change HW revision

-N ver
    change NOLO version string

-K ver
    change kernel version string

-T ver
    change initfs version string

-S ver
    change SW release version string

-C ver
    change content eMMC version string

Input image specification:

-M file
    specify fiasco image

-m arg
    specify normal image
    arg is [[[dev:[hw:]]ver:]type:]file[%lay]
    dev is device name string (default: empty)
    hw are comma separated list of HW revisions (default: empty)
    ver is image version string (default: empty)
    type is image type (default: autodetect)
    file is image file name
    lay is layout file name (default: none)

Image filters:

-t type
    filter images by type

-d dev
    filter images by device

-w hw
    filter images by HW revision

Fiasco image:

-u [dir]
    unpack fiasco image to directory (default: current)

-g file[%sw]
    generate fiasco image with SW rel version (default: no version)

Other options:

-i  identify images

-s  simulate, do not flash or write on disk

-n  disable hash, checksum and image type checking

-v  be verbose and noisy

-h  show this help message

R&D flags:

no-omap-wd
    disable auto reboot by OMAP watchdog

no-ext-wd
    disable auto reboot by external watchdog

no-lifeguard-reset
    disable auto reboot by software lifeguard

serial-console
    enable serial console

no-usb-timeout
    disable usb timeout for flashing

sti-console
    enable sti console

no-charging
    disable battery charging

force-power-key
    force omap boot reason to power key

Supported devices:

SU-18
    Nokia 770

RX-34
    Nokia N800

RX-44
    Nokia N810

RX-48
    Nokia N810 Wimax

RX-51
    Nokia N900

RM-680
    Nokia N950

RM-696
    Nokia N9

Supported image types:

xloader
2nd
secondary
kernel
initfs
rootfs
mmc
cmt-2nd
cmt-algo
cmt-mcusw

Supported connection protocols:

Local on device
NOLO via USB
Cold flashing via USB
Mk II protocol via USB
RAW disk via USB

EXAMPLES

Via USB:

Identify device:
$ 0xFFFF -I

Load kernel & initfs and boot it with cmdline:
$ 0xFFFF -m initfs:<file> -m kernel:<file> -l -b "<cmdline>"

Flash kernel and reboot:
$ 0xFFFF -m kernel:<file> -f -r

Flash FIASCO image and reboot:
$ 0xFFFF -M <file> -f -r

Flash only kernel from FIASCO image and reboot:
$ 0xFFFF -M <file> -t kernel -f -r

Cold-Flash 2nd and secondary bootloaders:
$ 0xFFFF -m 2nd:<file> -m secondary:<file> -c

On device (need nanddump from mtd-utils):

Dump all images to current directory:
$ 0xFFFF -e

Dump all images to one FIASCO file:
$ 0xFFFF -E <file>

FIASCO packaging:

Show FIASCO image content:
$ 0xFFFF -M <file> -i

Unpack FIASCO image to current directory:
$ 0xFFFF -M <file> -u

Generate new FIASCO image image.fiasco from files xloader.bin, nolo.bin, zImage, rootfs and append device&version information (xloader for RX-51 hw revision: 2101 and 2102, version 1.0)
$ 0xFFFF -m RX-51:2101,2102:1.0:xloader:xloader.bin -m RX-51:2101,2102:1.0:secondary:nolo.bin -m 2.6.28:kernel:zImage -m rootfs -g image.fiasco