blob: 280656ebc9089060a3c275d497ee179a27b71d16 [file] [log] [blame]
b.liud440f9f2025-04-18 10:44:31 +08001#!/bin/sh
2
3#MBTK_ADB=`getprop persist.mbtk.adb 2> /dev/null`
4project=`cat /etc/mbtk_project`
5
6mbtk_start() {
7 echo "start : $1" > /dev/kmsg
8
b.liu35419042025-06-24 15:25:00 +08009 DEBUG_ENABLE=`getprop persist.mbtk.appdump 2> /dev/null`
10 if [ "$DEBUG_ENABLE" == "1" ];then
11 ulimit -c unlimited
12 fi
13
b.liud440f9f2025-04-18 10:44:31 +080014 if [ -e $1 ];then
15 # stdout and stderr > /dev/null
16 #$@ &> /dev/null &
17 (while ! $@ &> /dev/null; do echo "Restarting $@ ..."; done) &
18 fi
19}
20
21start_service() {
22 echo "--mbtk eary boot start--" > /dev/kmsg
23# mbtk_start /bin/mbtk_test
24# mbtk_start /bin/mbtk_test "eary" 123
25 # ɾ³ýÉÏ´Îgnss ÐÇÀú
26 if [ -f /etc/mbtk/rtm.bin ]
27 then
28 echo "--mbtk eary boot rtm.bin " > /dev/kmsg
29 rm /etc/mbtk/rtm.bin
30 fi
31
32 mbtk_start /bin/mbtk_rild
hong.liu21a36922025-06-24 06:56:50 -070033 uci set persist.mbtk.sdk__state='-1'
b.liud440f9f2025-04-18 10:44:31 +080034 if [ -f /bin/mbtk_sdk_ready ]
35 then
36 mbtk_start /bin/mbtk_sdk_ready
37 echo "--mbtk platform mbtk_sdk_ready start--" > /dev/kmsg
38 fi
hong.liu1ad74492025-06-04 15:14:23 +080039
b.liud440f9f2025-04-18 10:44:31 +080040 if [ "$project" == "T108_2" ];then
b.liu92507872025-04-18 14:29:29 +080041 i2cset -y -f 2 0x31 0x15 0x00
b.liub17525e2025-05-14 17:22:29 +080042 [ -e /bin/mbtk_gnssd ] && mbtk_start /bin/mbtk_gnssd 8122 /dev/ttyS3 0
b.liud440f9f2025-04-18 10:44:31 +080043 elif [ "$project" == "L508_X6" ];then
b.liub17525e2025-05-14 17:22:29 +080044 [ -e /bin/mbtk_gnssd ] && mbtk_start /bin/mbtk_gnssd 5311 /dev/ttyS3 255
b.liud440f9f2025-04-18 10:44:31 +080045 else
46 # Only auto open gnss but not open any port.
b.liub17525e2025-05-14 17:22:29 +080047 [ -e /bin/mbtk_gnssd ] && mbtk_start /bin/mbtk_gnssd 5311 /dev/ttyS2 255
b.liud440f9f2025-04-18 10:44:31 +080048 fi
49
50 if [ "$project" == "L508_X6" -o "$project" == "L509" ]
51 then
52 #echo "$project"
53 i2cset -y -f 2 0x32 0x0d 0x00
54 fi
b.liud440f9f2025-04-18 10:44:31 +080055 echo "--mbtk eary boot end--" > /dev/kmsg
56}
57
58sleep_init()
59{
60 if [ -e /sys/devices/soc.0/d4000000.apb/mbtk-dev-op/gps_power ]
61 then
62 echo off > /sys/devices/soc.0/d4000000.apb/mbtk-dev-op/gps_power
63 else
64 echo "/sys/devices/soc.0/d4000000.apb/mbtk-dev-op/gps_power can not write." > /dev/kmsg
65 fi
66
67 if [ -e /sys/kernel/debug/spk_shdn_gpio ]
68 then
69 echo 0 > /sys/kernel/debug/spk_shdn_gpio
70 else
71 echo "/sys/kernel/debug/spk_shdn_gpio can not write." > /dev/kmsg
72 fi
73
74 if [ -e /sys/devices/asr-rfkill.0/pwr_ctrl ]
75 then
76 echo 1 > /sys/devices/asr-rfkill.0/pwr_ctrl
77 sleep 1
78 echo 0 > /sys/devices/asr-rfkill.0/pwr_ctrl
79 else
80 echo "/sys/devices/asr-rfkill.0/pwr_ctrl can not write." > /dev/kmsg
81 fi
82
83 case "$project" in
84 PN1803)
85 echo 4 > /sys/class/gpio/export
86 echo out > /sys/class/gpio/gpio4/direction
87 echo 0 > /sys/class/gpio/gpio4/value
88 ;;
89 L509)
90 echo 5 > /sys/class/gpio/export
91 echo out > /sys/class/gpio/gpio5/direction
92 echo 0 > /sys/class/gpio/gpio5/value
93
94 echo 8 > /sys/class/gpio/export
95 echo out > /sys/class/gpio/gpio8/direction
96 echo 1 > /sys/class/gpio/gpio8/value
97 ;;
98 esac
99
100 if [ "$project" == "PN1803" -o "$project" == "L508" -o "$project" == "L509"]
101 then
102 echo 118 > /sys/class/gpio/export
103 echo out > /sys/class/gpio/gpio118/direction
104 echo 0 > /sys/class/gpio/gpio118/value
105 fi
106}
107
108start_service
109sleep_init