function update_debug_config() {
    ${KERNEL_DIR}/scripts/config --file ${OUT_DIR}/.config \
         -e CONFIG_LOCKUP_DETECTOR \
         -e CONFIG_HARDLOCKUP_DETECTOR \
         -e CONFIG_HARDLOCKUP_DETECTOR_OTHER_CPU \
         -e CONFIG_BOOTPARAM_HARDLOCKUP_PANIC \
         -e CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC \
         -e CONFIG_HUNG_TASK_PANIC \
         -e CONFIG_WQ_WATCHDOG \
         -e CONFIG_RCU_STALL_WATCHDOG_BITE \
         -e CONFIG_PANIC_ON_RT_THROTTLING \
         -e CONFIG_RCU_EQS_DEBUG \
         -d CONFIG_KERNEL_LZ4
    (cd ${OUT_DIR} && \
     make O=${OUT_DIR} $archsubarch CROSS_COMPILE=${CROSS_COMPILE} olddefconfig)
}

ARCH=arm64
BRANCH=android-msm-wahoo-4.4
CROSS_COMPILE=aarch64-linux-android-
CROSS_COMPILE_ARM32=arm-linux-androideabi-
DEFCONFIG=wahoo_defconfig
EXTRA_CMDS=''
KERNEL_DIR=private/msm-google
POST_DEFCONFIG_CMDS="update_debug_config"
LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN=prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin
LINUX_GCC_CROSS_COMPILE_ARM32_PREBUILTS_BIN=prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin
LZ4_PREBUILTS_BIN=prebuilts-master/misc/linux-x86/lz4
DTC_PREBUILTS_BIN=prebuilts-master/misc/linux-x86/dtc
LIBUFDT_PREBUILTS_BIN=prebuilts-master/misc/linux-x86/libufdt
FILES="
arch/arm64/boot/dtbo.img
arch/arm64/boot/Image.gz-dtb
vmlinux
System.map
"
IN_KERNEL_MODULES=1
