blob: 175afe71472ebe782dceb2d8fce70baeee0fcab4 [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
9 if [ -e $1 ];then
10 # stdout and stderr > /dev/null
11 #$@ &> /dev/null &
12 (while ! $@ &> /dev/null; do echo "Restarting $@ ..."; done) &
13 fi
14}
15
16start_service() {
17 echo "--mbtk eary boot start--" > /dev/kmsg
18# mbtk_start /bin/mbtk_test
19# mbtk_start /bin/mbtk_test "eary" 123
20 # ɾ³ýÉÏ´Îgnss ÐÇÀú
21 if [ -f /etc/mbtk/rtm.bin ]
22 then
23 echo "--mbtk eary boot rtm.bin " > /dev/kmsg
24 rm /etc/mbtk/rtm.bin
25 fi
26
27 mbtk_start /bin/mbtk_rild
28
29 if [ -f /bin/mbtk_sdk_ready ]
30 then
31 mbtk_start /bin/mbtk_sdk_ready
32 echo "--mbtk platform mbtk_sdk_ready start--" > /dev/kmsg
33 fi
34
35 if [ "$project" == "T108_2" ];then
b.liu7e9a7512025-04-18 11:42:39 +080036# i2cset -y -f 2 0x31 0x15 0x00
37# mbtk_start /bin/mbtk_gnssd 8122 /dev/ttyS3 0
b.liud440f9f2025-04-18 10:44:31 +080038 elif [ "$project" == "L508_X6" ];then
39 mbtk_start /bin/mbtk_gnssd 5311 /dev/ttyS3 255
40 else
41 # Only auto open gnss but not open any port.
42 mbtk_start /bin/mbtk_gnssd 5311 /dev/ttyS2 255
43 fi
44
45 if [ "$project" == "L508_X6" -o "$project" == "L509" ]
46 then
47 #echo "$project"
48 i2cset -y -f 2 0x32 0x0d 0x00
49 fi
50
51 if [ "$project" == "T108_2" ]
52 then
53 i2cset -y -f 2 0x31 0x15 0x00
54 fi
55 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