rk2928: update process of pll power up when resume from deep sleep, solve the problem...
[firefly-linux-kernel-4.4.55.git] / pack-kernel.sh
index 9efa97fd26285b46d9f572d4c48d04bab2660c3f..c56a82b94c732a48309aa62702d7b147888ed23a 100755 (executable)
 #!/bin/bash
 set -e
 
-FILES=(
-# arch
-arch/arm/mach-rk29/clock.c
-arch/arm/mach-rk29/ddr.c
-arch/arm/mach-rk29/vpu.c
-arch/arm/mach-rk29/vpu_mem.c
+# ---------------------------------------------------------------------------
+usage() {
+       echo "usage: $0 [rk2928|rk30|rk3066b]"
+       echo "example: $0 rk3066b"
+       exit
+}
 
-drivers/staging/rk29/ipp/rk29-ipp.c
-)
+while getopts "h" options; do
+  case $options in
+    h ) usage;;
+  esac
+done
+# ---------------------------------------------------------------------------
 
-DIRS=(
-drivers/staging/rk29/vivante/
+# ---------------------------------------------------------------------------
+kerndir=$(cd .; pwd)   # get absolute path
+[ -d $kerndir ] || usage
+
+arch=${1}
+FILES=()
+DIRS=()
+EXCLUDES=()
+
+if [ "$arch" == "rk30" ]; then
+
+FILES=(
+arch/arm/mach-rk30/clock_data.c
+arch/arm/mach-rk30/ddr.c
 )
 
 EXCLUDES=(
-arch/arm/mach-rk2818/*.c
-arch/arm/mach-rk2818/*.h
-arch/arm/mach-rk2818/include/mach
-arch/arm/configs/rk28*
-drivers/*rk28*.c
-sound/*rk28*.c
-sound/*rk28*.h
-include/*rk28*
+arch/arm/mach-rk30/*rk3066b*
+arch/arm/mach-rk30/include/mach/*rk3066b*
 
-drivers/staging/rk29/vivante/*.c
-drivers/staging/rk29/vivante/*.h
+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/configs/rk29_sdk_yaffs2_defconfig
+arch/arm/mach-rk30/board-rk30-phone-*
+arch/arm/configs/rk30_phone_*
 
-arch/arm/mach-rk29/board-malata.c
-arch/arm/mach-rk29/board-rk29malata-key.c
-arch/arm/configs/rk29_malata_defconfig
+arch/arm/configs/rk30_phonepad_c8003*
+)
 
-arch/arm/mach-rk29/board-rk29-winaccord.c
-arch/arm/configs/rk29_Winaccord_defconfig
+defconfig=rk3066_sdk_defconfig
 
-arch/arm/mach-rk29/board-rk29-a22*
-arch/arm/configs/rk29_a22_defconfig
+elif [ "$arch" == "rk2928" ]; then
 
-arch/arm/mach-rk29/board-rk29-fih*
-arch/arm/configs/rk29_FIH_defconfig
+FILES=(
+arch/arm/mach-rk2928/clock_data.c
+arch/arm/mach-rk2928/ddr.c
+)
 
-arch/arm/mach-rk29/board-rk29-newton*
-arch/arm/configs/rk29_newton_defconfig
+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
 )
 
-# ---------------------------------------------------------------------------
-usage() {
-       echo usage: $0 kerneldir defconfig
-       echo example: $0 . rk29_sdk_defconfig
-       exit
-}
+defconfig=rk2928_sdk_defconfig
 
-while getopts "h" options; do
-  case $options in
-    h ) usage;;
-  esac
-done
-# ---------------------------------------------------------------------------
+elif [ "$arch" == "rk3066b" ]; then
 
-# ---------------------------------------------------------------------------
-kerndir=${1-.}
-kerndir=$(cd $kerndir; pwd)    # get absolute path
-[ -d $kerndir ] || usage
+FILES=(
+arch/arm/mach-rk30/clock_data-rk3066b.c
+arch/arm/mach-rk30/ddr.c
+)
+
+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
 
-defconfig=${2-rk29_sdk_defconfig}
-if [ "$defconfig" = ".config" ]; then
-       [ -f $kerndir/.config ] || usage
 else
-       [ -f $kerndir/arch/arm/configs/$defconfig ] || usage
+       echo "unknown arch" && usage
 fi
+
+[ -f $kerndir/arch/arm/configs/$defconfig ] || usage
+
+COMMON_EXCLUDES=(
+pack-kernel*
+arch/arm/plat-rk/vpu*.c
+drivers/staging/rk29/vivante
+drivers/staging/rk29/ipp/rk29-ipp.c
+drivers/*rk28*.c
+include/*rk28*
+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/mach-rk*/*-fpga*
+arch/arm/mach-rk*/*-tb*
+arch/arm/configs/rk29_*
+arch/arm/configs/*_fpga_*
+arch/arm/configs/*_tb_*
+)
 # ---------------------------------------------------------------------------
 
 # make .uu
@@ -84,13 +141,14 @@ for file in ${FILES[@]}; do
        [ -f ${file/.[cS]/.uu} ] && rm -f ${file/.[cS]/.uu}
 done
 
-for d in ${DIRS[@]}; do
-       [ -d $d ] && find $d -type f -name '*.uu' -print0 | xargs -0 rm -f
+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
+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[@]}
 
 for file in ${FILES[@]}; do
@@ -113,6 +171,9 @@ make distclean >/dev/null 2>&1
 
 popd >/dev/null
 
+# fix local version
+echo "+" > $kerndir/.scmversion
+
 # tar kernel
 pushd $kerndir/../ >/dev/null
 package=$(basename $kerndir).tar
@@ -124,14 +185,17 @@ 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 --exclude=`basename $0` $(basename $kerndir)
-tar rf $package --numeric-owner --exclude=.git toolchain/arm-eabi-4.4.0
+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
 popd >/dev/null
 
-echo done
-
+rm -f $kerndir/.scmversion
 
+echo done