diff --git a/scripts/gki/envsetup.sh b/scripts/gki/envsetup.sh index 6770d665e8df..dfbcc311eef5 100755 --- a/scripts/gki/envsetup.sh +++ b/scripts/gki/envsetup.sh @@ -20,12 +20,15 @@ CONFIGS_DIR=${KERN_SRC}/arch/${ARCH}/configs/vendor PLATFORM_NAME=$1 -BASE_DEFCONFIG=${KERN_SRC}/arch/${ARCH}/configs/gki_defconfig +BASE_DEFCONFIG=${KERN_SRC}/arch/${ARCH}/configs/${2:-gki_defconfig} # Fragements that are available for the platform QCOM_GKI_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_GKI.config QCOM_QGKI_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_QGKI.config QCOM_DEBUG_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_debug.config +QCOM_GENERIC_PERF_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}.config +QCOM_GENERIC_DEBUG_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}-debug.config + export ARCH CROSS_COMPILE REAL_CC HOSTCC HOSTLD HOSTAR KERN_SRC KERN_OUT \ CONFIGS_DIR BASE_DEFCONFIG QCOM_GKI_FRAG QCOM_QGKI_FRAG QCOM_DEBUG_FRAG diff --git a/scripts/gki/fragment_menuconfig.sh b/scripts/gki/fragment_menuconfig.sh index 2bfd9e9d64fe..532ed226b0de 100755 --- a/scripts/gki/fragment_menuconfig.sh +++ b/scripts/gki/fragment_menuconfig.sh @@ -18,12 +18,21 @@ fi SCRIPTS_ROOT=$(readlink -f $(dirname $0)/) -PLATFORM_NAME=`echo $1 | sed -r "s/(-gki_defconfig|-qgki_defconfig|-qgki-debug_defconfig)$//"` +TEMP_DEF_NAME=`echo $1 | sed -r "s/_defconfig$//"` +DEF_VARIANT=`echo ${TEMP_DEF_NAME} | sed -r "s/.*-//"` +PLATFORM_NAME=`echo ${TEMP_DEF_NAME} | sed -r "s/-.*$//"` + PLATFORM_NAME=`echo $PLATFORM_NAME | sed "s/vendor\///g"` +REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"` + # We should be in the kernel root after the envsetup -source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME +if [[ "${REQUIRED_DEFCONFIG}" != *"gki"* ]]; then + source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME generic_defconfig +else + source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME +fi KERN_MAKE_ARGS="ARCH=$ARCH \ CROSS_COMPILE=$CROSS_COMPILE \ @@ -38,12 +47,12 @@ KERN_MAKE_ARGS="ARCH=$ARCH \ # Allyes fragment temporarily created on GKI config fragment QCOM_GKI_ALLYES_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_ALLYES_GKI.config +if [[ "${REQUIRED_DEFCONFIG}" == *"gki"* ]]; then if [ ! -f "${QCOM_GKI_FRAG}" ]; then echo "Error: Invalid input" usage fi - -REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"` +fi FINAL_DEFCONFIG_BLEND="" @@ -58,7 +67,13 @@ case "$REQUIRED_DEFCONFIG" in ;; ${PLATFORM_NAME}-gki_defconfig ) FINAL_DEFCONFIG_BLEND+=" $QCOM_GKI_FRAG " + ;; + ${PLATFORM_NAME}-debug_defconfig ) + FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_DEBUG_FRAG " ;& + ${PLATFORM_NAME}_defconfig ) + FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_PERF_FRAG " + ;; esac FINAL_DEFCONFIG_BLEND+=${BASE_DEFCONFIG} @@ -78,7 +93,8 @@ mv .config .config_base # Strip off the complete file paths and retail only the values beginning with vendor/ MENUCONFIG_BLEND="" for config_file in $FINAL_DEFCONFIG_BLEND; do - if [[ $config_file == *"gki_defconfig" ]]; then + if [ $config_file == *"gki_defconfig" ] || + [ $config_file == "${BASE_DEFCONFIG}" ]; then MENUCONFIG_BLEND+=" "`basename $config_file`" " else MENUCONFIG_BLEND+=" vendor/"`basename $config_file`" " diff --git a/scripts/gki/generate_defconfig.sh b/scripts/gki/generate_defconfig.sh index b6ab442fbe07..8038febc55b6 100755 --- a/scripts/gki/generate_defconfig.sh +++ b/scripts/gki/generate_defconfig.sh @@ -18,12 +18,20 @@ fi SCRIPTS_ROOT=$(readlink -f $(dirname $0)/) -PLATFORM_NAME=`echo $1 | sed -r "s/(-gki_defconfig|-qgki_defconfig|-qgki-debug_defconfig)$//"` +TEMP_DEF_NAME=`echo $1 | sed -r "s/_defconfig$//"` +DEF_VARIANT=`echo ${TEMP_DEF_NAME} | sed -r "s/.*-//"` +PLATFORM_NAME=`echo ${TEMP_DEF_NAME} | sed -r "s/-.*$//"` PLATFORM_NAME=`echo $PLATFORM_NAME | sed "s/vendor\///g"` +REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"` + # We should be in the kernel root after the envsetup -source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME +if [[ "${REQUIRED_DEFCONFIG}" != *"gki"* ]]; then + source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME generic_defconfig +else + source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME +fi KERN_MAKE_ARGS="ARCH=$ARCH \ CROSS_COMPILE=$CROSS_COMPILE \ @@ -38,12 +46,12 @@ KERN_MAKE_ARGS="ARCH=$ARCH \ # Allyes fragment temporarily created on GKI config fragment QCOM_GKI_ALLYES_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_ALLYES_GKI.config +if [[ "${REQUIRED_DEFCONFIG}" == *"gki"* ]]; then if [ ! -f "${QCOM_GKI_FRAG}" ]; then echo "Error: Invalid input" usage fi - -REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"` +fi FINAL_DEFCONFIG_BLEND="" @@ -58,7 +66,13 @@ case "$REQUIRED_DEFCONFIG" in ;; ${PLATFORM_NAME}-gki_defconfig ) FINAL_DEFCONFIG_BLEND+=" $QCOM_GKI_FRAG " + ;; + ${PLATFORM_NAME}-debug_defconfig ) + FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_DEBUG_FRAG " ;& + ${PLATFORM_NAME}_defconfig ) + FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_PERF_FRAG " + ;; esac FINAL_DEFCONFIG_BLEND+=${BASE_DEFCONFIG}