android_device_xiaomi_sm835.../rootdir/bin/vendor_modprobe.sh
2021-09-18 03:11:01 +03:00

47 lines
1.4 KiB
Bash
Executable File

#! /vendor/bin/sh
#=============================================================================
# Copyright (c) 2019-2020 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
#=============================================================================
#default to /vendor/lib/modules
MODULES_PATH="/vendor/lib/modules/"
GKI_MOD_PATH="/vendor/lib/modules/5.4-gki"
MODPROBE="/vendor/bin/modprobe"
MODULES=`${MODPROBE} -d ${MODULES_PATH} -l`
# Find the first non-blacklisted module and try
# inserting it. If insertion fails the module is not
# compatible with the current kernel. Change the modules
# directory to gki.
for MODULE in ${MODULES}; do
cat ${MODULES_PATH}/modules.blocklist | grep $MODULE
if [ $? -ne 0 ]; then
break
fi
done
${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE}
if [ $? -ne 0 ];then
MODULES_PATH=$GKI_MOD_PATH
MODULES=`${MODPROBE} -d ${MODULES_PATH} -l`
fi
# Iterate over module list and modprobe them in background.
for MODULE in ${MODULES}; do
if [ ${MODULE} == "qca_cld3_wlan" ]; then
echo "Xiaomi Wifi:" ${MODULE}
elif [ ${MODULE} == "cnss2" ]; then
echo "Xiaomi Wifi:" ${MODULE}
elif [ ${MODULE} == "fts_touch_spi" ]; then
echo "xiaomi fts:" ${MODULE}
else
${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE} &
fi
done
# Wait until all the modprobes are finished
wait