InsydeFlash for Linux (Use IHISI) Version 1.1c -- READ ME
===========================================================

This tool must use with InsydeH2O BIOS.

===========================================================
Important
===========================================================
Tool build environment:
IA32 version -> Ubuntu 12.04 LTS - kernel version 3.2.54
x64 version -> Ubuntu 12.04 LTS - kernel version 3.2.54

1.If you just need to test flash utility, please put your file to data folder, and use
  "./H2OFFT.sh (filename) (command)".

Note: The linking address is case-sensitive.
  
===========================================================
Package
===========================================================
The release package will include:

Read.me
ReleaseNotes.txt

utility 
  H2OFFT(x64).sh          -- Console Flash scrip file (run this file)
  H2OFFT(x64)-G.sh        -- Graphic Flash scrip file (run this file)
  platform.ini            -- Flash setting file
  message.ini             -- Message setting file
  command.ini             -- Command setting file
  vendor.opt              -- Command file
  Logo.png                -- Logo

  driver\
        BuildNotes.txt           -- User Guide to build this driver
        isfl_drv.c               -- driver source code
        isfl.h                   -- driver header file 
        Makefile                 -- Makefile for this driver

  x64\
        H2OFFT-Lx64             -- Console Flash application for x64
        H2OFFT-Lx64-G           -- Graphic Flash application for x64

  ia32\
        H2OFFT-L             -- Console Flash application for x86
        H2OFFT-L-G           -- Graphic Flash application for x86
	
  SecurityFlash\
        SecurityFlash_x86_WIN_100.00.01.02.zip  -- SecurityFlash tool under windows
        Using the Insyde Win Flash Package.pdf  -- Install Guide about SecurityFlash tool
===========================================================

Driver
===========================================================
Below driver files will be not included in release package 
but these have to be put in folder of release package when launching flash function.

x64\
	    isfl_drv_x64.ko     	-- Flash driver for x64
	    lfdd_drv.ko     		-- Flash driver for PCI/IO read x64

IA32\
	    isfl_drv.ko     		-- Flash driver for x86
	    lfdd_drv.ko     		-- Flash driver for PCI/IO read x86

	    
DRIVER =>

  If it is success to build driver, you can see "isfl_drv.ko" or "isfl_drv_x64.ko" in this folder.
  The file "isfl_drv.ko" is x86 driver, please put it into "IA32\".
  The file "isfl_drv_x64.ko" is x64 driver, please put it into "x64\".
  
3.If you see the following message: insmod: error inserting 'isfl_drv.ko': -1 Invalid module format
  (This is caused by incorrect kernel version. Please check kernel version and remove driver.) 

Multi-FD driver =>

  If it is success to build driver, you can see "lfdd_drv.ko" in this folder.
  If you run in x86 OS, please put "lfdd_drv.ko" into "IA32\".
  If you run in x64 OS, please put "lfdd_drv.ko" into "x64\".
===========================================================
Print help
===========================================================
usage:
In to the data folder
./H2OFFT.sh -h

===========================================================
CMOS Feature
===========================================================
usage:
Read CMOS:
Only CMOS - 
./H2OFFT.sh xxx.bin -cr
CMOS and BIOS - 
./H2OFFT.sh xxx.bin -cr -g

Write CMOS:
./H2OFFT.sh xxx.bin -cw
If xxx.bin < 256 bytes - 
Only CMOS in file
IF xxx.bin > 256 bytes - 
BIOS and CMOS

===========================================================
Read rom data from IHISI
===========================================================
usage:
In to the data folder
./H2OFFT.sh (Filename) -g

===========================================================
Decompress the bin file
===========================================================
usage:
./H2OFFT.sh [folder_name]
ex: ./H2OFFT.sh insyde
It will be decompress the binary files to the folder named insyde.

===========================================================
Vendor.opt
===========================================================
Options can be defined in vendor.opt by vendor.

For example:
If BIOS need flash logo and boot block (PEI), and do not reboot
after flash. The vendor.opt can be "-FL -B -N".

The command can write in "vendor.opt".
Than you just only type "./H2OFFT.sh".
This filename is "bios.rom".

It support you to write file name in vendor.opt.

The format is the same of your command.
Ex:
  ./H2OFFT.sh xxx.bin -all
  In vendor.opt: xxx.bin -all

===========================================================
Varable feature
===========================================================
vr -- Variable read feature
vw -- Variable write feature
ve -- Variable erase feature
vf -- Variable access by file

If data by file, please use ":(filename)".
This feature support "vr" and "vw".

Ex: Read Variable by Variable.bin
./H2OFFT.sh Variable -vr:Variable.bin

Variable.ini -- Variable GUID and Name here.
Format: Number,Name,GUID

Variable.opt -- Use with "-vf".
Format: Name,GUID,Action,Length,Data

Action:
		R - Read
		W - Write
		E - Erase
		N - Skip

===========================================================
How to run in silent mode.
===========================================================
usage:
	./H2OFFT.sh xxx.bin -all -silent
	In vendor.opt: xxx.bin -all -silent
	
===========================================================
How to define program return code.
===========================================================
	Please reference [ReturnCodeDefinition] and [ReturnErrorCode] sections in platform.ini.
