X-Git-Url: http://plrg.eecs.uci.edu/git/?p=firefly-linux-kernel-4.4.55.git;a=blobdiff_plain;f=pack-kernel.sh;h=2416d7c8821a220cbfbc373ecae04e099c529bd5;hp=a891021b7d75396cec7801b65645478798a3cdf2;hb=d189c1ff7cb4653fdae54faad6c115f7142cb49c;hpb=8e031bb6474bd4674bf1356bb0c93d94b9e3856a diff --git a/pack-kernel.sh b/pack-kernel.sh index a891021b7d75..2416d7c8821a 100755 --- a/pack-kernel.sh +++ b/pack-kernel.sh @@ -1,104 +1,16 @@ #!/bin/bash set -e -# --------------------------------------------------------------------------- -usage() { - echo "usage: $0 [rk2928|rk30|rk3066b]" - echo "example: $0 rk3066b" - exit -} - -while getopts "h" options; do - case $options in - h ) usage;; - esac -done -# --------------------------------------------------------------------------- - -# --------------------------------------------------------------------------- kerndir=$(cd .; pwd) # get absolute path -[ -d $kerndir ] || usage - -arch=${1} -FILES=() -DIRS=() -EXCLUDES=() - -if [ "$arch" == "rk30" ]; then - -EXCLUDES=( -arch/arm/mach-rk30/*rk3066b* -arch/arm/mach-rk30/include/mach/*rk3066b* - -arch/arm/mach-rk29*/*.c -arch/arm/mach-rk29*/*.h -arch/arm/mach-rk29*/*.S -arch/arm/mach-rk29*/Makefile* -arch/arm/mach-rk29*/include -arch/arm/configs/rk29* - -arch/arm/mach-rk30/board-rk30-phone-* -arch/arm/configs/rk30_phone_* - -arch/arm/configs/rk30_phonepad_c8003* -) - -defconfig=rk3066_sdk_defconfig - -elif [ "$arch" == "rk2928" ]; then - -EXCLUDES=( -arch/arm/mach-rk30/*.c -arch/arm/mach-rk30/*.h -arch/arm/mach-rk30/*.S -arch/arm/mach-rk30/*.inc -arch/arm/mach-rk30/Makefile* -arch/arm/mach-rk30/include -arch/arm/configs/rk30* - -drivers/video/rockchip/lcdc/rk30* -drivers/video/rockchip/hdmi/chips/rk30/rk30* -drivers/video/rockchip/hdmi/chips/rk30/hdcp/rk30* - -arch/arm/mach-rk2928/board-rk2928-a720* -arch/arm/configs/rk2928_a720_defconfig - -arch/arm/mach-rk2928/board-rk2928.c -arch/arm/configs/rk2928_defconfig - -arch/arm/mach-rk2928/board-rk2928-phonepad* -arch/arm/configs/rk2928_phonepad_defconfig -) - -defconfig=rk2928_sdk_defconfig - -elif [ "$arch" == "rk3066b" ]; then - -EXCLUDES=( -arch/arm/mach-rk30/clock_data.c -arch/arm/mach-rk30/board-rk30-* -arch/arm/configs/rk30_* -arch/arm/configs/rk3066_* - -arch/arm/mach-rk29*/*.c -arch/arm/mach-rk29*/*.h -arch/arm/mach-rk29*/*.S -arch/arm/mach-rk29*/Makefile* -arch/arm/mach-rk29*/include -arch/arm/configs/rk29* -) - -defconfig=rk3066b_sdk_defconfig - -else - echo "unknown arch" && usage -fi - -[ -f $kerndir/arch/arm/configs/$defconfig ] || usage +[ -d $kerndir ] || exit COMMON_EXCLUDES=( pack-kernel* +defconfig +kernel.img arch/arm/plat-rk/vpu*.c +arch/arm/plat-rk/rk_pm_tests/*.c +arch/arm/plat-rk/rk_pm_tests/*.h drivers/staging/rk29/vivante drivers/staging/rk29/ipp/rk29-ipp.c drivers/*rk28*.c @@ -108,53 +20,28 @@ arch/arm/mach-rk29/*.h arch/arm/mach-rk29/*.S arch/arm/mach-rk29/Makefile* arch/arm/mach-rk29/include +arch/arm/mach-rk30/*rk3168m* arch/arm/mach-rk*/*-fpga* -arch/arm/mach-rk*/*-tb* arch/arm/configs/rk29_* +arch/arm/configs/rk3168m_* arch/arm/configs/*_fpga_* -arch/arm/configs/*_tb_* -) -# --------------------------------------------------------------------------- - -# make .uu -pushd $kerndir >/dev/null - -declare -a files - -for file in ${FILES[@]}; do - [ -e ${file} ] && files=( ${files[@]} ${file} ) || echo No such file: ${file} - [ -f ${file/.[cS]/.uu} ] && rm -f ${file/.[cS]/.uu} -done - -for dir in ${DIRS[@]}; do - [ -d $dir ] && find $dir -type f -name '*.uu' -print0 | xargs -0 rm -f -done - -echo build kernel on $kerndir with $defconfig, arch is $arch -make clean >/dev/null 2>&1 -make $defconfig >/dev/null 2>&1 - -make -j`grep 'processor' /proc/cpuinfo | wc -l` ${files[@]/.[cS]/.o} ${DIRS[@]} +arch/arm/configs/rk30_phone_* +arch/arm/configs/*_openwrt_* -for file in ${FILES[@]}; do - filename=${file##*/} - base=${filename%%.*} - dir=${file%/*} - [ -f $dir/$base.o ] && echo UU $dir/$base.uu && uuencode $dir/$base.o $base.o > $dir/$base.uu -done +arch/arm/mach-rk30/board-rk30-phone-* +arch/arm/mach-rk30/board-rk30-phonepad.c +arch/arm/mach-rk30/board-rk30-phonepad-key.c +arch/arm/configs/rk30_phonepad* -for d in ${DIRS[@]}; do - for file in `find $d -type f -name '*.o'`; do - filename=${file##*/} - base=${filename%%.*} - dir=${file%/*} - echo UU $dir/$base.uu && uuencode $dir/$base.o $base.o > $dir/$base.uu - done -done +arch/arm/mach-rk2928/board-rk2928-a720* +arch/arm/configs/rk2928_a720_defconfig -make distclean >/dev/null 2>&1 +arch/arm/mach-rk30/*rk3028* +arch/arm/configs/rk3028_* +) -popd >/dev/null +# --------------------------------------------------------------------------- +make -j`grep 'processor' /proc/cpuinfo | wc -l` distclean >/dev/null 2>&1 # fix local version echo "+" > $kerndir/.scmversion @@ -164,18 +51,11 @@ pushd $kerndir/../ >/dev/null package=$(basename $kerndir).tar ex=$package.ex > $ex -for file in ${FILES[@]}; do - echo "$file" >> $ex -done -for file in ${EXCLUDES[@]}; do - echo "$file" >> $ex -done for file in ${COMMON_EXCLUDES[@]}; do echo "$file" >> $ex done echo TAR $(pwd)/$package tar cf $package --numeric-owner --exclude-from $ex --exclude=.git $(basename $kerndir) -#tar rf $package --numeric-owner --exclude=.git prebuilt/linux-x86/toolchain/arm-eabi-4.4.0 echo GZIP $(pwd)/$package.gz gzip -9 -c $package > $package.gz rm $ex