#!/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 r16 audio pass through" amixer cset iface=MIXER,name='DACR Mixer AIF1DA0R Switch' 1 amixer cset iface=MIXER,name='DACL Mixer AIF1DA0L Switch' 1 amixer cset iface=MIXER,name='Left Output Mixer DACL Switch' 1 amixer cset iface=MIXER,name='Right Output Mixer DACR Switch' 1 amixer cset iface=MIXER,name='Phoneout Mixer Right Output Mixer Switch' 1 amixer cset iface=MIXER,name='HP_L Mux' 1 amixer cset iface=MIXER,name='HP_R Mux' 0 amixer cset iface=MIXER,name='Headphone Switch' 1 amixer cset iface=MIXER,name='Phoneout Switch' 1 amixer cset iface=MIXER,name='headphone volume' 59 amixer cset iface=MIXER,name='phoneout volume' 0 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 }