android_device_motorola_rhodep/recovery/bin/load_touch.sh
Marc Bourgoin 72a7ab0b82 xpeng: Convert tree from berlna
The partition reserved sizes were taking from stock ROM

IE, blockdev --getsize64 /dev/block/mapper/system_a

Also add TARGET_IS_VAB cflag as ro.virtual_ab.enabled is true on stock
so that our commonized tree can enable VAB-specific changes.

Change-Id: I922f61e5a0380d16eba5967f6c77346437290eb6
2023-04-17 22:40:23 -06:00

60 lines
1.2 KiB
Bash

#!/system/bin/sh
firmware_path=/vendor/firmware
touch_class_path=/sys/class/touchscreen
touch_path=
firmware_file=
wait_for_poweron()
{
local wait_nomore
local readiness
local count
echo "wait until driver reports <ready to flash>..."
wait_nomore=60
count=0
while true; do
readiness=$(cat $touch_path/poweron)
if [ "$readiness" == "1" ]; then
echo "ready to flash!!!"
break;
fi
count=$((count+1))
[ $count -eq $wait_nomore ] && break
sleep 1
echo "not ready; keep waiting..."
done
if [ $count -eq $wait_nomore ]; then
return 1
fi
return 0
}
load_touch()
{
panel_supplier=""
panel_supplier=$(cat /sys/class/touchscreen/*/panel_supplier)
echo "panel supplier vendor is: [$panel_supplier]"
cd $firmware_path
case $panel_supplier in
tianma)
firmware_file="novatek_ts-NT36675-21101302-6044-xpeng.bin"
;;
esac
echo "Firmware file for upgrade $firmware_file"
touch_path=/sys/class/touchscreen/$(ls /sys/class/touchscreen/)
wait_for_poweron
wait
echo "forcing firmware upgrade"
echo 1 > $touch_path/forcereflash
wait
echo "sending reflash command"
echo $firmware_file > $touch_path/doreflash
sleep 1.5
echo "Resetting Touch"
echo 1 > $touch_path/reset
}
load_touch
exit 0