diff --git a/OWNERS b/OWNERS
index 5524a1f..b511997 100644
--- a/OWNERS
+++ b/OWNERS
@@ -1,4 +1,4 @@
per-file powerhint.json = jychen@google.com,jenhaochen@google.com,wvw@google.com,joaodias@google.com
# per-file for Pixel device makefiles, see go/pixel-device-mk-owner-checklist for details.
-per-file *.mk,*/BoardConfig.mk=file:device/google/gs-common:main:/MK_OWNERS
+per-file *.mk,*/BoardConfig.mk,{**/,}Android.bp=file:device/google/gs-common:main:/MK_OWNERS
diff --git a/audio/lynx/tuning/fortemedia/BLUETOOTH.dat b/audio/lynx/tuning/fortemedia/BLUETOOTH.dat
index 4c6db73..0a5b245 100644
Binary files a/audio/lynx/tuning/fortemedia/BLUETOOTH.dat and b/audio/lynx/tuning/fortemedia/BLUETOOTH.dat differ
diff --git a/audio/lynx/tuning/fortemedia/BLUETOOTH.mods b/audio/lynx/tuning/fortemedia/BLUETOOTH.mods
index 594c59b..3b3baaa 100644
--- a/audio/lynx/tuning/fortemedia/BLUETOOTH.mods
+++ b/audio/lynx/tuning/fortemedia/BLUETOOTH.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG BLUETOOTH
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2023-08-15 15:10:51
+#SAVE_TIME 2024-07-04 16:09:14
#CASE_NAME BLUETOOTH-BT_HAC-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -533,8 +533,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -3202,8 +3202,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -5871,8 +5871,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -11209,8 +11209,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
diff --git a/audio/lynx/tuning/fortemedia/HANDSET.dat b/audio/lynx/tuning/fortemedia/HANDSET.dat
index fc4375e..62a57cc 100644
Binary files a/audio/lynx/tuning/fortemedia/HANDSET.dat and b/audio/lynx/tuning/fortemedia/HANDSET.dat differ
diff --git a/audio/lynx/tuning/fortemedia/HANDSET.mods b/audio/lynx/tuning/fortemedia/HANDSET.mods
index f9b336a..d076005 100644
--- a/audio/lynx/tuning/fortemedia/HANDSET.mods
+++ b/audio/lynx/tuning/fortemedia/HANDSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-05-21 10:42:17
+#SAVE_TIME 2024-07-04 16:04:34
#CASE_NAME HANDSET-HANDSET-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -533,8 +533,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x6000 //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -3202,8 +3202,8 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -5871,8 +5871,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -8540,8 +8540,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -11209,8 +11209,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x6000 //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -13878,8 +13878,8 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -16547,8 +16547,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -19216,8 +19216,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -21885,8 +21885,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -24554,8 +24554,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -27223,8 +27223,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -29892,8 +29892,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -32561,8 +32561,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -35230,8 +35230,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -37899,8 +37899,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -40568,8 +40568,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x6000 //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -43237,8 +43237,8 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -45906,8 +45906,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -48575,8 +48575,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -51244,8 +51244,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x6000 //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -53913,8 +53913,8 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -56582,8 +56582,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -59251,8 +59251,8 @@
521 0x7FFF //TX_GSC_RTOL_TH
522 0x7FFF //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -61920,8 +61920,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
diff --git a/audio/lynx/tuning/fortemedia/HANDSFREE.dat b/audio/lynx/tuning/fortemedia/HANDSFREE.dat
index cdc79dc..4a3d3a9 100644
Binary files a/audio/lynx/tuning/fortemedia/HANDSFREE.dat and b/audio/lynx/tuning/fortemedia/HANDSFREE.dat differ
diff --git a/audio/lynx/tuning/fortemedia/HANDSFREE.mods b/audio/lynx/tuning/fortemedia/HANDSFREE.mods
index 3521b0d..da74211 100644
--- a/audio/lynx/tuning/fortemedia/HANDSFREE.mods
+++ b/audio/lynx/tuning/fortemedia/HANDSFREE.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSFREE
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2023-08-15 15:10:19
+#SAVE_TIME 2024-07-04 16:04:55
#CASE_NAME HANDSFREE-HANDSFREE-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -533,8 +533,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -3202,8 +3202,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -5871,8 +5871,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -8540,8 +8540,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -11209,8 +11209,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -13878,8 +13878,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -16547,8 +16547,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -19216,8 +19216,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -21885,8 +21885,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -24554,8 +24554,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
diff --git a/audio/lynx/tuning/fortemedia/HEADSET.dat b/audio/lynx/tuning/fortemedia/HEADSET.dat
index b31b449..6f983cf 100644
Binary files a/audio/lynx/tuning/fortemedia/HEADSET.dat and b/audio/lynx/tuning/fortemedia/HEADSET.dat differ
diff --git a/audio/lynx/tuning/fortemedia/HEADSET.mods b/audio/lynx/tuning/fortemedia/HEADSET.mods
index 5d2fe7e..f213900 100644
--- a/audio/lynx/tuning/fortemedia/HEADSET.mods
+++ b/audio/lynx/tuning/fortemedia/HEADSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HEADSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2023-08-15 15:11:19
+#SAVE_TIME 2024-07-04 16:17:49
#CASE_NAME HEADSET-USB_BLACKBIRD-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -27223,8 +27223,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -29892,8 +29892,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -32561,8 +32561,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -37899,8 +37899,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -67258,8 +67258,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -69927,8 +69927,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -72596,8 +72596,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
@@ -77934,8 +77934,8 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_DR_RESRV_5
-525 0x0000 //TX_DR_RESRV_6
+524 0x0064 //TX_DR_RESRV_5
+525 0x1000 //TX_DR_RESRV_6
526 0x122E //TX_DR_RESRV_7
527 0x1100 //TX_DR_RESRV_8
528 0x1333 //TX_WIND_MARK_TH
diff --git a/bluetooth/qti_default.mk b/bluetooth/qti_default.mk
index 7d26e5f..f696ce1 100644
--- a/bluetooth/qti_default.mk
+++ b/bluetooth/qti_default.mk
@@ -23,38 +23,13 @@ PRODUCT_PRODUCT_PROPERTIES += \
# Bluetooth LE Audio
PRODUCT_PRODUCT_PROPERTIES += \
- ro.bluetooth.leaudio_switcher.supported=true \
- ro.bluetooth.leaudio_offload.supported=true \
- persist.bluetooth.leaudio_offload.disabled=false \
- ro.vendor.audio_hal.ble_use_stream_id=true \
- bluetooth.profile.bap.unicast.client.enabled?=true \
- bluetooth.profile.csip.set_coordinator.enabled?=true \
- bluetooth.profile.hap.client.enabled?=true \
- bluetooth.profile.mcp.server.enabled?=true \
- bluetooth.profile.ccp.server.enabled?=true \
- bluetooth.profile.vcp.controller.enabled?=true \
-
-# Bluetooth LE Audio CIS handover to SCO
-# Set the property only if the controller doesn't support CIS and SCO
-# simultaneously. More details in b/242908683.
-PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.leaudio.notify.idle.during.call=true
-
-# Not support LE Audio dual mic SWB call based on the current launch strategy
-PRODUCT_PRODUCT_PROPERTIES += \
- bluetooth.leaudio.dual_bidirection_swb.supported=false
-
-# LE Audio Lunch Config for Phase 1 (LE audio toggle hidden by default)
-PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.leaudio.toggle_visible=false
-
-# LE Auido Offload Capabilities setting
-PRODUCT_COPY_FILES += \
- device/google/lynx/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
-
-# LE Audio use classic connection by default
-PRODUCT_PRODUCT_PROPERTIES += \
- ro.bluetooth.leaudio.le_audio_connection_by_default=false
+ ro.bluetooth.leaudio_switcher.supported=false \
+ bluetooth.profile.bap.unicast.client.enabled?=false \
+ bluetooth.profile.csip.set_coordinator.enabled?=false \
+ bluetooth.profile.hap.client.enabled?=false \
+ bluetooth.profile.mcp.server.enabled?=false \
+ bluetooth.profile.ccp.server.enabled?=false \
+ bluetooth.profile.vcp.controller.enabled?=false \
# Bluetotoh Auto On feature
PRODUCT_PRODUCT_PROPERTIES += \
diff --git a/device-lynx.mk b/device-lynx.mk
index ba03d52..d38fa58 100644
--- a/device-lynx.mk
+++ b/device-lynx.mk
@@ -170,20 +170,36 @@ PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.vibrator.hal.context.cooldowntime=1600 \
persist.vendor.vibrator.hal.context.settlingtime=5000
+# Override Output Distortion Gain
+PRODUCT_VENDOR_PROPERTIES += \
+ vendor.audio.hapticgenerator.distortion.output.gain=0.29
+
# Trusty liboemcrypto.so
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/lynx/prebuilts
-# GPS xml
+# Location
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+ PRODUCT_COPY_FILES += \
+ device/google/lynx/location/lhd.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \
+ device/google/lynx/location/scd.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
+ ifneq (,$(filter 6.1, $(TARGET_LINUX_KERNEL_VERSION)))
PRODUCT_COPY_FILES += \
- device/google/lynx/location/gps.xml.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml \
- device/google/lynx/location/lhd.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \
- device/google/lynx/location/scd.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
+ device/google/lynx/location/gps.6.1.xml.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+ else
+ PRODUCT_COPY_FILES += \
+ device/google/lynx/location/gps.xml.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+ endif
else
+ PRODUCT_COPY_FILES += \
+ device/google/lynx/location/lhd_user.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \
+ device/google/lynx/location/scd_user.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
+ ifneq (,$(filter 6.1, $(TARGET_LINUX_KERNEL_VERSION)))
PRODUCT_COPY_FILES += \
- device/google/lynx/location/gps_user.xml.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml \
- device/google/lynx/location/lhd_user.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \
- device/google/lynx/location/scd_user.conf.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
+ device/google/lynx/location/gps_user.6.1.xml.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+ else
+ PRODUCT_COPY_FILES += \
+ device/google/lynx/location/gps_user.xml.l10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+ endif
endif
# Wifi HAL
@@ -211,9 +227,34 @@ PRODUCT_VENDOR_PROPERTIES += \
vendor.zram.size=3g
# Increment the SVN for any official public releases
-PRODUCT_VENDOR_PROPERTIES += \
- ro.vendor.build.svn=44
+ifdef RELEASE_SVN_LYNX
+TARGET_SVN ?= $(RELEASE_SVN_LYNX)
+else
+# Set this for older releases that don't use build flag
+TARGET_SVN ?= 46
+endif
+PRODUCT_VENDOR_PROPERTIES += \
+ ro.vendor.build.svn=$(TARGET_SVN)
+
+# Set device family property for SMR
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.device_family=P10C10L10
+
+# Set build properties for SMR builds
+ifeq ($(RELEASE_IS_SMR), true)
+ ifneq (,$(RELEASE_BASE_OS_LYNX))
+ PRODUCT_BASE_OS := $(RELEASE_BASE_OS_LYNX)
+ endif
+endif
+
+# Set build properties for EMR builds
+ifeq ($(RELEASE_IS_EMR), true)
+ ifneq (,$(RELEASE_BASE_OS_LYNX))
+ PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_LYNX)
+ endif
+endif
# Set support hide display cutout feature
PRODUCT_PRODUCT_PROPERTIES += \
ro.support_hide_display_cutout=true
@@ -297,3 +338,7 @@ PRODUCT_VENDOR_PROPERTIES += \
PRODUCT_PRODUCT_PROPERTIES += \
ro.quick_start.oem_id=00e0 \
ro.quick_start.device_id=lynx
+
+# Bluetooth device id
+PRODUCT_PRODUCT_PROPERTIES += \
+ bluetooth.device_id.product_id=20491
diff --git a/location/gps.6.1.xml.l10 b/location/gps.6.1.xml.l10
new file mode 100644
index 0000000..33aa2be
--- /dev/null
+++ b/location/gps.6.1.xml.l10
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/location/gps_user.6.1.xml.l10 b/location/gps_user.6.1.xml.l10
new file mode 100644
index 0000000..833b204
--- /dev/null
+++ b/location/gps_user.6.1.xml.l10
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/powerhint.json b/powerhint.json
index 223109b..7434a2b 100644
--- a/powerhint.json
+++ b/powerhint.json
@@ -1721,18 +1721,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
@@ -1989,11 +1977,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.5,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300
@@ -2024,11 +2013,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.5,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300
@@ -2059,11 +2049,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.5,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300
diff --git a/rro_overlays/NfcOverlay/res/values/config.xml b/rro_overlays/NfcOverlay/res/values/config.xml
index 5c54b76..70fe660 100644
--- a/rro_overlays/NfcOverlay/res/values/config.xml
+++ b/rro_overlays/NfcOverlay/res/values/config.xml
@@ -30,7 +30,7 @@
- 36
- - 102
+ - 48
true
diff --git a/thermal_info_config_lynx.json b/thermal_info_config_lynx.json
index 88877cc..22e6874 100644
--- a/thermal_info_config_lynx.json
+++ b/thermal_info_config_lynx.json
@@ -453,315 +453,28 @@
"Type":"NPU",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", "NAN"],
"Multiplier":0.001
- },
- {
- "Name":"battery_cycle",
- "Type":"BCL_VOLTAGE",
- "Multiplier":1,
- "Monitor":false
- },
- {
- "Name":"critical-battery-cell",
- "Type":"BCL_VOLTAGE",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "vdroop1",
- "Combination":["battery", "battery_cycle", "vdroop1"],
- "Coefficient":[-10000, 400, 1000],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 3.00, "NAN"],
- "Multiplier":1,
- "Monitor":true
- },
- {
- "Name":"FLASH_LED_REDUCE",
- "Type":"UNKNOWN",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "vdroop1",
- "Combination":["battery", "battery_cycle", "vdroop1"],
- "Coefficient":[-10000, 400, 1000],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 3.00, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "SendPowerHint":true
- },
- {
- "Name":"soc",
- "Type":"BCL_PERCENTAGE",
- "HotThreshold":["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true
- },
- {
- "Name":"BCL_TPU_LOW_TEMP",
- "Type":"BCL_CURRENT",
- "VirtualSensor":true,
- "Formula":"WEIGHTED_AVG",
- "TriggerSensor": "ocp_tpu",
- "Combination":["ocp_tpu", "battery"],
- "Coefficient":[1, -10],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 13000, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "PassiveDelay":500,
- "BindedCdevInfo": [
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
- }
- ]
- },
- {
- "Name":"BCL_GPU_LOW_TEMP",
- "Type":"BCL_CURRENT",
- "VirtualSensor":true,
- "Formula":"WEIGHTED_AVG",
- "TriggerSensor": "ocp_gpu",
- "Combination":["ocp_gpu", "battery"],
- "Coefficient":[1, -10],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 13000, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "PassiveDelay":500,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 11, 11, 11]
- }
- ]
- },
- {
- "Name":"BCL_BATOILO_GPU_LOW_TEMP",
- "Type":"BCL_CURRENT",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "batoilo",
- "Combination":["batoilo", "ocp_gpu", "battery"],
- "Coefficient":[5000, 12000, -1000],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 3.0, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "PassiveDelay":500,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 11, 11, 11]
- }
- ]
- },
- {
- "Name":"BCL_BATOILO_TPU_LOW_TEMP",
- "Type":"BCL_CURRENT",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "batoilo",
- "Combination":["batoilo", "ocp_tpu", "battery"],
- "Coefficient":[5000, 12000, -1000],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 3.0, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "PassiveDelay":500,
- "BindedCdevInfo": [
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
- }
- ]
- },
- {
- "Name":"BCL_BATOILO_GPU",
- "Type":"BCL_CURRENT",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "batoilo",
- "Combination":["batoilo", "ocp_gpu"],
- "Coefficient":[5000, 12000],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "PassiveDelay":500,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 5, 5, 5]
- }
- ]
- },
- {
- "Name":"BCL_BATOILO_TPU",
- "Type":"BCL_CURRENT",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "batoilo",
- "Combination":[
- "batoilo",
- "ocp_tpu"
- ],
- "Coefficient":[5000, 12000],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true,
- "PassiveDelay":500,
- "BindedCdevInfo": [
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 6, 6, 6]
- }
- ]
- },
- {
- "Name":"batoilo",
- "Type":"BCL_CURRENT",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 5000, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-cpufreq-2",
- "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
- },
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
- },
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 5, 5, 5]
- }
- ]
- },
- {
- "Name":"BCL_AUDIO_BAACL",
- "Type":"BCL_VOLTAGE",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "soc",
- "Combination":["battery", "soc"],
- "Coefficient":[-25000, 80],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
- "Multiplier":1,
- "Monitor":true
- },
- {
- "Name":"vdroop1",
- "Type":"BCL_VOLTAGE",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 1000, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-cpufreq-2",
- "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
- },
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 2, 2, 2]
- },
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 3, 3, 3]
- }
- ]
- },
- {
- "Name":"vdroop2",
- "Type":"BCL_VOLTAGE",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 1200, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-cpufreq-2",
- "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
- },
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 5, 5, 5]
- },
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 3, 3, 3]
- }
- ]
- },
- {
- "Name":"smpl_gm",
- "Type":"BCL_VOLTAGE",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 1100, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "BindedCdevInfo": [
- {
- "CdevRequest": "thermal-cpufreq-2",
- "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
- },
- {
- "CdevRequest": "thermal-gpufreq-0",
- "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
- },
- {
- "CdevRequest": "tpu_cooling",
- "LimitInfo": [0, 0, 0, 0, 3, 3, 3]
- }
- ]
- },
- {
- "Name":"ocp_cpu1",
- "Type":"BCL_CURRENT",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 8000, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "Hidden":true
- },
- {
- "Name":"ocp_cpu2",
- "Type":"BCL_CURRENT",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 12000, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "Hidden":true
- },
- {
- "Name":"ocp_tpu",
- "Type":"BCL_CURRENT",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 12000, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "Monitor":true
- },
- {
- "Name":"ocp_gpu",
- "Type":"BCL_CURRENT",
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 12000, "NAN", "NAN"],
- "HotHysteresis":[0.0, 0.0, 0.0, 0.0, 100, 0.0, 0.0],
- "Multiplier":1,
- "Monitor":true
}
],
"CoolingDevices":[
{
"Name":"thermal-cpufreq-0",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote",
- "State2Power":[1100, 1050, 1000, 950, 900, 850, 800, 750, 700, 650, 600]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote"
},
{
"Name":"thermal-cpufreq-1",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote",
- "State2Power":[1400, 1350, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 850, 800, 750]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote"
},
{
"Name":"thermal-cpufreq-2",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote",
- "State2Power":[1450, 1400, 1350, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 850, 800, 750]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote"
},
{
"Name":"thermal-gpufreq-0",
"Type":"GPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote",
- "State2Power":[4599, 3727, 3259, 2378, 2044, 1813, 1449, 1223, 1007, 804, 633, 452]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote"
},
{
"Name":"fcc",