xref: /OK3568_Linux_fs/device/rockchip/common/scripts/check-grow-align.sh (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#!/bin/bash -e
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunSCRIPTS_DIR="${SCRIPTS_DIR:-$(dirname "$(realpath "$0")")}"
4*4882a593SmuzhiyunSDK_DIR="${SDK_DIR:-$SCRIPTS_DIR/../../../..}"
5*4882a593SmuzhiyunCHIP_DIR="${CHIP_DIR:-$SDK_DIR/device/rockchip/.chip}"
6*4882a593SmuzhiyunRK_PARAMETER="${RK_PARAMETER:-parameter.txt}"
7*4882a593Smuzhiyun
8*4882a593Smuzhiyuncd "$SDK_DIR"
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun[ -r "kernel/.config" -a -r "$CHIP_DIR/$RK_PARAMETER" ] || exit 0
11*4882a593Smuzhiyungrep -q "^CMDLINE:.*:grow)$" "$CHIP_DIR/$RK_PARAMETER" || exit 0
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunDM_VERITY=$(grep "^CONFIG_DM_VERITY=y$" kernel/.config || true)
14*4882a593SmuzhiyunGROW_ALIGN_CFG="$(grep "^GROW_ALIGN:" "$CHIP_DIR/$RK_PARAMETER" || true)"
15*4882a593SmuzhiyunGROW_ALIGN_VAL="$(echo $GROW_ALIGN_CFG | cut -d':' -f2- | xargs || true)"
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunif [ "$DM_VERITY" -a "$GROW_ALIGN_VAL" = "1" ]; then
18*4882a593Smuzhiyun	# DM verity + grow align
19*4882a593Smuzhiyun	exit 0
20*4882a593Smuzhiyunfi
21*4882a593Smuzhiyun
22*4882a593Smuzhiyunif [ -z "$DM_VERITY" -a "$GROW_ALIGN_CFG" -a "$GROW_ALIGN_VAL" != "1" ]; then
23*4882a593Smuzhiyun	# !DM verity + !grow align
24*4882a593Smuzhiyun	exit 0
25*4882a593Smuzhiyunfi
26*4882a593Smuzhiyun
27*4882a593Smuzhiyunecho -e "\e[35m"
28*4882a593Smuzhiyunif [ "$DM_VERITY" ]; then
29*4882a593Smuzhiyun	echo "CONFIG_DM_VERITY is enabled in kernel!"
30*4882a593Smuzhiyun	echo "Please set \"GROW_ALIGN: 1\" in $CHIP_DIR/$RK_PARAMETER:"
31*4882a593Smuzhiyunelse
32*4882a593Smuzhiyun	echo "CONFIG_DM_VERITY isn't enabled in kernel!"
33*4882a593Smuzhiyun	echo "Please set \"GROW_ALIGN: 0\" in $CHIP_DIR/$RK_PARAMETER:"
34*4882a593Smuzhiyunfi
35*4882a593Smuzhiyunecho -e "\e[0m"
36*4882a593Smuzhiyunexit 1
37