#!/bin/sh
#
#  Script file to integrate all binary files into a gateway image. The 
#  generated image could be put into flash memory from the beginning.
#
# ----------------------------------------------------------------------
case "$1" in
ap)
	BOOT_IMG=../../image/boot.8m
	LINUX_IMG=../../image/linux-ap.bin
	ROOT_IMG=../../image/root-ap.bin
	CONFIG=../../config/config-ap-96c.txt
	WEB_FILE=web-files-ap
	OUT_FILE=rtl8196c-ap-8m.bin
	CVCFG=./cvcfg-ap
	OPTION=ap
	NO_HW=	
        ;;
ap-no)	
	BOOT_IMG=
	LINUX_IMG=../../image/linux-ap.bin
	ROOT_IMG=../../image/root-ap.bin
	CONFIG=../../config/config-ap-96c.txt
	WEB_FILE=web-files-ap
	OUT_FILE=rtl8196c-ap-8m.bin
	CVCFG=./cvcfg-ap
	OPTION=ap
	NO_HW=-no_hw
        ;;          
gw)
	BOOT_IMG=../../image/boot.16m
	LINUX_IMG=../../image/linux-gw.bin
	ROOT_IMG=../../image/root-gw.bin
	CONFIG=../../config/config-gw-96c-w142c.txt
	WEB_FILE=web-files-gw
	OUT_FILE=rtl8196c-gw-w142c.bin
	CVCFG=./cvcfg-gw
	OPTION=gw
	NO_HW=	
        ;;
gw-no)	
	BOOT_IMG=
	LINUX_IMG=../../image/linux-gw.bin
	ROOT_IMG=../../image/root-gw.bin
	CONFIG=../../config/config-gw-96c-w142c.txt
	WEB_FILE=web-files-gw
	OUT_FILE=rtl8196c-gw.bin
	CVCFG=./cvcfg-gw
	OPTION=gw
	NO_HW=-no_hw
        ;;   
8m)
	BOOT_IMG=../../image/boot.8m
	LINUX_IMG=../../image/linux-8m.bin
	ROOT_IMG=../../image/root-8m.bin
	CONFIG=../../config/config-gw-96c.txt
	WEB_FILE=web-files-gw
	OUT_FILE=rtl8196c-gw-8m.bin
	CVCFG=./cvcfg-gw
	OPTION=gw
	NO_HW=	
        ;;
8m-no)	
	BOOT_IMG=
	LINUX_IMG=../../image/linux-8m.bin
	ROOT_IMG=../../image/root-8m.bin
	CONFIG=../../config/config-gw-96c.txt
	WEB_FILE=web-files-gw
	OUT_FILE=rtl8196c-gw-8m.bin
	CVCFG=./cvcfg-gw
	OPTION=gw
	NO_HW=-no_hw
        ;;  
pocket)
	BOOT_IMG=../../image/boot.16m
	LINUX_IMG=../../image/linux-pocket.bin
	ROOT_IMG=../../image/root-pocket.bin
	CONFIG=../../config/config-gw-96c.txt
	WEB_FILE=web-files-gw
	OUT_FILE=rtl8196c-gw-pocket.bin
	CVCFG=./cvcfg-gw
	OPTION=gw
	NO_HW=	
        ;;
pocket-no)	
	BOOT_IMG=
	LINUX_IMG=../../image/linux-pocket.bin
	ROOT_IMG=../../image/root-pocket.bin
	CONFIG=../../config/config-gw-96c.txt
	WEB_FILE=web-files-gw
	OUT_FILE=rtl8196c-gw-pocket.bin
	CVCFG=./cvcfg-gw
	OPTION=gw
	NO_HW=-no_hw
        ;;                          
*)
	echo $0 'option. where "option" could be:'	
	echo 		'   "gw"		(Gateway image)'	
	echo    '   "gw-no"	(Gateway image without boot code and hw-setting)'
	echo 		'   "8m"		(Gateway 8m image)'	
	echo    '   "8m-no"	(Gateway 8m image without boot code and hw-setting)'
	echo 		'   "ap"		(AP image)'	
	echo    '   "ap-no"	(AP image without boot code and hw-setting)'
	echo 		'   "pocket"		(Pocket Gateway image)'	
	echo    '   "pocket-no"	(Pocket Gateway image without boot code and hw-setting)'
        exit
        ;;
esac
if [ "$1" != "8m" -a "$1" != "8m-no" -a "$1" != "ap" -a "$1" != "ap-no" ];then
# Convert configuration data to binary
$CVCFG -r $NO_HW $CONFIG config.bin 

# Compress web pages into binary
./compweb $OPTION $WEB_FILE webpages.bin

# merge 3in1 binary files
./mgbin -c -o rtl8196c-gw-3in1-web-fw.bin webpages.bin $LINUX_IMG $ROOT_IMG

# Merge all binary files
./mgbin -o $OUT_FILE $BOOT_IMG config.bin webpages.bin $LINUX_IMG $ROOT_IMG

else

# Convert configuration data to binary
$CVCFG -r $NO_HW $CONFIG config.bin 

# Merge all binary files
./mgbin -o $OUT_FILE $BOOT_IMG config.bin $LINUX_IMG $ROOT_IMG

fi
