blob: f06a8ddaca481940cce1cff1d6beebc23ef0aa85 [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
zw.wang89c18242025-06-24 19:07:10 +080025 # ɾ���ϴ�gnss ����
b.liud440f9f2025-04-18 10:44:31 +080026 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
zw.wang89c18242025-06-24 19:07:10 +080082 if [ -f /sys/devices/platform/mbtk-sdh/pwr_ctrl ]; then
83 echo 0 > /sys/devices/platform/mbtk-sdh/pwr_ctrl
84 fi
85 if [ -f /usr/sbin/gnss_gpio.sh ]; then
86 /usr/sbin/gnss_gpio.sh off
87 fi
b.liud440f9f2025-04-18 10:44:31 +080088
89 case "$project" in
90 PN1803)
91 echo 4 > /sys/class/gpio/export
92 echo out > /sys/class/gpio/gpio4/direction
93 echo 0 > /sys/class/gpio/gpio4/value
94 ;;
95 L509)
96 echo 5 > /sys/class/gpio/export
97 echo out > /sys/class/gpio/gpio5/direction
98 echo 0 > /sys/class/gpio/gpio5/value
99
100 echo 8 > /sys/class/gpio/export
101 echo out > /sys/class/gpio/gpio8/direction
102 echo 1 > /sys/class/gpio/gpio8/value
103 ;;
104 esac
105
106 if [ "$project" == "PN1803" -o "$project" == "L508" -o "$project" == "L509"]
107 then
108 echo 118 > /sys/class/gpio/export
109 echo out > /sys/class/gpio/gpio118/direction
110 echo 0 > /sys/class/gpio/gpio118/value
111 fi
112}
113
114start_service
115sleep_init