From 607d6b55a381980d8a5d63fe5ade51dd6e520a34 Mon Sep 17 00:00:00 2001 From: sashwinbalaji Date: Wed, 24 Apr 2024 13:58:19 +0800 Subject: [PATCH] thermal: Add VSkin-Speaker Model - Add linear regression model for VSkin-Speaker - Setup abnormality monitoring: - 0 <= VSkin-Speaker <= 55 - -15 <= Vskin-Speaker Model - Legacy <= 15 - Residency for Vskin-Speaker Model Bug: 303547367 Test: Local build and verify lshal Change-Id: Iadb46c82c2568c2eec31fe2cf7b9fd2cb9a56a04 --- device-comet.mk | 1 + thermal/thermal_info_config_comet.json | 80 +++++++++++++----- .../vt_speaker_estimation_model_comet.tflite | Bin 0 -> 5684 bytes 3 files changed, 62 insertions(+), 19 deletions(-) create mode 100644 thermal/vt_speaker_estimation_model_comet.tflite diff --git a/device-comet.mk b/device-comet.mk index 578cd89..2d94122 100644 --- a/device-comet.mk +++ b/device-comet.mk @@ -140,6 +140,7 @@ PRODUCT_COPY_FILES += \ $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_backup_comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_backup.json \ $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_estimation_model_comet.tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_estimation_model.tflite \ + $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_speaker_estimation_model_comet.tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_speaker_estimation_model.tflite \ PRODUCT_PACKAGES += \ init_thermal_config diff --git a/thermal/thermal_info_config_comet.json b/thermal/thermal_info_config_comet.json index 9659fc0..ea2f844 100644 --- a/thermal/thermal_info_config_comet.json +++ b/thermal/thermal_info_config_comet.json @@ -253,20 +253,6 @@ "Coefficient": [1.0, -1.0], "Multiplier": 1 }, - { - "Name": "STATS-UPDATOR", - "Type": "UNKNOWN", - "VirtualSensor": true, - "Hidden": true, - "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"], - "Formula": "WEIGHTED_AVG", - "Combination": ["VIRTUAL-SKIN-MODEL", "VIRTUAL-SKIN-LEGACY", "VIRTUAL-SKIN-MODEL-LEGACY-DIFF"], - "Coefficient": [0.0, 0.0, 0.0], - "Multiplier": 1, - "SendPowerHint": true, - "PollingDelay": 300000, - "PassiveDelay": 7000 - }, { "Name": "VIRTUAL-SKIN", "Type": "SKIN", @@ -875,17 +861,50 @@ ] }, { - "Name": "VIRTUAL-SKIN-SPEAKER", + "Name": "VIRTUAL-SKIN-SPEAKER-LEGACY", "Type": "UNKNOWN", "Version": "0.1", + "Hidden": true, "VirtualSensor": true, - "TriggerSensor": "usb_conn_therm", "Formula": "WEIGHTED_AVG", "Combination": ["usb_conn_therm", "maxfg_base"], "Coefficient": [0.89, 0.01], + "Offset": 8426, + "Multiplier": 0.001 + }, + { + "Name": "VIRTUAL-SKIN-SPEAKER-MODEL", + "Type": "UNKNOWN", + "Version": "1.0", + "Hidden": true, + "VirtualSensor": true, + "ModelPath": "vt_speaker_estimation_model.tflite", + "Formula": "USE_ML_MODEL", + "Combination": ["soc_therm", "rffe_therm", "charger_therm", "usb_conn_therm", "modem_therm", "inner_display_therm", "display_therm", "gnss_tcxo_therm", "maxfg_base", "maxfg_secondary", "inner_brightness"], + "Multiplier": 0.001, + "PreviousSampleCount": 3 + }, + { + "Name": "VIRTUAL-SKIN-SPEAKER-MODEL-LEGACY-DIFF", + "Type": "UNKNOWN", + "VirtualSensor": true, + "Hidden": true, + "Formula": "WEIGHTED_AVG", + "Combination": ["VIRTUAL-SKIN-SPEAKER-MODEL", "VIRTUAL-SKIN-SPEAKER-LEGACY"], + "Coefficient": [1.0, -1.0], + "Multiplier": 1 + }, + { + "Name": "VIRTUAL-SKIN-SPEAKER", + "Type": "UNKNOWN", + "Version": "1.0", + "VirtualSensor": true, + "TriggerSensor": "usb_conn_therm", + "Formula": "MAXIMUM", + "Combination": ["VIRTUAL-SKIN-SPEAKER-MODEL"], + "Coefficient": [1.0], "HotThreshold": ["NAN", 37.0, "NAN", "NAN", "NAN", "NAN", "NAN"], "HotHysteresis": [0.0, 1.9, 0.0, 0.0, 0.0, 0.0, 0.0], - "Offset": 8426, "Multiplier": 0.001, "PollingDelay": 300000, "PassiveDelay": 7000, @@ -1000,6 +1019,21 @@ "Type": "NPU", "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"], "Multiplier": 0.001 + }, + { + "Name": "STATS-UPDATOR", + "Type": "UNKNOWN", + "VirtualSensor": true, + "Hidden": true, + "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm", "usb_conn_therm"], + "Formula": "WEIGHTED_AVG", + "Combination": ["VIRTUAL-SKIN-MODEL", "VIRTUAL-SKIN-LEGACY", "VIRTUAL-SKIN-MODEL-LEGACY-DIFF", + "VIRTUAL-SKIN-SPEAKER-MODEL", "VIRTUAL-SKIN-SPEAKER-LEGACY", "VIRTUAL-SKIN-SPEAKER-MODEL-LEGACY-DIFF"], + "Coefficient": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + "Multiplier": 1, + "SendPowerHint": true, + "PollingDelay": 300000, + "PassiveDelay": 7000 } ], "CoolingDevices": [ @@ -1124,8 +1158,8 @@ ] }, { - "Name": "VIRTUAL-SKIN-SPEAKER", - "Thresholds": [35, 37] + "Name": "VIRTUAL-SKIN-SPEAKER-MODEL", + "Thresholds": [0, 37, 42, 47, 57, 100] } ], "Abnormality": { @@ -1139,9 +1173,17 @@ "Monitor": ["VIRTUAL-SKIN-MODEL"], "TempRange": [0.0, 57.0] }, + { + "Monitor": ["VIRTUAL-SKIN-SPEAKER-MODEL"], + "TempRange": [0.0, 57.0] + }, { "Monitor": ["VIRTUAL-SKIN-MODEL-LEGACY-DIFF"], "TempRange": [-7000, 7000] + }, + { + "Monitor": ["VIRTUAL-SKIN-SPEAKER-MODEL-LEGACY-DIFF"], + "TempRange": [-15000, 15000] } ] }, diff --git a/thermal/vt_speaker_estimation_model_comet.tflite b/thermal/vt_speaker_estimation_model_comet.tflite new file mode 100644 index 0000000000000000000000000000000000000000..b24da7b6daaea7991a93fc483eeabe970724cf78 GIT binary patch literal 5684 zcmb_g3s@7!7G4w)5J5pi6m3L&q9G7Kz+_emC@3l-D%G}eAxntnfk{BIYEcof+E#qq zTJ^JjYAA#Wv0n+AUVAwI$T}jJ29Kn0ZxjeSeoftyb)7 zRo|yIWMx}ywo{?47XbUqKo82`GungsB&5WthQ*~s$3~|_Gv}cnd11d7AZEnyF>%SG z5=IPfkZ}gq$ln?IUH&Gk*BVr&Y=cFs=T$kp$*eURZ1XDwp*(;NAOl#yArSx>pcg;_ zK%%Rg+3jAdol7CSqi=@EWWmq-94$BaJOJKw0QCJ&;OO%J8H{ZK@4-@;R0j26Ky((D zp2ILjayBuk(WD8|*+tDki3u@r!$-yS15qg> z0bNVlztYT(+|`bjT#**5qyVYFd9Kxu|Cfi`TB zrAjv%GPD}$L^G^1!^8t(j0Ov*HJE`}hEc+$8M7@Cy;05UBw3t^)0-unL0#KmQz0>M zdfwg&Gt`Qqg` z&r50G@~L#o7p00xH}aIqoGD~OK%tPTm`OF`GuS=XM^I8bt^_tk&SE#wDQ=uF?Wv3S z`1VSwAK5~DXVpkLVEbF_koO`5{oJ#{H`Bb?3p>V(E8dS6tq(q?s@6r+edQpMvi}+# zynYKEzd*xg%n2jbv@Oc*6aFFv9xl{#X-9GF9U}=nF_xx`K1r@T%BRz=UQmdKV%hMT zb;^CepCR$n3A=Sg9u0gtmV7w)HdW{fsLSZNH11NR^7O_c8gQtGuz&wE;atFGk{jYf z?oV0CW|2!}g$XNY>JRDki;MAeN9;pdl;bPjifK*HZV41M_p9jpE!;`lfP-Z9(jJP7 zyYuPph3k|7$3}=u$rZZn+yHUrfg5}K9==1XglcNsyN#}vWwNpRb`j&}E9soF!)5Dw z_7GcTmJ8Zh!|B3p>&e<~n}mw!&&bq+EtEeRo0k{Gjb>-9yF%5TBdA|htSG#7Nl+im zC8q}+5@MEwv&G|Q6SusJWk&;D%Cq|{W8**e5ue^{MuPh-5KEG8P*YVXiOSiyXW6EE ztq z-8zaD8$H?f*F43_v@5iHb|Bqxej-_WJ55nuvxmr{4hcURoy44dk!;%HKWVS)Uz5sb zl-_FTE5u!siq}4mB@>numR*&%CFN@_3-e0D#Umb}tk2DM;+&%=sphjh;cieLAz?ur z*)sWYSzyu`W%JI(W&bEL(37pFmPH+3FB~mBMlUuyK&8hYD#iOt>D>oj?CFBOq}MH9 zV)bOi19zV(PoMvgBrM9Ke`&rEVp{o#Z5Fg)cUKnEkMcVc$BuW%?W-Qd>y!(*>z-TY zcceXecWX~!v*1#e64aN~Els7n$-hZnA*GRC>Eu`4I(k(X&F*+~l-_^5Q}`;rgv>W@ zV$YZER945xsju5yGApZq<}Dme+}C}*_wB%+$nwAP>CMt2I{D~9h4%0OLXY~he`wr9 zk6G8q*IbC$yc?(ZeU*%M^E^QY7R$r{ovWDICR2En)ty`^y`}u_=S8$KX&kHYT}2jH z_tCopz9*}OETBF!e8f+aXHm($NurZ)2a-PNDRG*=zAWCe3;QD(NE{{{E4z5bPbqu5 z6AkSjM0*?e&^yz|iLJYPv)3msArVPxa*s$^-JIrZm&-k=@5Um+-St;)Y_^r=|Ivrc zt(-2licespy%R{**i%YXQjp?yry5$}JdwDqXfNE)TtmjKkP4@gLdnT{pAg;UrR?_^ zZCLB{!?bFUl#FQ=EV|aLq+{3aqbbP+^vLG-Y2~Ib$m%0`&lO8J1 zrVSBy-npv09&(&klqRw?x0rsKJeF-A{+sgCcjH-S*Jg)6!OZ1+R16$c_Rv+sxsq@^gsLw0rQ}piK z_n$TV-aEcCn}&LMh((6k<=#b~uzkLoLrguUQ^r}k$bJhob&05InpmY9$%fx{YdGz+hm+Rl8;Um3=|KC8w24pP_py!ID(t_J)L zK%IIx=%KRZmrJ3>^B>y_z^*-iV4U%s#AnMBs}=JK%v&+lt2-aD4Q+O;&7@n^+Qgg> z%22E&0J~hn+4|Y4RRr5m57wCHp&pzAX5@8x8uNHk%LC<+2NtaHJVrgp&u$BIHHImH z4h5hB8Vdmmz#(X#0KmC^^wesF$^q>nR|Jj=1)xrFg>Bvzkn@H2Q5Md^XJqS=IFm(d zf$W%9$8b7bl&n@BZ6huDr ze9)dh_yQ^iToVMYK`+1}(2u@ptVb0bWVZl)$fr)v#725>9RdJ9fgT^I8|$glf;x~# zSHRXrIxq%s&HSLfC)6+KsGU<#GS8{Ua3(F6rsGFs)pKH)_O^Xvk3Nh5EG?ncR_f=B z95A=f2Rpr?ZfpnU{1Qv{`J)fe7T!H^XWDO{7;_D_Fcu}XKzRkAZas1CjwYdKaUAN90MOqxz&{OYC~0`NLBC=T?svG}VR1EIR7Zgcv}-T+dJ_Ii~n%AH9)_=*_f`f<@5f1>qTt> z$#{);PJ?YA{0j*Wi-?fQo|nhY@ZexMTos?w^IrYijD`U(;bO|j;9rAGcvw?p!Xo66 zp>IGYJ(DwOc+;!%>EA!RDL&zHdBmGIC)=Ecw?)IN6AB3jyA95-TgK4H5Lx6KI0!GL z`d4QY9tK8VWD^z{8S*Av%&lW*+vLnlt6T0;ABEFbeH2L#nUM$R5^dCaosZV&Ki@|D95k4wB1d{a?<;#_~P8 zTm6UOHz&w%;qw%n0u8^|{#hnIM`h;pSvuaVGMd!93Hs%>u`^s}Bn@?F)~@->4=vki j2LJLL`a%|M|2PHiuKNg>ZkFf7zn-uU)kR=gS~ literal 0 HcmV?d00001