iwpriv ra0 show stat 与 iwpriv ra0 stat 是有区别的

本文介绍了如何使用iwpriv命令来展示ra0接口的状态信息,并提供了具体的命令格式及如何通过dmesg查看内核打印的相关内容。
#!/bin/sh PROTECT_EN=1 DUTY_2G_LEVEL0=100 DUTY_5G_LEVEL0=100 DUTY_2G_LEVEL1=70 DUTY_5G_LEVEL1=70 DUTY_2G_LEVEL2=50 DUTY_5G_LEVEL2=50 DUTY_2G_LEVEL3=30 DUTY_5G_LEVEL3=30 # CPU_LEVEL1_U=113000 CPU_LEVEL2_U=118000 CPU_LEVEL3_U=123000 CPU_LEVEL1_D=110000 CPU_LEVEL2_D=115000 CPU_LEVEL3_D=120000 RF_LEVEL1_U=108000 RF_LEVEL2_U=113000 RF_LEVEL3_U=118000 RF_LEVEL1_D=105000 RF_LEVEL2_D=110000 RF_LEVEL3_D=115000 LEVEL_2G5G=0 local state=0 local pre_state=0 #RESULT_FILE=/tp_data/user_data/result.csv MAX4() { local data1=$1 local data2=$2 local data3=$3 local data4=$4 #echo "max:$data1, $data2, $data3, $data4" >> $RESULT_FILE if [ $data1 -lt $data2 ];then data1=$data2 fi if [ $data1 -lt $data3 ];then data1=$data3 fi if [ $data1 -lt $data4 ];then data1=$data4 fi echo ${data1} } HEAT_test() { country=$(getfirm COUNTRY) if [ "$country" != "US" ]; then #echo "Don't need TP temperature control!" >> $RESULT_FILE return fi TIME_ORI=`date +%s` #get_time iwpriv ra0 set thermal_protect_disable=0:1:1 iwpriv ra0 set thermal_protect_disable=1:1:1 iwpriv ra0 set thermal_protect_disable=0:2:1 iwpriv ra0 set thermal_protect_disable=1:2:1 iwpriv ra0 set thermal_protect_duty_cfg=0:0:$DUTY_2G_LEVEL0 iwpriv ra0 set thermal_protect_duty_cfg=0:1:$DUTY_2G_LEVEL1 iwpriv ra0 set thermal_protect_duty_cfg=0:2:$DUTY_2G_LEVEL2 iwpriv ra0 set thermal_protect_duty_cfg=0:3:$DUTY_2G_LEVEL3 iwpriv ra0 set thermal_protect_duty_cfg=1:0:$DUTY_5G_LEVEL0 iwpriv ra0 set thermal_protect_duty_cfg=1:1:$DUTY_5G_LEVEL1 iwpriv ra0 set thermal_protect_duty_cfg=1:2:$DUTY_5G_LEVEL2 iwpriv ra0 set thermal_protect_duty_cfg=1:3:$DUTY_5G_LEVEL3 #echo "LEVEL1_L=$LEVEL1_L,LEVEL1_H=$LEVEL1_H,LEVEL2_L=$LEVEL2_L,LEVEL2_H=$LEVEL2_H,LEVEL3_L=$LEVEL3_L," >> $RESULT_FILE #echo "DUTY_2G_LEVEL1=$DUTY_2G_LEVEL1,DUTY_5G_LEVEL1=$DUTY_5G_LEVEL1," >> $RESULT_FILE #echo "DUTY_2G_LEVEL2=$DUTY_2G_LEVEL2,DUTY_5G_LEVEL2=$DUTY_5G_LEVEL2," >> $RESULT_FILE #echo "DUTY_2G_LEVEL3=$DUTY_2G_LEVEL3,DUTY_5G_LEVEL3=$DUTY_5G_LEVEL3," >> $RESULT_FILE #echo "" >> $RESULT_FILE while true; do #如下每15s运行一次 CPU_TEMP=$(cat /sys/class/thermal/thermal_zone0/temp) #echo "CPU_TEMP:$CPU_TEMP" >> $RESULT_FILE TEMP_2G_tmp=$(iwpriv ra0 stat | grep CurrentTemperature) # *1000 TEMP_5G_tmp=$(iwpriv rai0 stat | grep CurrentTemperature) # *1000 LVTS0_tmp=$(iwpriv ra0 stat | grep LVTS0) #HEX LVTS1_tmp=$(iwpriv ra0 stat | grep LVTS1) #HEX LVTS2_tmp=$(iwpriv ra0 stat | grep LVTS2) #HEX LVTS3_tmp=$(iwpriv ra0 stat | grep LVTS3) #HEX if [ -z "$TEMP_2G_tmp" ] || [ -z "$TEMP_5G_tmp" ] || [ -z "$LVTS0_tmp" ] || [ -z "$LVTS1_tmp" ] || [ -z "$LVTS2_tmp" ] || [ -z "$LVTS3_tmp" ];then #echo "something is wrong, skip this circle." >> $RESULT_FILE continue fi tmp=$(echo $TEMP_2G_tmp | cut -d '=' -f2) TEMP_2G=$(expr $(echo ${tmp%[*}) \* 1000) tmp=$(echo $TEMP_5G_tmp | cut -d '=' -f2) TEMP_5G=$(expr $(echo ${tmp%[*}) \* 1000) tmp1=$(echo $LVTS0_tmp | cut -d '=' -f2) LVTS0=$(($tmp1)) tmp1=$(echo $LVTS1_tmp | cut -d '=' -f2) LVTS1=$(($tmp1)) tmp1=$(echo $LVTS2_tmp | cut -d '=' -f2) LVTS2=$(($tmp1)) tmp1=$(echo $LVTS3_tmp | cut -d '=' -f2) LVTS3=$(($tmp1)) #echo "TEMP_2G:$TEMP_2G, TMP_5G:$TEMP_5G, TMP_6G:$TEMP_6G" >> $RESULT_FILE #echo "LVTS0:$LVTS0, LVTS1:$LVTS1, LVTS2:$LVTS2, LVTS3:$LVTS3" >> $RESULT_FILE D_DIE_TEMP=$(MAX4 $LVTS0 $LVTS1 $LVTS2 $LVTS3) if [ $TEMP_2G -gt $TEMP_5G ];then if [ $TEMP_2G -gt $D_DIE_TEMP ];then TEMP_2G5G_PROTECT=$TEMP_2G else TEMP_2G5G_PROTECT=$D_DIE_TEMP fi else if [ $TEMP_5G -gt $D_DIE_TEMP ];then TEMP_2G5G_PROTECT=$TEMP_5G else TEMP_2G5G_PROTECT=$D_DIE_TEMP fi fi #echo "TEMP_2G5G_PROTECT:$TEMP_2G5G_PROTECT, TEMP_2G5G_PROTECT:$TEMP_2G5G_PROTECT" >> $RESULT_FILE while IFS= read -r line; do state=$line done < "/tmp/power_mode_type" if [ $state != $pre_state ];then if [ "$state" = "0" ];then DUTY_2G_LEVEL0=100 DUTY_5G_LEVEL0=100 DUTY_2G_LEVEL1=70 DUTY_5G_LEVEL1=70 elif [ "$state" = "1" ];then DUTY_2G_LEVEL0=80 DUTY_5G_LEVEL0=80 DUTY_2G_LEVEL1=70 DUTY_5G_LEVEL1=70 elif [ "$state" = "2" ];then DUTY_2G_LEVEL0=50 DUTY_5G_LEVEL0=50 DUTY_2G_LEVEL1=50 DUTY_5G_LEVEL1=50 fi iwpriv ra0 set thermal_protect_duty_cfg=0:0:$DUTY_2G_LEVEL0 iwpriv ra0 set thermal_protect_duty_cfg=0:1:$DUTY_2G_LEVEL1 iwpriv ra0 set thermal_protect_duty_cfg=1:0:$DUTY_5G_LEVEL0 iwpriv ra0 set thermal_protect_duty_cfg=1:1:$DUTY_5G_LEVEL1 if [ $LEVEL_2G5G -lt 2 ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:$LEVEL_2G5G #2G_LEVEL3 iwpriv ra0 set thermal_protect_state_act=1:1:1:$LEVEL_2G5G #2G_LEVEL3 fi pre_state=$state fi if [ $PROTECT_EN = 1 ];then if [ $LEVEL_2G5G = 3 ];then if [ $TEMP_2G5G_PROTECT -lt $RF_LEVEL3_D ] && [ $CPU_TEMP -lt $CPU_LEVEL3_D ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:2 #2G_LEVEL2 iwpriv ra0 set thermal_protect_state_act=1:1:1:2 #5G_LEVEL2 LEVEL_2G5G=2 #echo "Change 2G5G duty to LEVEL2, duty is 2G:$DUTY_2G_LEVEL2,5G:$DUTY_5G_LEVEL2" >> $RESULT_FILE fi elif [ $LEVEL_2G5G = 2 ];then if [ $TEMP_2G5G_PROTECT -gt $RF_LEVEL3_U ] || [ $CPU_TEMP -gt $CPU_LEVEL3_U ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:3 #2G_LEVEL3 iwpriv ra0 set thermal_protect_state_act=1:1:1:3 #5G_LEVEL3 LEVEL_2G5G=3 #echo "Change 2G5G duty to LEVEL3, duty is 2G:$DUTY_2G_LEVEL3,5G:$DUTY_5G_LEVEL3" >> $RESULT_FILE elif [ $TEMP_2G5G_PROTECT -lt $RF_LEVEL2_D ] && [ $CPU_TEMP -gt $CPU_LEVEL2_D ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:1 #2G_LEVEL1 iwpriv ra0 set thermal_protect_state_act=1:1:1:1 #5G_LEVEL1 LEVEL_2G5G=1 #echo "Change 2G5G duty to LEVEL1, duty is 2G:$DUTY_2G_LEVEL1,5G:$DUTY_5G_LEVEL1" >> $RESULT_FILE fi elif [ $LEVEL_2G5G = 1 ];then if [ $TEMP_2G5G_PROTECT -gt $RF_LEVEL2_U ] || [ $CPU_TEMP -gt $CPU_LEVEL2_U ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:2 #2G_LEVEL2 iwpriv ra0 set thermal_protect_state_act=1:1:1:2 #5G_LEVEL2 LEVEL_2G5G=2 #echo "Change 2G5G duty to LEVEL2, duty is 2G:$DUTY_2G_LEVEL2,5G:$DUTY_5G_LEVEL2" >> $RESULT_FILE elif [ $TEMP_2G5G_PROTECT -lt $RF_LEVEL1_D ] && [ $CPU_TEMP -lt $CPU_LEVEL1_D ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:0 #2G_LEVEL0 iwpriv ra0 set thermal_protect_state_act=1:1:1:0 #5G_LEVEL0 LEVEL_2G5G=0 #echo "Change 2G5G duty to LEVEL0, duty is 2G:100 5G:100" >> $RESULT_FILE fi elif [ $LEVEL_2G5G = 0 ];then if [ $TEMP_2G5G_PROTECT -gt $RF_LEVEL1_U ] || [ $CPU_TEMP -gt $CPU_LEVEL1_U ];then iwpriv ra0 set thermal_protect_state_act=0:1:1:1 #2G_LEVEL1 iwpriv ra0 set thermal_protect_state_act=1:1:1:1 #5G_LEVEL1 LEVEL_2G5G=1 #echo "Change 2G5G duty to LEVEL1, TEMP is TEMP_2G5G_PROTECT:$TEMP_2G5G_PROTECT,5G:$CPU_TEMP" >> $RESULT_FILE fi fi fi TIME_NOW=`date +%s` #get_time TIME_LOG=$(date "+%Y-%m-%d %H:%M:%S") RUN_TIME=$(expr $TIME_NOW - $TIME_ORI) #echo "TIME_NOW:$TIME_NOW, TIME_ORI:$TIME_ORI, RUN_TIME:$RUN_TIME" >> $RESULT_FILE #echo "$TIME_LOG,$RUN_TIME,$CPU_TEMP,$TEMP_2G,$TEMP_5G,,$PROTECT_EN" >> $RESULT_FILE sleep 15 done } HEAT_test 20分钟内存泄露4K
最新发布
11-07
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mcusun2000

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值