xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/build/linux/envsetup.sh (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#!/bin/bash
2*4882a593Smuzhiyun
3*4882a593Smuzhiyunchoices=(rv1106 rk3588 rk356x rv1109 rk3562)
4*4882a593Smuzhiyun
5*4882a593Smuzhiyunfunction usage() {
6*4882a593Smuzhiyun	echo "Usage: source envsetup.sh"
7*4882a593Smuzhiyun}
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunfunction print_soc_menu() {
10*4882a593Smuzhiyun  echo
11*4882a593Smuzhiyun  echo "Select a soc to build rkaiq for: "
12*4882a593Smuzhiyun  echo
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun  local i=1
15*4882a593Smuzhiyun  local choice
16*4882a593Smuzhiyun  for choice in ${choices[@]}
17*4882a593Smuzhiyun  do
18*4882a593Smuzhiyun    echo "     $i. $choice"
19*4882a593Smuzhiyun    i=$(($i+1))
20*4882a593Smuzhiyun  done
21*4882a593Smuzhiyun}
22*4882a593Smuzhiyun
23*4882a593Smuzhiyunfunction set_isp_hw() {
24*4882a593Smuzhiyun	unset ISP_HW_VERSION
25*4882a593Smuzhiyun	export ISP_HW_VERSION=-DISP_HW_V${1}
26*4882a593Smuzhiyun	env | grep -q ISP_HW_VERSION && echo "Success !" || echo "Failed !"
27*4882a593Smuzhiyun}
28*4882a593Smuzhiyun
29*4882a593Smuzhiyunfunction lunch() {
30*4882a593Smuzhiyun  local answer
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun  if [ "$1" ]; then
33*4882a593Smuzhiyun    answer=$1
34*4882a593Smuzhiyun  else
35*4882a593Smuzhiyun    print_soc_menu
36*4882a593Smuzhiyun    echo -n "Which would you like? [rv1106] "
37*4882a593Smuzhiyun    read answer
38*4882a593Smuzhiyun  fi
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun  local selection
41*4882a593Smuzhiyun  if [ -z "$answer" ]
42*4882a593Smuzhiyun  then
43*4882a593Smuzhiyun    selection="rv1106"
44*4882a593Smuzhiyun	elif (echo -n $answer | grep -q -e "^[0-9][0-9]*$")
45*4882a593Smuzhiyun	then
46*4882a593Smuzhiyun		if [ $answer -le ${#choices[@]} ]
47*4882a593Smuzhiyun		then
48*4882a593Smuzhiyun			# array in zsh starts from 1 instead of 0.
49*4882a593Smuzhiyun			if [ -n "$ZSH_VERSION" ]
50*4882a593Smuzhiyun			then
51*4882a593Smuzhiyun				selection=${choices[$(($answer))]}
52*4882a593Smuzhiyun			else
53*4882a593Smuzhiyun				selection=${choices[$(($answer-1))]}
54*4882a593Smuzhiyun			fi
55*4882a593Smuzhiyun		fi
56*4882a593Smuzhiyun  else
57*4882a593Smuzhiyun    selection=$answer
58*4882a593Smuzhiyun  fi
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun  case $selection in
61*4882a593Smuzhiyun    rk3562)
62*4882a593Smuzhiyun      set_isp_hw 32_LITE
63*4882a593Smuzhiyun      ;;
64*4882a593Smuzhiyun    rv1106)
65*4882a593Smuzhiyun      set_isp_hw 32
66*4882a593Smuzhiyun      ;;
67*4882a593Smuzhiyun    rk3588)
68*4882a593Smuzhiyun      set_isp_hw 30
69*4882a593Smuzhiyun      ;;
70*4882a593Smuzhiyun    rk356x)
71*4882a593Smuzhiyun      set_isp_hw 21
72*4882a593Smuzhiyun      ;;
73*4882a593Smuzhiyun    rv1109)
74*4882a593Smuzhiyun      set_isp_hw 20
75*4882a593Smuzhiyun      ;;
76*4882a593Smuzhiyun    *)
77*4882a593Smuzhiyun      echo "Not supported SoC yet!"
78*4882a593Smuzhiyun      usage
79*4882a593Smuzhiyun      ;;
80*4882a593Smuzhiyun  esac
81*4882a593Smuzhiyun
82*4882a593Smuzhiyun  unset RKAIQ_TARGET_SOC
83*4882a593Smuzhiyun  export RKAIQ_TARGET_SOC=$selection
84*4882a593Smuzhiyun}
85*4882a593Smuzhiyun
86*4882a593Smuzhiyunlunch $1
87