#! /bin/sh

if [ $# -ne 1 ]; then
    echo "Usage: $0 <config|build|install|upload>"
    exit 1
fi

CROSS_COMPILE=armv5tel-redhat-linux-gnueabi-
MODULE_DIR=/opt2/fedora/arm
ARCH=arm

if [ ! -f Kbuild ]; then
	echo "`pwd` is not directory with kernel sources"
	exit 1
fi

case $1 in
    build)
	make -j4 ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE uImage modules
	kernelrelease=`make kernelrelease`
	pushd arch/arm/boot
	tmp=$(mktemp)
	devio > $tmp 'wl 0xe3a01c08,4' 'wl 0xe381105b,4' # TS-219 (0x085b = 2139)
	cat zImage >> $tmp
	mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n "Linux-${kernelrelease}" -d $tmp uImage-ts219
	popd
	;;
    config)
	make ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE menuconfig
	;;
    install)
	mkdir -p $MODULE_DIR
#	rm -rf $MODULE_DIR/*
	make ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE INSTALL_MOD_PATH=$MODULE_DIR modules_install
	kernelrelease=`make kernelrelease`
	rm $MODULE_DIR/lib/modules/*/{build,source}
	cp -p arch/$ARCH/boot/uImage $MODULE_DIR/uImage-${kernelrelease}
	cp -p arch/$ARCH/boot/uImage-ts219 $MODULE_DIR/uImage-${kernelrelease}-ts219
	cp -p .config $MODULE_DIR/config-${kernelrelease}
	pushd $MODULE_DIR
	tar cjf modules-${kernelrelease}.tar.bz2 lib
	popd
	;;
    upload)
	pushd $MODULE_DIR
	scp -p uImage* modules.tar.bz2 root@10.1.1.186:/tmp
	popd
	;;
esac
