From 523f59735311418dd0120685530fa3fe8546b529 Mon Sep 17 00:00:00 2001 From: leimingsheng Date: Wed, 10 Dec 2025 16:05:58 +0800 Subject: [PATCH] =?UTF-8?q?feat(plugin=20:=20nicsensor)=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E8=8E=B7=E5=8F=96=E6=9C=8D=E5=8A=A1=E5=99=A8?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E5=BE=97=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nicsensor_v2/nicsensor.sh | 66 ++++++++++++++++++++++++++++++++------- 1 file changed, 54 insertions(+), 12 deletions(-) diff --git a/nicsensor_v2/nicsensor.sh b/nicsensor_v2/nicsensor.sh index 598d195..e8e821b 100644 --- a/nicsensor_v2/nicsensor.sh +++ b/nicsensor_v2/nicsensor.sh @@ -1,7 +1,7 @@ #!/bin/sh script_version="v2.0" -server_type="5688m7" +default_server_type="5688m7" server_platform="m7" slot_name=$1 @@ -11,13 +11,47 @@ param_num=$# nic_type="" slot_id="" +server_type="" path=`pwd` -server_script="${path}/platform_${server_type}.sh" -sensor_script="${path}/plugin_${sensor_type}.sh" +server_script="" +sensor_script="" i2c_script="${path}/i2c_${server_platform}.sh" fmt_print="${path}/format_print.sh" +# According to boardid, parse server_type +# Only valid on Gen 7 series +try_get_server_type(){ + if [ -e "/tmp/ns_servertype" ];then + server_type=`cat /tmp/ns_servertype` + else + boardid=`cat /proc/cmdline | awk -F 'boardid=' '{split($2, a," "); print a[1]}'` + + if [ "$boardid" = "" ];then + server_type=$default_server_type + return + fi + if [ $boardid -eq 130 ];then + server_type="5280m7" + elif [ $boardid -eq 150 ];then + server_type="5468m7" + elif [ $boardid -eq 152 ];then + server_type="5688m7" + else + server_type=$default_server_type + exit 1 + fi + + echo $server_type > /tmp/ns_servertype + fi +} + +script_info_load(){ + path=`pwd` + server_script="${path}/platform_${server_type}.sh" + sensor_script="${path}/plugin_${sensor_type}.sh" +} + print_helper(){ echo "======>>> nicsensor Scirpt Usage <<<======" echo "Genenral Usage : ./nicsensor.sh [slot] [sensor] [i2c slave]" @@ -52,9 +86,12 @@ conf_pre_check(){ exit 1 fi - if [ ! -e $sensor_script ];then - $fmt_print "console" "Error" "Sensor Script $sensor_script not exist! Maybe unsupport for now!" - exit 1 + # If action is detect , skip this check + if [ $param_num -gt 3 ];then + if [ ! -e $sensor_script ];then + $fmt_print "console" "Error" "Sensor Script $sensor_script not exist! Maybe unsupport for now!" + exit 1 + fi fi if [ ! -e $i2c_script ];then @@ -102,13 +139,20 @@ start_sensor_reading(){ $sensor_script "read" "${i2c_bus}" "${chip_slave}" "${server_platform}" "${server_type}" } + +pre_exec_hook(){ + # init debug log + if [ -e "/tmp/nicsensor_debug.log" ];then + rm /tmp/nicsensor_debug.log + fi + try_get_server_type + script_info_load + conf_pre_check +} # --------------------------------------------------------- # Start Execute Script # --------------------------------------------------------- -# init debug log -if [ -e "/tmp/nicsensor_debug.log" ];then - rm /tmp/nicsensor_debug.log -fi +pre_exec_hook # check if is detect option if [ "$1" = "detect" ];then @@ -116,8 +160,6 @@ if [ "$1" = "detect" ];then exit 0 fi -conf_pre_check - parse_slot_name i2c_bus=`connect_i2c`