make.sh: add debug-N sub commands

this command is mainly for debugging.

Usage:
	./make.sh debug-N

Example:
	./make.sh debug    ------ for debug help
	./make.sh debug-1  ------ enable case1 debug
	......

Change-Id: I1a0b063863cbdfc2be6bcc33da9c08f6d7536b3e
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
This commit is contained in:
Joseph Chen 2018-09-30 12:55:05 +08:00
parent 5af94f7887
commit 1b6c85a0df
1 changed files with 56 additions and 2 deletions

58
make.sh
View File

@ -109,7 +109,7 @@ prepare()
else
case $BOARD in
# Parse from exit .config
''|elf*|loader*|trust|uboot|map|sym)
''|elf*|loader*|debug*|trust|uboot|map|sym)
count=`find -name .config | wc -l`
dir=`find -name .config`
# Good, find only one .config
@ -149,7 +149,7 @@ prepare()
;;
#Subcmd
''|elf*|loader*|trust|uboot|map|sym)
''|elf*|loader*|debug*|trust|uboot|map|sym)
;;
*)
@ -235,6 +235,60 @@ sub_commands()
fi
;;
debug)
if [ "${cmd}" = 'debug' -a "${opt}" = 'debug' ]; then
echo
echo "The commands will modify .config and files, and can't auto restore changes!"
echo "debug-N, the N:"
echo " 1. lib/initcall.c debug() -> printf()"
echo " 2. common/board_r.c and common/board_f.c debug() -> printf()"
echo " 3. global #define DEBUG"
echo " 4. enable CONFIG_ROCKCHIP_DEBUGGER"
echo " 5. enable CONFIG_ROCKCHIP_CRC"
echo " 6. enable CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP"
echo " 7. enable CONFIG_ROCKCHIP_CRASH_DUMP"
echo " 8. set CONFIG_BOOTDELAY=5"
echo
echo "Enabled: "
grep '^CONFIG_ROCKCHIP_DEBUGGER=y' ${OUTDIR}/.config > /dev/null \
&& echo " CONFIG_ROCKCHIP_DEBUGGER"
grep '^CONFIG_ROCKCHIP_CRC=y' ${OUTDIR}/.config > /dev/null \
&& echo " CONFIG_ROCKCHIP_CRC"
grep '^CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP=y' ${OUTDIR}/.config > /dev/null \
&& echo " CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP"
grep '^CONFIG_ROCKCHIP_CRASH_DUMP=y' ${OUTDIR}/.config > /dev/null \
&& echo " CONFIG_ROCKCHIP_CRASH_DUMP"
elif [ "${opt}" = '1' ]; then
sed -i 's/\<debug\>/printf/g' lib/initcall.c
echo "DEBUG [1]: lib/initcall.c debug() -> printf()"
elif [ "${opt}" = '2' ]; then
sed -i 's/\<debug\>/printf/g' ./common/board_f.c
sed -i 's/\<debug\>/printf/g' ./common/board_r.c
echo "DEBUG [2]: common/board_r.c and common/board_f.c debug() -> printf()"
elif [ "${opt}" = '3' ]; then
sed -i '$i \#define DEBUG\' include/configs/rockchip-common.h
echo "DEBUG [3]: global #define DEBUG"
elif [ "${opt}" = '4' ]; then
sed -i 's/\# CONFIG_ROCKCHIP_DEBUGGER is not set/CONFIG_ROCKCHIP_DEBUGGER=y/g' ${OUTDIR}/.config
echo "DEBUG [4]: CONFIG_ROCKCHIP_DEBUGGER is enabled"
elif [ "${opt}" = '5' ]; then
sed -i 's/\# CONFIG_ROCKCHIP_CRC is not set/CONFIG_ROCKCHIP_CRC=y/g' ${OUTDIR}/.config
echo "DEBUG [5]: CONFIG_ROCKCHIP_CRC is enabled"
elif [ "${opt}" = '6' ]; then
sed -i 's/\# CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP is not set/CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP=y/g' ${OUTDIR}/.config
echo "DEBUG [6]: CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP is enabled"
elif [ "${opt}" = '7' ]; then
sed -i 's/\# CONFIG_ROCKCHIP_CRASH_DUMP is not set/CONFIG_ROCKCHIP_CRASH_DUMP=y/g' ${OUTDIR}/.config
echo "DEBUG [7]: CONFIG_ROCKCHIP_CRASH_DUMP is enabled"
elif [ "${opt}" = '8' ]; then
sed -i 's/^CONFIG_BOOTDELAY=0/CONFIG_BOOTDELAY=5/g' ${OUTDIR}/.config
echo "DEBUG [8]: CONFIG_BOOTDELAY is 5s"
fi
echo
exit 0
;;
map)
cat ${OUTDIR}/u-boot.map | less
exit 0