152 lines
4.0 KiB
Bash
152 lines
4.0 KiB
Bash
#!/bin/sh /etc/rc.common
|
|
# Copyright (C) 2006-2011 OpenWrt.org
|
|
|
|
START=110
|
|
STOP=110
|
|
USE_PROCD=1
|
|
DEPEND=netease_voice_service,boot
|
|
|
|
PROG_VOICE=/bin/netease_voice
|
|
PROG_CC=/usr/sbin/netease_control_center
|
|
PROG_PLAYER=/usr/bin/ihwplayer
|
|
PROG_LE_APP=/usr/bin/app_nevsps
|
|
PROG_WIFI_APP=/bin/app_wifi_manager
|
|
PROG_OTA=/usr/bin/ota
|
|
PROG_ALARMER=/usr/bin/alarmer
|
|
PROG_KPLAYER=/usr/bin/KPlayer
|
|
|
|
OOM_ADJ=2
|
|
LOG=/tmp/netease.init.log
|
|
GOROOT=/usr/share/golang/
|
|
|
|
init_dbus() {
|
|
echo "init dbus" >> $LOG
|
|
if [ -x /tmp/dbus_env.sh ]
|
|
then
|
|
DBUS_DAEMON_ON=`ps | grep "dbus-daemon --fork" | grep -v grep | wc -l`
|
|
if [ "$DBUS_DAEMON_ON" == "1" ]
|
|
then
|
|
source /tmp/dbus_env.sh
|
|
else
|
|
echo "-----------------" >> /mnt/UDISK/reboot.log
|
|
date -R >> /mnt/UDISK/reboot.log
|
|
reboot -f
|
|
fi
|
|
else
|
|
export $(dbus-launch)
|
|
echo "export DBUS_SESSION_BUS_ADDRESS=\"$DBUS_SESSION_BUS_ADDRESS\"" > /tmp/dbus_env.sh
|
|
echo "export DBUS_SESSION_BUS_PID=\"$DBUS_SESSION_BUS_PID\"" >> /tmp/dbus_env.sh
|
|
chmod +x /tmp/dbus_env.sh
|
|
fi
|
|
|
|
echo "wzj: DBUS_SESSION_BUS_ADDRESS=\"$DBUS_SESSION_BUS_ADDRESS\"" >> $LOG
|
|
}
|
|
|
|
enable_soundcard() {
|
|
echo "set r311 audio pass through"
|
|
amixer cset numid=20 1
|
|
amixer cset numid=46 1
|
|
amixer cset numid=50 1
|
|
echo 4 > /sys/netease/cpld_control/cpld_init
|
|
adau1761 2 0
|
|
adau1761 0 8
|
|
}
|
|
|
|
start_voice() {
|
|
echo "start voice" >> $LOG
|
|
echo $DBUS_SESSION_BUS_ADDRESS >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_VOICE -D >> /tmp/voicelog 2>&1
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS
|
|
procd_close_instance
|
|
}
|
|
|
|
start_cc() {
|
|
echo "start cc" >> $LOG
|
|
echo $DBUS_SESSION_BUS_ADDRESS >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_CC
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS
|
|
procd_close_instance
|
|
|
|
}
|
|
|
|
start_player() {
|
|
echo "start player" >> $LOG
|
|
echo $DBUS_SESSION_BUS_ADDRESS >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_PLAYER -D
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
|
|
procd_close_instance
|
|
}
|
|
|
|
start_wifi() {
|
|
echo "start wifi" >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_WIFI_APP -D >> /tmp/wifilog
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
|
|
procd_close_instance
|
|
}
|
|
|
|
start_ble() {
|
|
echo "start ble" >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_LE_APP -D >> /tmp/blelog
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
|
|
procd_close_instance
|
|
}
|
|
|
|
start_ota() {
|
|
echo "start ota" >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_OTA -D >> /tmp/otalog
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
|
|
procd_close_instance
|
|
}
|
|
|
|
start_alarmer() {
|
|
echo "start ota" >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_ALARMER -D >> /tmp/otalog
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
|
|
procd_close_instance
|
|
}
|
|
|
|
start_dlna() {
|
|
echo "start dlna" >> $LOG
|
|
procd_open_instance
|
|
procd_set_param oom_adj $OOM_ADJ
|
|
procd_set_param command $PROG_KPLAYER -D >> /tmp/dlnalog
|
|
procd_set_param respawn
|
|
procd_append_param limits core=unlimited
|
|
procd_set_param env DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS GOROOT=$GOROOT
|
|
procd_close_instance
|
|
}
|
|
|
|
start_service() {
|
|
enable_soundcard
|
|
init_dbus
|
|
start_player
|
|
}
|