oem_uvcc: update sh for uvc

1.add uvc buffer check for uvc preview recovery
  test: killall ispserver when uvc preview
2.update to get camera max size for crop
3.set rt_log_level=3 default
4.add uvc buffer check fail more than 2 times to reboot for recovery

Change-Id: I6ee6c33ce441ff2a76e90fb74706e4118a7f3132
Signed-off-by: Mark Huang <huangjc@rock-chips.com>
This commit is contained in:
Mark Huang
2020-12-08 09:28:37 +08:00
committed by huangjc
parent d36c3e968d
commit 2ec90aaeaf
2 changed files with 26 additions and 24 deletions

View File

@ -4,11 +4,6 @@
#vi_aging adjust
io -4 0xfe801048 0x40
#for usb uvc iso
usbirq=`cat /proc/interrupts |grep dwc3| awk '{print $1}'|tr -cd "[0-9]"`
echo "usb irq:$usbirq"
echo 1 > /proc/irq/$usbirq/smp_affinity_list
export VIV_VX_ENABLE_NN_DDR_BURST_SIZE_256B=0
export VIV_VX_MAX_SOC_OT_NUMBER=16
@ -35,28 +30,16 @@ fi
fi
fi
if [ -e /dev/media2 ] ; then
MEDIAX=/dev/media1
else
MEDIAX=/dev/media0
fi
camera_max_width=`media-ctl -d $MEDIAX -p | awk -v line=$(media-ctl -d $MEDIAX -p | awk '/Sensor/{print NR}') '{if(NR==line+3){print $0}}' | awk -F '[/,@,x]' '{print $2}'`
if [[ -z $camera_max_width ]];
then
echo "camera_max_width is empty,try get from media0!!"
MEDIAX=/dev/media0
fi
camera_max_width=`media-ctl -p | grep crop|head -1|awk -F '[/@x]' '{print $2}'`
camera_max_height=`media-ctl -p | grep crop|head -1|awk -F '[/@x]' '{print $3}'`
camera_max_width=`media-ctl -d $MEDIAX -p | awk -v line=$(media-ctl -d $MEDIAX -p | awk '/Sensor/{print NR}') '{if(NR==line+3){print $0}}' | awk -F '[/,@,x]' '{print $2}'`
camera_max_height=`media-ctl -d $MEDIAX -p | awk -v line=$(media-ctl -d $MEDIAX -p | awk '/Sensor/{print NR}') '{if(NR==line+3){print $0}}' | awk -F '[/,@,x]' '{print $3}'`
echo ${camera_max_width}
echo ${camera_max_height}
echo "camera_max_width= ${camera_max_width}"
echo "camera_max_height= ${camera_max_height}"
export CAMERA_MAX_WIDTH=${camera_max_width}
export CAMERA_MAX_HEIGHT=${camera_max_height}
#rkmedia isp ctrl
export ENABLE_SKIP_FRAME=1
#rockit log level ctrl: 1:fatal error; 2: error; 3: warning; 4:infomational; 5:debug level; 6:verbose
export rt_log_level=3
#export ENABLE_EPTZ=1

View File

@ -1,13 +1,31 @@
#!/bin/sh
#
TRY_CNT=0
check_uvc_buffer()
{
if [ "$TRY_CNT" -gt 0 ];then
let TRY_CNT=TRY_CNT-1
#echo "++++++++TRY_CNT:$TRY_CNT"
fi
if [ "$TRY_CNT" -gt 10 ];then
echo "+++check_uvc_buffer recovery fail,reboot to recovery now+++"
reboot &
fi
if [ -e /tmp/uvc_camera_no_buf ];then
let TRY_CNT=TRY_CNT+10
echo "uvc no buf to send 200 frames,try to recovery isp time,timeout:$TRY_CNT"
killall ispserver
killall aiserver
rm /tmp/uvc_camera_no_buf -rf
fi
}
check_alive()
{
PID=`busybox ps |grep $1 |grep -v grep | wc -l`
if [ $PID -le 0 ];then
if [ "$1"x == "uvc_app"x ];then
echo " uvc app die ,restart it and usb reprobe !!!"
echo none > /sys/kernel/config/usb_gadget/rockchip/UDC
sleep 1
rm -rf /sys/kernel/config/usb_gadget/rockchip/configs/b.1/f*
echo ffd00000.dwc3 > /sys/bus/platform/drivers/dwc3/unbind
@ -62,6 +80,7 @@ do
check_alive ispserver
check_alive uvc_app
check_alive aiserver
check_uvc_buffer
sleep 2
check_alive smart_display_service
done