Update SVN to 21 for O6R4 Feb MPR 2022 am: 0d19675985

Original change: https://googleplex-android-review.googlesource.com/c/device/google/raviole/+/16474561

Change-Id: I6976d4ded2202860d63369d2711e8f11d0a227e0
diff --git a/audio/oriole/audio-tables.mk b/audio/oriole/audio-tables.mk
index 6c3fc3a..52e4858 100644
--- a/audio/oriole/audio-tables.mk
+++ b/audio/oriole/audio-tables.mk
@@ -69,4 +69,10 @@
 # Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
 PRODUCT_COPY_FILES += \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
+
+# Waves ini/mps files for unit tests of halcontroller
+PRODUCT_COPY_FILES += \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
+
 endif
diff --git a/audio/oriole/config/mixer_paths_factory.xml b/audio/oriole/config/mixer_paths_factory.xml
index 57633f5..3326db7 100644
--- a/audio/oriole/config/mixer_paths_factory.xml
+++ b/audio/oriole/config/mixer_paths_factory.xml
@@ -36,6 +36,14 @@
         <ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
     </path>
 
+    <path name="mfg-record usb-headset-mic">
+        <ctl name="Audio Capture Mic Source" value="USB_MIC"/>
+        <ctl name="USB Capture FORMAT v2" value="1" />
+        <ctl name="USB Config To AoC v2" value="1"/>
+        <ctl name="EP1 TX Mixer USB_TX" value="1"/>
+        <ctl name="MIC Record Soft Gain (dB)" value="0" />
+    </path>
+
     <path name="mic1-status">
         <ctl name="MIC0" value="1" />
     </path>
@@ -233,12 +241,13 @@
     </path>
 
     <path name="mfg-playback usb-headphones">
-        <ctl name="USB Dev ID" value="1" />
-        <ctl name="USB Playback EP ID" value="1" />
-        <ctl name="USB Playback SR" value="48000" />
-        <ctl name="USB Playback CH" value="2" />
-        <ctl name="USB Playback BW" value="16" />
-        <ctl name="USB Config To AoC" value="1" />
+        <ctl name="USB Dev ID v2" value="2" />
+        <ctl name="USB Playback EP ID v2" value="1" />
+        <ctl name="USB Playback FORMAT v2" value="6" />
+        <ctl name="USB Playback SR v2" value="48000" />
+        <ctl name="USB Playback CH v2" value="2" />
+        <ctl name="USB Playback BW v2" value="16" />
+        <ctl name="USB Config To AoC v2" value="1" />
         <ctl name="USB_RX Mixer EP3" value="1" />
     </path>
 
@@ -300,9 +309,15 @@
     </path>
 
     <path name="loopback-usb-mic-speaker">
+        <ctl name="Audio Capture Mic Source" value="USB_MIC" />
+        <ctl name="USB Capture FORMAT v2" value="1" />
+        <ctl name="MIC Record Soft Gain (dB)" value="0" />
     </path>
 
     <path name="loopback-usb-mic-usb-headphone">
+        <ctl name="Audio Capture Mic Source" value="USB_MIC" />
+        <ctl name="USB Capture FORMAT v2" value="1" />
+        <ctl name="MIC Record Soft Gain (dB)" value="0" />
     </path>
 
     <pcm_id name="loopback-mic1" value="EP1 capture (*)"/>
diff --git a/audio/oriole/tuning/fortemedia/HEADSET.dat b/audio/oriole/tuning/fortemedia/HEADSET.dat
index 32da364..b4957ff 100644
--- a/audio/oriole/tuning/fortemedia/HEADSET.dat
+++ b/audio/oriole/tuning/fortemedia/HEADSET.dat
Binary files differ
diff --git a/audio/oriole/tuning/fortemedia/HEADSET.mods b/audio/oriole/tuning/fortemedia/HEADSET.mods
index 6154e12..29d050b 100644
--- a/audio/oriole/tuning/fortemedia/HEADSET.mods
+++ b/audio/oriole/tuning/fortemedia/HEADSET.mods
@@ -1,9 +1,10 @@
 #PLATFORM_NAME  gChip

 #EXPORT_FLAG  HEADSET

 #SINGLE_API_VER  1.1.6

-#SAVE_TIME  2021-08-20 16:52:12

+#SAVE_TIME  2022-01-04 15:21:35

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -905,7 +906,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0000    //RX_SAMPLINGFREQ_SIG

 3    0x0000    //RX_SAMPLINGFREQ_PROC

@@ -1031,9 +1032,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x01F4    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -1071,21 +1072,21 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01F4    //RX_TDDRC_DRC_GAIN

+124    0x0211    //RX_TDDRC_DRC_GAIN

 38    0x0014    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -1159,7 +1160,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000A    //RX_SPK_VOL

+129    0x0009    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1170,21 +1171,21 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C8    //RX_TDDRC_DRC_GAIN

+124    0x0211    //RX_TDDRC_DRC_GAIN

 38    0x0014    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -1258,7 +1259,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0014    //RX_SPK_VOL

+129    0x000F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1269,21 +1270,21 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01D9    //RX_TDDRC_DRC_GAIN

+124    0x0211    //RX_TDDRC_DRC_GAIN

 38    0x0014    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -1357,7 +1358,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0020    //RX_SPK_VOL

+129    0x0019    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    3

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1368,14 +1369,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1456,7 +1457,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0030    //RX_SPK_VOL

+129    0x002B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    4

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1467,14 +1468,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1555,7 +1556,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x004A    //RX_SPK_VOL

+129    0x0048    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1566,14 +1567,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1654,7 +1655,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0087    //RX_SPK_VOL

+129    0x007A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1665,14 +1666,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1757,6 +1758,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -1910,7 +1912,7 @@
 147    0x0080    //TX_AEC_REF_GAIN_0

 148    0x0800    //TX_AEC_REF_GAIN_1

 149    0x0800    //TX_AEC_REF_GAIN_2

-150    0x4500    //TX_EAD_THR

+150    0x36B0    //TX_EAD_THR

 151    0x0800    //TX_THR_RE_EST

 152    0x0800    //TX_MIN_EQ_RE_EST_0

 153    0x0800    //TX_MIN_EQ_RE_EST_1

@@ -2658,7 +2660,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0001    //RX_SAMPLINGFREQ_SIG

 3    0x0001    //RX_SAMPLINGFREQ_PROC

@@ -2784,9 +2786,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x01AE    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -2824,13 +2826,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -2838,7 +2840,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01AE    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -2912,7 +2914,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000B    //RX_SPK_VOL

+129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -2923,13 +2925,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -2937,7 +2939,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01B6    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3011,7 +3013,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0012    //RX_SPK_VOL

+129    0x0011    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -3022,13 +3024,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3036,7 +3038,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3121,13 +3123,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3135,7 +3137,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3220,13 +3222,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3234,7 +3236,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3308,7 +3310,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0051    //RX_SPK_VOL

+129    0x0050    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -3319,13 +3321,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3333,7 +3335,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3407,7 +3409,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0095    //RX_SPK_VOL

+129    0x0087    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -3418,13 +3420,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3510,6 +3512,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -4411,7 +4414,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0003    //RX_SAMPLINGFREQ_SIG

 3    0x0003    //RX_SAMPLINGFREQ_PROC

@@ -4537,9 +4540,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x023E    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -4577,38 +4580,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4665,7 +4668,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000B    //RX_SPK_VOL

+129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4676,38 +4679,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4764,7 +4767,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0012    //RX_SPK_VOL

+129    0x0011    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4775,38 +4778,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0236    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4863,7 +4866,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x001F    //RX_SPK_VOL

+129    0x001C    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    3

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4874,38 +4877,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4962,7 +4965,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0033    //RX_SPK_VOL

+129    0x002F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    4

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4973,38 +4976,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -5061,7 +5064,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0055    //RX_SPK_VOL

+129    0x004F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -5072,38 +5075,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -5160,7 +5163,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x008F    //RX_SPK_VOL

+129    0x0086    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -5171,38 +5174,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -5263,6 +5266,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -6164,7 +6168,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0004    //RX_SAMPLINGFREQ_SIG

 3    0x0004    //RX_SAMPLINGFREQ_PROC

@@ -6290,9 +6294,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x0240    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -6330,35 +6334,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6418,7 +6422,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000A    //RX_SPK_VOL

+129    0x000B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6429,35 +6433,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6517,7 +6521,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0010    //RX_SPK_VOL

+129    0x0012    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6528,35 +6532,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6616,7 +6620,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x001C    //RX_SPK_VOL

+129    0x001F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    3

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6627,35 +6631,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6715,7 +6719,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x002F    //RX_SPK_VOL

+129    0x0034    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    4

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6726,35 +6730,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6814,7 +6818,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x004F    //RX_SPK_VOL

+129    0x0056    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6825,35 +6829,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6913,7 +6917,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0081    //RX_SPK_VOL

+129    0x0090    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6924,35 +6928,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -7016,6 +7020,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -8769,6 +8774,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -10522,6 +10528,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -12275,6 +12282,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -14028,6 +14036,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -15781,6 +15790,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -17534,6 +17544,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -19287,6 +19298,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -21040,6 +21052,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -22793,6 +22806,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -24546,6 +24560,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -26299,6 +26314,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -28052,6 +28068,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -29805,6 +29822,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -31558,6 +31576,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -33311,6 +33330,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -35064,6 +35084,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -36817,6 +36838,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -38570,6 +38592,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -40323,6 +40346,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -42076,6 +42100,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -43829,6 +43854,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -45582,6 +45608,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -47335,6 +47362,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -49088,6 +49116,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -50841,6 +50870,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -52594,6 +52624,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -54347,6 +54378,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

diff --git a/audio/oriole/tuning/waves/tests/test_config.ini b/audio/oriole/tuning/waves/tests/test_config.ini
new file mode 100644
index 0000000..ba12a8e
--- /dev/null
+++ b/audio/oriole/tuning/waves/tests/test_config.ini
@@ -0,0 +1,58 @@
+########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
+# This defined the options of supported sample rates.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_SAMPLE_RATES]
+SR_COMMON   = 48000
+
+########################################################################################################
+# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_ORIENTATION_SUBTYPES]
+OST_SPEAKER = 0:12,90:13,180:12,270:0|13
+
+########################################################################################################
+# This defines available preset configurations.
+# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
+########################################################################################################
+[HAL_SUPPORTED_PRESETS]
+SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
+HEADSET_MUSIC = OM:2,SM:2
+
+########################################################################################################
+# This defines available CONTROL configurations. Only define the CONTROL if you need it.
+# The numbers could vary from device to device.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_CONTROLS]
+SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
+A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+
+[COEFS_CONVERTER_SETTING]
+AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
+AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
+# do not modify the following if not necessary
+#AudioFormatType=0
+#AudioFormatChannels=2
+#AudioFormatSampleRate=48000
+#AudioFormatBitsPerSample=32
+#AudioFormatSampleSize=4
+#AudioFormatIncrement=8
+
+[CUSTOM_ACTION_256]
+CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
+CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
+CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC
diff --git a/audio/oriole/tuning/waves/tests/test_preset.mps b/audio/oriole/tuning/waves/tests/test_preset.mps
new file mode 100644
index 0000000..bd08ee3
--- /dev/null
+++ b/audio/oriole/tuning/waves/tests/test_preset.mps
Binary files differ
diff --git a/audio/oriole/tuning/waves/waves_config.ini b/audio/oriole/tuning/waves/waves_config.ini
index 99b9604..ba12a8e 100644
--- a/audio/oriole/tuning/waves/waves_config.ini
+++ b/audio/oriole/tuning/waves/waves_config.ini
@@ -1,4 +1,13 @@
 ########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
 # This defined the options of supported sample rates.
 # This can be configured by Waves or platform vendor.
 ########################################################################################################
diff --git a/audio/raven/audio-tables.mk b/audio/raven/audio-tables.mk
index cc64f06..b79674e 100644
--- a/audio/raven/audio-tables.mk
+++ b/audio/raven/audio-tables.mk
@@ -69,4 +69,10 @@
 # Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
 PRODUCT_COPY_FILES += \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
+
+# Waves ini/mps files for unit tests of halcontroller
+PRODUCT_COPY_FILES += \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
+
 endif
diff --git a/audio/raven/config/mixer_paths_factory.xml b/audio/raven/config/mixer_paths_factory.xml
index 57633f5..3326db7 100644
--- a/audio/raven/config/mixer_paths_factory.xml
+++ b/audio/raven/config/mixer_paths_factory.xml
@@ -36,6 +36,14 @@
         <ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
     </path>
 
+    <path name="mfg-record usb-headset-mic">
+        <ctl name="Audio Capture Mic Source" value="USB_MIC"/>
+        <ctl name="USB Capture FORMAT v2" value="1" />
+        <ctl name="USB Config To AoC v2" value="1"/>
+        <ctl name="EP1 TX Mixer USB_TX" value="1"/>
+        <ctl name="MIC Record Soft Gain (dB)" value="0" />
+    </path>
+
     <path name="mic1-status">
         <ctl name="MIC0" value="1" />
     </path>
@@ -233,12 +241,13 @@
     </path>
 
     <path name="mfg-playback usb-headphones">
-        <ctl name="USB Dev ID" value="1" />
-        <ctl name="USB Playback EP ID" value="1" />
-        <ctl name="USB Playback SR" value="48000" />
-        <ctl name="USB Playback CH" value="2" />
-        <ctl name="USB Playback BW" value="16" />
-        <ctl name="USB Config To AoC" value="1" />
+        <ctl name="USB Dev ID v2" value="2" />
+        <ctl name="USB Playback EP ID v2" value="1" />
+        <ctl name="USB Playback FORMAT v2" value="6" />
+        <ctl name="USB Playback SR v2" value="48000" />
+        <ctl name="USB Playback CH v2" value="2" />
+        <ctl name="USB Playback BW v2" value="16" />
+        <ctl name="USB Config To AoC v2" value="1" />
         <ctl name="USB_RX Mixer EP3" value="1" />
     </path>
 
@@ -300,9 +309,15 @@
     </path>
 
     <path name="loopback-usb-mic-speaker">
+        <ctl name="Audio Capture Mic Source" value="USB_MIC" />
+        <ctl name="USB Capture FORMAT v2" value="1" />
+        <ctl name="MIC Record Soft Gain (dB)" value="0" />
     </path>
 
     <path name="loopback-usb-mic-usb-headphone">
+        <ctl name="Audio Capture Mic Source" value="USB_MIC" />
+        <ctl name="USB Capture FORMAT v2" value="1" />
+        <ctl name="MIC Record Soft Gain (dB)" value="0" />
     </path>
 
     <pcm_id name="loopback-mic1" value="EP1 capture (*)"/>
diff --git a/audio/raven/tuning/fortemedia/HEADSET.dat b/audio/raven/tuning/fortemedia/HEADSET.dat
index 9fd56dd..99a8c1c 100644
--- a/audio/raven/tuning/fortemedia/HEADSET.dat
+++ b/audio/raven/tuning/fortemedia/HEADSET.dat
Binary files differ
diff --git a/audio/raven/tuning/fortemedia/HEADSET.mods b/audio/raven/tuning/fortemedia/HEADSET.mods
index 9f29f96..59f0067 100644
--- a/audio/raven/tuning/fortemedia/HEADSET.mods
+++ b/audio/raven/tuning/fortemedia/HEADSET.mods
@@ -1,9 +1,10 @@
 #PLATFORM_NAME  gChip

 #EXPORT_FLAG  HEADSET

 #SINGLE_API_VER  1.1.6

-#SAVE_TIME  2021-08-20 16:33:31

+#SAVE_TIME  2022-01-04 15:20:23

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -905,7 +906,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0000    //RX_SAMPLINGFREQ_SIG

 3    0x0000    //RX_SAMPLINGFREQ_PROC

@@ -1031,9 +1032,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x01F4    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -1071,21 +1072,21 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01F4    //RX_TDDRC_DRC_GAIN

+124    0x0211    //RX_TDDRC_DRC_GAIN

 38    0x0014    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -1159,7 +1160,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000A    //RX_SPK_VOL

+129    0x0009    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1170,21 +1171,21 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C8    //RX_TDDRC_DRC_GAIN

+124    0x0211    //RX_TDDRC_DRC_GAIN

 38    0x0014    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -1258,7 +1259,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0014    //RX_SPK_VOL

+129    0x000F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1269,21 +1270,21 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01D9    //RX_TDDRC_DRC_GAIN

+124    0x0211    //RX_TDDRC_DRC_GAIN

 38    0x0014    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -1357,7 +1358,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0020    //RX_SPK_VOL

+129    0x0019    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    3

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1368,14 +1369,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1456,7 +1457,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0030    //RX_SPK_VOL

+129    0x002B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    4

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1467,14 +1468,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1555,7 +1556,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x004A    //RX_SPK_VOL

+129    0x0048    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1566,14 +1567,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1654,7 +1655,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0087    //RX_SPK_VOL

+129    0x007A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x3000    //RX_TDDRC_ALPHA_UP_1

@@ -1665,14 +1666,14 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x5FFC    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x3000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

@@ -1757,6 +1758,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -1910,7 +1912,7 @@
 147    0x0080    //TX_AEC_REF_GAIN_0

 148    0x0800    //TX_AEC_REF_GAIN_1

 149    0x0800    //TX_AEC_REF_GAIN_2

-150    0x4500    //TX_EAD_THR

+150    0x36B0    //TX_EAD_THR

 151    0x0800    //TX_THR_RE_EST

 152    0x0800    //TX_MIN_EQ_RE_EST_0

 153    0x0800    //TX_MIN_EQ_RE_EST_1

@@ -2658,7 +2660,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0001    //RX_SAMPLINGFREQ_SIG

 3    0x0001    //RX_SAMPLINGFREQ_PROC

@@ -2784,9 +2786,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x01AE    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -2824,13 +2826,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -2838,7 +2840,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01AE    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -2912,7 +2914,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000B    //RX_SPK_VOL

+129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -2923,13 +2925,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -2937,7 +2939,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01B6    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3011,7 +3013,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0012    //RX_SPK_VOL

+129    0x0011    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -3022,13 +3024,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3036,7 +3038,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3121,13 +3123,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3135,7 +3137,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3220,13 +3222,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3234,7 +3236,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3308,7 +3310,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0051    //RX_SPK_VOL

+129    0x0050    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -3319,13 +3321,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3333,7 +3335,7 @@
 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x01C9    //RX_TDDRC_DRC_GAIN

+124    0x01A0    //RX_TDDRC_DRC_GAIN

 38    0x001C    //RX_FDEQ_SUBNUM

 39    0x4848    //RX_FDEQ_GAIN_0

 40    0x4848    //RX_FDEQ_GAIN_1

@@ -3407,7 +3409,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0095    //RX_SPK_VOL

+129    0x0087    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -3418,13 +3420,13 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1C00    //RX_TDDRC_THRD_2

-115    0x1D00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

 117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

@@ -3510,6 +3512,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -4411,7 +4414,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0003    //RX_SAMPLINGFREQ_SIG

 3    0x0003    //RX_SAMPLINGFREQ_PROC

@@ -4537,9 +4540,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x023E    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -4577,38 +4580,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4665,7 +4668,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000B    //RX_SPK_VOL

+129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4676,38 +4679,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4764,7 +4767,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0012    //RX_SPK_VOL

+129    0x0011    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4775,38 +4778,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0236    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4863,7 +4866,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x001F    //RX_SPK_VOL

+129    0x001C    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    3

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4874,38 +4877,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -4962,7 +4965,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0033    //RX_SPK_VOL

+129    0x002F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    4

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -4973,38 +4976,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -5061,7 +5064,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0055    //RX_SPK_VOL

+129    0x004F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -5072,38 +5075,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -5160,7 +5163,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x008F    //RX_SPK_VOL

+129    0x0086    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x5000    //RX_TDDRC_ALPHA_UP_1

@@ -5171,38 +5174,38 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x65AD    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1A00    //RX_TDDRC_THRD_2

-115    0x1A00    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x7EB8    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x5000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x023E    //RX_TDDRC_DRC_GAIN

+124    0x0214    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4E52    //RX_FDEQ_GAIN_0

-40    0x5252    //RX_FDEQ_GAIN_1

-41    0x5252    //RX_FDEQ_GAIN_2

-42    0x5250    //RX_FDEQ_GAIN_3

-43    0x4C46    //RX_FDEQ_GAIN_4

-44    0x4748    //RX_FDEQ_GAIN_5

-45    0x5768    //RX_FDEQ_GAIN_6

-46    0x6162    //RX_FDEQ_GAIN_7

-47    0x5252    //RX_FDEQ_GAIN_8

-48    0x5256    //RX_FDEQ_GAIN_9

-49    0x5248    //RX_FDEQ_GAIN_10

-50    0x3434    //RX_FDEQ_GAIN_11

-51    0x3436    //RX_FDEQ_GAIN_12

-52    0x2A18    //RX_FDEQ_GAIN_13

-53    0x1830    //RX_FDEQ_GAIN_14

-54    0x3648    //RX_FDEQ_GAIN_15

+39    0x6270    //RX_FDEQ_GAIN_0

+40    0x7A70    //RX_FDEQ_GAIN_1

+41    0x7270    //RX_FDEQ_GAIN_2

+42    0x6A70    //RX_FDEQ_GAIN_3

+43    0x645A    //RX_FDEQ_GAIN_4

+44    0x5A5E    //RX_FDEQ_GAIN_5

+45    0x6E72    //RX_FDEQ_GAIN_6

+46    0x7268    //RX_FDEQ_GAIN_7

+47    0x665A    //RX_FDEQ_GAIN_8

+48    0x5A5A    //RX_FDEQ_GAIN_9

+49    0x5A64    //RX_FDEQ_GAIN_10

+50    0x6448    //RX_FDEQ_GAIN_11

+51    0x4949    //RX_FDEQ_GAIN_12

+52    0x4848    //RX_FDEQ_GAIN_13

+53    0x4848    //RX_FDEQ_GAIN_14

+54    0x4848    //RX_FDEQ_GAIN_15

 55    0x4848    //RX_FDEQ_GAIN_16

 56    0x4848    //RX_FDEQ_GAIN_17

 57    0x4848    //RX_FDEQ_GAIN_18

@@ -5263,6 +5266,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-USB_BLACKBIRD-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -6164,7 +6168,7 @@
 895    0xCCCC    //TX_FASTNS_SSA_THLFH

 896    0xD999    //TX_FASTNS_SSA_THHFH

 #RX

-0    0x002C    //RX_RECVFUNC_MODE_0

+0    0x042C    //RX_RECVFUNC_MODE_0

 1    0x0000    //RX_RECVFUNC_MODE_1

 2    0x0004    //RX_SAMPLINGFREQ_SIG

 3    0x0004    //RX_SAMPLINGFREQ_PROC

@@ -6290,9 +6294,9 @@
 123    0x0CCD    //RX_TDDRC_SMT_W

 124    0x0240    //RX_TDDRC_DRC_GAIN

 125    0x7C00    //RX_LAMBDA_PKA_FP

-126    0x2000    //RX_TPKA_FP

-127    0x2000    //RX_MIN_G_FP

-128    0x0080    //RX_MAX_G_FP

+126    0x280A    //RX_TPKA_FP

+127    0x032D    //RX_MIN_G_FP

+128    0x0A00    //RX_MAX_G_FP

 129    0x000A    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 131    0x0000    //RX_MAXLEVEL_CNG

@@ -6330,35 +6334,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6418,7 +6422,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x000A    //RX_SPK_VOL

+129    0x000B    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    1

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6429,35 +6433,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6517,7 +6521,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0010    //RX_SPK_VOL

+129    0x0012    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    2

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6528,35 +6532,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6616,7 +6620,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x001C    //RX_SPK_VOL

+129    0x001F    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    3

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6627,35 +6631,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6715,7 +6719,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x002F    //RX_SPK_VOL

+129    0x0034    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    4

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6726,35 +6730,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6814,7 +6818,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x004F    //RX_SPK_VOL

+129    0x0056    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    5

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6825,35 +6829,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -6913,7 +6917,7 @@
 108    0x5333    //RX_FDDRC_SLANT_1_2

 109    0x5333    //RX_FDDRC_SLANT_1_3

 110    0x0000    //RX_FDDRC_RESRV_0

-129    0x0081    //RX_SPK_VOL

+129    0x0090    //RX_SPK_VOL

 130    0x0000    //RX_VOL_RESRV_0

 #VOL    6

 6    0x1000    //RX_TDDRC_ALPHA_UP_1

@@ -6924,35 +6928,35 @@
 28    0x7EB8    //RX_TDDRC_ALPHA_DWN_2

 29    0x7EB8    //RX_TDDRC_ALPHA_DWN_3

 32    0x7EB8    //RX_TDDRC_ALPHA_DWN_4

-33    0x7FFF    //RX_TDDRC_LIMITER_THRD

+33    0x7220    //RX_TDDRC_LIMITER_THRD

 34    0x0800    //RX_TDDRC_LIMITER_GAIN

 112    0x0000    //RX_TDDRC_THRD_0

 113    0x0000    //RX_TDDRC_THRD_1

-114    0x1200    //RX_TDDRC_THRD_2

-115    0x1900    //RX_TDDRC_THRD_3

-116    0x3000    //RX_TDDRC_SLANT_0

-117    0x6E00    //RX_TDDRC_SLANT_1

+114    0x1800    //RX_TDDRC_THRD_2

+115    0x1800    //RX_TDDRC_THRD_3

+116    0x7FFF    //RX_TDDRC_SLANT_0

+117    0x7FFF    //RX_TDDRC_SLANT_1

 118    0x1000    //RX_TDDRC_ALPHA_UP_0

 119    0x7EB8    //RX_TDDRC_ALPHA_DWN_0

 120    0x0000    //RX_TDDRC_HMNC_FLAG

 121    0x199A    //RX_TDDRC_HMNC_GAIN

 122    0x0001    //RX_TDDRC_SMT_FLAG

 123    0x0CCD    //RX_TDDRC_SMT_W

-124    0x0240    //RX_TDDRC_DRC_GAIN

+124    0x0231    //RX_TDDRC_DRC_GAIN

 38    0x0020    //RX_FDEQ_SUBNUM

-39    0x4852    //RX_FDEQ_GAIN_0

-40    0x5858    //RX_FDEQ_GAIN_1

-41    0x5C5A    //RX_FDEQ_GAIN_2

-42    0x4F50    //RX_FDEQ_GAIN_3

-43    0x5A61    //RX_FDEQ_GAIN_4

-44    0x605B    //RX_FDEQ_GAIN_5

-45    0x5050    //RX_FDEQ_GAIN_6

-46    0x5050    //RX_FDEQ_GAIN_7

-47    0x5044    //RX_FDEQ_GAIN_8

-48    0x3633    //RX_FDEQ_GAIN_9

-49    0x3424    //RX_FDEQ_GAIN_10

-50    0x1A24    //RX_FDEQ_GAIN_11

-51    0x2B37    //RX_FDEQ_GAIN_12

+39    0x4858    //RX_FDEQ_GAIN_0

+40    0x6265    //RX_FDEQ_GAIN_1

+41    0x6568    //RX_FDEQ_GAIN_2

+42    0x5654    //RX_FDEQ_GAIN_3

+43    0x676E    //RX_FDEQ_GAIN_4

+44    0x6E6B    //RX_FDEQ_GAIN_5

+45    0x5B5F    //RX_FDEQ_GAIN_6

+46    0x5864    //RX_FDEQ_GAIN_7

+47    0x6548    //RX_FDEQ_GAIN_8

+48    0x4848    //RX_FDEQ_GAIN_9

+49    0x4848    //RX_FDEQ_GAIN_10

+50    0x4848    //RX_FDEQ_GAIN_11

+51    0x4848    //RX_FDEQ_GAIN_12

 52    0x4848    //RX_FDEQ_GAIN_13

 53    0x4848    //RX_FDEQ_GAIN_14

 54    0x4848    //RX_FDEQ_GAIN_15

@@ -7016,6 +7020,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -8769,6 +8774,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -10522,6 +10528,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -12275,6 +12282,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -14028,6 +14036,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -15781,6 +15790,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -17534,6 +17544,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -19287,6 +19298,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-RESERVE1-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -21040,6 +21052,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -22793,6 +22806,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -24546,6 +24560,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -26299,6 +26314,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_HEADPHONE-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -28052,6 +28068,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -29805,6 +29822,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -31558,6 +31576,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -33311,6 +33330,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-GOOGLE_CONDOR_CERTIFICATION1-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -35064,6 +35084,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -36817,6 +36838,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -38570,6 +38592,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -40323,6 +40346,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_HCO-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -42076,6 +42100,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -43829,6 +43854,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -45582,6 +45608,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -47335,6 +47362,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_VCO-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -49088,6 +49116,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-NB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -50841,6 +50870,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-WB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -52594,6 +52624,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-SWB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

@@ -54347,6 +54378,7 @@
 130    0x0000    //RX_VOL_RESRV_0

 

 #CASE_NAME  HEADSET-TTY_FULL-VOICE_GENERIC-FB

+#PARAM_MODE  FULL

 #PARAM_TYPE  TX+RX

 #TOTAL_CUSTOM_STEP  7

 #TX

diff --git a/audio/raven/tuning/waves/tests/test_config.ini b/audio/raven/tuning/waves/tests/test_config.ini
new file mode 100644
index 0000000..ba12a8e
--- /dev/null
+++ b/audio/raven/tuning/waves/tests/test_config.ini
@@ -0,0 +1,58 @@
+########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
+# This defined the options of supported sample rates.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_SAMPLE_RATES]
+SR_COMMON   = 48000
+
+########################################################################################################
+# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_ORIENTATION_SUBTYPES]
+OST_SPEAKER = 0:12,90:13,180:12,270:0|13
+
+########################################################################################################
+# This defines available preset configurations.
+# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
+########################################################################################################
+[HAL_SUPPORTED_PRESETS]
+SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
+HEADSET_MUSIC = OM:2,SM:2
+
+########################################################################################################
+# This defines available CONTROL configurations. Only define the CONTROL if you need it.
+# The numbers could vary from device to device.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_CONTROLS]
+SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
+A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+
+[COEFS_CONVERTER_SETTING]
+AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
+AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
+# do not modify the following if not necessary
+#AudioFormatType=0
+#AudioFormatChannels=2
+#AudioFormatSampleRate=48000
+#AudioFormatBitsPerSample=32
+#AudioFormatSampleSize=4
+#AudioFormatIncrement=8
+
+[CUSTOM_ACTION_256]
+CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
+CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
+CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC
diff --git a/audio/raven/tuning/waves/tests/test_preset.mps b/audio/raven/tuning/waves/tests/test_preset.mps
new file mode 100644
index 0000000..bd08ee3
--- /dev/null
+++ b/audio/raven/tuning/waves/tests/test_preset.mps
Binary files differ
diff --git a/audio/raven/tuning/waves/waves_config.ini b/audio/raven/tuning/waves/waves_config.ini
index 99b9604..ba12a8e 100644
--- a/audio/raven/tuning/waves/waves_config.ini
+++ b/audio/raven/tuning/waves/waves_config.ini
@@ -1,4 +1,13 @@
 ########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
 # This defined the options of supported sample rates.
 # This can be configured by Waves or platform vendor.
 ########################################################################################################
diff --git a/audio/slider/audio-tables.mk b/audio/slider/audio-tables.mk
index 5bab01f..03783c2 100644
--- a/audio/slider/audio-tables.mk
+++ b/audio/slider/audio-tables.mk
@@ -63,4 +63,10 @@
 # Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
 PRODUCT_COPY_FILES += \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
+
+# Waves ini/mps files for unit tests of halcontroller
+PRODUCT_COPY_FILES += \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
+
 endif
diff --git a/audio/slider/tuning/waves/tests/test_config.ini b/audio/slider/tuning/waves/tests/test_config.ini
new file mode 100644
index 0000000..ba12a8e
--- /dev/null
+++ b/audio/slider/tuning/waves/tests/test_config.ini
@@ -0,0 +1,58 @@
+########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
+# This defined the options of supported sample rates.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_SAMPLE_RATES]
+SR_COMMON   = 48000
+
+########################################################################################################
+# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_ORIENTATION_SUBTYPES]
+OST_SPEAKER = 0:12,90:13,180:12,270:0|13
+
+########################################################################################################
+# This defines available preset configurations.
+# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
+########################################################################################################
+[HAL_SUPPORTED_PRESETS]
+SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
+HEADSET_MUSIC = OM:2,SM:2
+
+########################################################################################################
+# This defines available CONTROL configurations. Only define the CONTROL if you need it.
+# The numbers could vary from device to device.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_CONTROLS]
+SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
+A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+
+[COEFS_CONVERTER_SETTING]
+AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
+AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
+# do not modify the following if not necessary
+#AudioFormatType=0
+#AudioFormatChannels=2
+#AudioFormatSampleRate=48000
+#AudioFormatBitsPerSample=32
+#AudioFormatSampleSize=4
+#AudioFormatIncrement=8
+
+[CUSTOM_ACTION_256]
+CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
+CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
+CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC
diff --git a/audio/slider/tuning/waves/tests/test_preset.mps b/audio/slider/tuning/waves/tests/test_preset.mps
new file mode 100644
index 0000000..bd08ee3
--- /dev/null
+++ b/audio/slider/tuning/waves/tests/test_preset.mps
Binary files differ
diff --git a/audio/slider/tuning/waves/waves_config.ini b/audio/slider/tuning/waves/waves_config.ini
index 99b9604..ba12a8e 100644
--- a/audio/slider/tuning/waves/waves_config.ini
+++ b/audio/slider/tuning/waves/waves_config.ini
@@ -1,4 +1,13 @@
 ########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
 # This defined the options of supported sample rates.
 # This can be configured by Waves or platform vendor.
 ########################################################################################################
diff --git a/audio/whitefin/audio-tables.mk b/audio/whitefin/audio-tables.mk
index 4b13502..b299e4b 100644
--- a/audio/whitefin/audio-tables.mk
+++ b/audio/whitefin/audio-tables.mk
@@ -63,4 +63,10 @@
 # Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
 PRODUCT_COPY_FILES += \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
+
+# Waves ini/mps files for unit tests of halcontroller
+PRODUCT_COPY_FILES += \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
+
 endif
diff --git a/audio/whitefin/tuning/waves/tests/test_config.ini b/audio/whitefin/tuning/waves/tests/test_config.ini
new file mode 100644
index 0000000..ba12a8e
--- /dev/null
+++ b/audio/whitefin/tuning/waves/tests/test_config.ini
@@ -0,0 +1,58 @@
+########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
+# This defined the options of supported sample rates.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_SAMPLE_RATES]
+SR_COMMON   = 48000
+
+########################################################################################################
+# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_ORIENTATION_SUBTYPES]
+OST_SPEAKER = 0:12,90:13,180:12,270:0|13
+
+########################################################################################################
+# This defines available preset configurations.
+# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
+########################################################################################################
+[HAL_SUPPORTED_PRESETS]
+SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
+SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
+HEADSET_MUSIC = OM:2,SM:2
+
+########################################################################################################
+# This defines available CONTROL configurations. Only define the CONTROL if you need it.
+# The numbers could vary from device to device.
+# This can be configured by Waves or platform vendor.
+########################################################################################################
+[HAL_SUPPORTED_CONTROLS]
+SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
+A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
+
+[COEFS_CONVERTER_SETTING]
+AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
+AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
+# do not modify the following if not necessary
+#AudioFormatType=0
+#AudioFormatChannels=2
+#AudioFormatSampleRate=48000
+#AudioFormatBitsPerSample=32
+#AudioFormatSampleSize=4
+#AudioFormatIncrement=8
+
+[CUSTOM_ACTION_256]
+CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
+CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
+CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC
diff --git a/audio/whitefin/tuning/waves/tests/test_preset.mps b/audio/whitefin/tuning/waves/tests/test_preset.mps
new file mode 100644
index 0000000..bd08ee3
--- /dev/null
+++ b/audio/whitefin/tuning/waves/tests/test_preset.mps
Binary files differ
diff --git a/audio/whitefin/tuning/waves/waves_config.ini b/audio/whitefin/tuning/waves/waves_config.ini
index 99b9604..ba12a8e 100644
--- a/audio/whitefin/tuning/waves/waves_config.ini
+++ b/audio/whitefin/tuning/waves/waves_config.ini
@@ -1,4 +1,13 @@
 ########################################################################################################
+# (Optional) The supported features list for platform vendors to query from.
+# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
+# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
+# Putting any value other than 1 would be equivalent to not supported.
+########################################################################################################
+[HAL_SUPPORTED_FEATURES]
+CUSTOM_ACTION_256=1
+
+########################################################################################################
 # This defined the options of supported sample rates.
 # This can be configured by Waves or platform vendor.
 ########################################################################################################
diff --git a/conf/init.raven.rc b/conf/init.raven.rc
index af9fbfc..4d5d2a9 100644
--- a/conf/init.raven.rc
+++ b/conf/init.raven.rc
@@ -11,10 +11,6 @@
     # Power Stats HAL
     chown system system /sys/devices/platform/10d30000.spi/spi_master/spi10/spi10.0/uwb/power_stats
 
-on fs
-    # Face
-    exec_background - system shell -- /vendor/bin/trusty_apploader /vendor/firmware/faceauth.app
-
 on property:vendor.mfgapi.touchpanel.permission=1
     chmod 0600 /sys/devices/virtual/sec/tsp/cmd
     chown system system /sys/devices/virtual/sec/tsp/cmd
diff --git a/conf/init.raviole.rc b/conf/init.raviole.rc
index 330eacf..ed55764 100644
--- a/conf/init.raviole.rc
+++ b/conf/init.raviole.rc
@@ -1,5 +1,10 @@
 # Raven/Oriole specific init.rc
 
+on init
+    # NFC streset tool name
+    setprop persist.vendor.nfc.streset libstreset21
+    setprop persist.vendor.se.streset libstreset21
+
 on init && property:ro.vendor.factory=1
     import /vendor/etc/init/hw/init.factory.rc
 
diff --git a/conf/init.slider.rc b/conf/init.slider.rc
index a6c8d2c..f8506a5 100644
--- a/conf/init.slider.rc
+++ b/conf/init.slider.rc
@@ -1,6 +1,11 @@
 # Slider specific init.rc
 import /vendor/etc/init/hw/init.gs101.rc
 
+on init
+    # NFC streset tool name
+    setprop persist.vendor.nfc.streset libstreset21
+    setprop persist.vendor.se.streset libstreset21
+
 # When ro.build.flavor=factory_slider-userdebug, add vendor/bin/factory to default path
 on init && property:ro.build.flavor=factory_slider-userdebug
     import /vendor/etc/init/hw/init.factory.rc
diff --git a/conf/init.whitefin.rc b/conf/init.whitefin.rc
index e0fe9d9..f74abbb 100644
--- a/conf/init.whitefin.rc
+++ b/conf/init.whitefin.rc
@@ -1,6 +1,11 @@
 # Whitefin specific init.rc
 import /vendor/etc/init/hw/init.gs101.rc
 
+on init
+    # NFC streset tool name
+    setprop persist.vendor.nfc.streset libstreset21
+    setprop persist.vendor.se.streset libstreset21
+
 on init && property:ro.build.flavor=factory_whitefin-userdebug
     import /vendor/etc/init/hw/init.factory.rc
 
diff --git a/device-oriole.mk b/device-oriole.mk
index e7f7fe8..0b99a01 100644
--- a/device-oriole.mk
+++ b/device-oriole.mk
@@ -25,6 +25,7 @@
 $(call inherit-product-if-exists, vendor/google/camera/devices/raviole/oriole/device-vendor.mk)
 $(call inherit-product-if-exists, vendor/google_devices/raviole/proprietary/WallpapersOriole.mk)
 
+GOODIX_CONFIG_BUILD_VERSION := g6_trusty
 DEVICE_PACKAGE_OVERLAYS += device/google/raviole/oriole/overlay
 
 include device/google/raviole/audio/oriole/audio-tables.mk
@@ -38,6 +39,8 @@
 include device/google/gs101/fingerprint/udfps_factory.mk
 endif
 
+SOONG_CONFIG_lyric_tuning_product := oriole
+SOONG_CONFIG_google3a_config_target_device := oriole
 
 # Init files
 PRODUCT_COPY_FILES += \
@@ -75,6 +78,9 @@
 PRODUCT_PACKAGES_DEBUG += \
     sar_test
 
+# WirelessCharger
+DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product_wireless.xml
+
 # MIPI Coex Configs
 PRODUCT_COPY_FILES += \
     device/google/raviole/radio/oriole_display_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/display_primary_mipi_coex_table.csv \
@@ -92,18 +98,39 @@
 
 # NFC
 PRODUCT_COPY_FILES += \
+	frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
+	frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
+	frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
 	device/google/raviole/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
 	device/google/raviole/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
 
+PRODUCT_PACKAGES += \
+	NfcNci \
+	Tag \
+	android.hardware.nfc@1.2-service.st
+
+# SecureElement
+PRODUCT_PACKAGES += \
+	android.hardware.secure_element@1.2-service-gto
+
+PRODUCT_COPY_FILES += \
+	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
+	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
+        device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
 
 DEVICE_MANIFEST_FILE += \
-	device/google/gs101/nfc/manifest_se_gs101.xml
+	device/google/raviole/nfc/manifest_nfc.xml \
+	device/google/raviole/nfc/manifest_se.xml
 
 # Vibrator HAL
 PRODUCT_PRODUCT_PROPERTIES +=\
     ro.vendor.vibrator.hal.long.frequency.shift=15
-PRODUCT_PRODUCT_PROPERTIES += \
+PRODUCT_VENDOR_PROPERTIES += \
         vendor.powerhal.adpf.rate=11111111
+ACTUATOR_MODEL := luxshare_ict_081545
 
 # Voice packs for Text-To-Speech
 PRODUCT_COPY_FILES += \
@@ -175,3 +202,14 @@
 # Enable camera exif model/make reporting
 PRODUCT_VENDOR_PROPERTIES += \
     persist.vendor.camera.exif_reveal_make_model=true
+
+# Override default distortion output gain according to UX experiments
+PRODUCT_PRODUCT_PROPERTIES += \
+    vendor.audio.hapticgenerator.distortion.output.gain=0.5
+
+# Set zram size
+PRODUCT_VENDOR_PROPERTIES += \
+    vendor.zram.size=3g
+
+# This device is shipped with 31 (Android S)
+PRODUCT_SHIPPING_API_LEVEL := 31
diff --git a/device-raven.mk b/device-raven.mk
index 8b74d73..074e193 100644
--- a/device-raven.mk
+++ b/device-raven.mk
@@ -25,6 +25,7 @@
 $(call inherit-product-if-exists, vendor/google/camera/devices/raviole/raven/device-vendor.mk)
 $(call inherit-product-if-exists, vendor/google_devices/raviole/proprietary/WallpapersRaven.mk)
 
+GOODIX_CONFIG_BUILD_VERSION := g6_trusty
 DEVICE_PACKAGE_OVERLAYS += device/google/raviole/raven/overlay
 
 include device/google/raviole/audio/raven/audio-tables.mk
@@ -39,10 +40,14 @@
 
 ifeq ($(filter factory_raven, $(TARGET_PRODUCT)),)
 include device/google/gs101/uwb/uwb.mk
+include device/google/raviole/uwb/uwb_calibration.mk
 endif
 
 include hardware/google/pixel/vibrator/cs40l25/device.mk
 
+SOONG_CONFIG_lyric_tuning_product := raven
+SOONG_CONFIG_google3a_config_target_device := raven
+
 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.support_kernel_idle_timer=true
 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.enable_frame_rate_override=true
 
@@ -79,6 +84,9 @@
 PRODUCT_PACKAGES_DEBUG += \
     sar_test
 
+# WirelessCharger
+DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product_wireless.xml
+
 # MIPI Coex Configs
 PRODUCT_COPY_FILES += \
 	device/google/raviole/radio/raven_camera_rear_tele_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_rear_tele_mipi_coex_table.csv
@@ -93,21 +101,51 @@
 	device/google/raviole/raven/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb
 
 #config of display brightness dimming
-PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.brightness.dimming.usage=2
+PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.brightness.dimming.usage=1
 
 # NFC
 PRODUCT_COPY_FILES += \
+	frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
+	frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
+	frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml
+
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+PRODUCT_COPY_FILES += \
+	device/google/raviole/nfc/libnfc-hal-st-debug.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
+	device/google/raviole/nfc/libnfc-nci-raven-debug.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
+else
+PRODUCT_COPY_FILES += \
 	device/google/raviole/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
 	device/google/raviole/nfc/libnfc-nci-raven.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
+endif
+
+PRODUCT_PACKAGES += \
+	NfcNci \
+	Tag \
+	android.hardware.nfc@1.2-service.st
+
+# SecureElement
+PRODUCT_PACKAGES += \
+	android.hardware.secure_element@1.2-service-gto
+
+PRODUCT_COPY_FILES += \
+	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
+	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
+        device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
 
 DEVICE_MANIFEST_FILE += \
-	device/google/gs101/nfc/manifest_se_gs101.xml
+	device/google/raviole/nfc/manifest_nfc.xml \
+	device/google/raviole/nfc/manifest_se.xml
 
 # Vibrator HAL
 PRODUCT_PRODUCT_PROPERTIES +=\
     ro.vendor.vibrator.hal.long.frequency.shift=15
-PRODUCT_PRODUCT_PROPERTIES += \
-        vendor.powerhal.adpf.rate=8333333
+PRODUCT_VENDOR_PROPERTIES += \
+    vendor.powerhal.adpf.rate=8333333
+ACTUATOR_MODEL := luxshare_ict_081545
 
 # Voice packs for Text-To-Speech
 PRODUCT_COPY_FILES += \
@@ -180,3 +218,14 @@
 # Enable camera exif model/make reporting
 PRODUCT_VENDOR_PROPERTIES += \
     persist.vendor.camera.exif_reveal_make_model=true
+
+# Override default distortion output gain according to UX experiments
+PRODUCT_PRODUCT_PROPERTIES += \
+    vendor.audio.hapticgenerator.distortion.output.gain=0.5
+
+# Set zram size
+PRODUCT_VENDOR_PROPERTIES += \
+    vendor.zram.size=3g
+
+# This device is shipped with 31 (Android S)
+PRODUCT_SHIPPING_API_LEVEL := 31
diff --git a/device-slider.mk b/device-slider.mk
index 8acb9ff..26ea3a0 100644
--- a/device-slider.mk
+++ b/device-slider.mk
@@ -28,6 +28,12 @@
 include device/google/raviole/audio/slider/audio-tables.mk
 include hardware/google/pixel/vibrator/cs40l25/device.mk
 
+SOONG_CONFIG_lyric_tuning_product := slider
+SOONG_CONFIG_google3a_config_target_device := slider
+
+# WirelessCharger
+DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product_wireless.xml
+
 # Init files
 PRODUCT_COPY_FILES += \
 	device/google/raviole/conf/init.slider.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.slider.rc
@@ -58,23 +64,46 @@
 
 # SecureElement
 PRODUCT_PACKAGES += \
-    android.hardware.secure_element@1.2-service-gto \
-    android.hardware.secure_element@1.2-service-gto-ese2
+    android.hardware.secure_element@1.2-service-gto
 
 PRODUCT_COPY_FILES += \
-    device/google/gs101/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \
-    device/google/gs101/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf
+    device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
 
 # NFC
 PRODUCT_COPY_FILES += \
+	frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
+	frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
+	frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
 	device/google/raviole/nfc/libnfc-hal-st-disable.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
 	device/google/raviole/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
 
+PRODUCT_PACKAGES += \
+	NfcNci \
+	Tag \
+	android.hardware.nfc@1.2-service.st
+
+# SecureElement
+PRODUCT_PACKAGES += \
+	android.hardware.secure_element@1.2-service-gto
+
+PRODUCT_COPY_FILES += \
+	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
+	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
+        device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \
+	device/google/raviole/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf
+
 DEVICE_MANIFEST_FILE += \
-	device/google/gs101/nfc/manifest_se_gs101.xml
+	device/google/raviole/nfc/manifest_nfc.xml \
+	device/google/raviole/nfc/manifest_se.xml
 
 # PowerStats HAL
 PRODUCT_SOONG_NAMESPACES += device/google/raviole/powerstats/slider
 
 # Trusty liboemcrypto.so
 PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
+
+# This device is shipped with 31 (Android S)
+PRODUCT_SHIPPING_API_LEVEL := 31
diff --git a/device-whitefin.mk b/device-whitefin.mk
index a61250b..1b1d5c3 100644
--- a/device-whitefin.mk
+++ b/device-whitefin.mk
@@ -28,6 +28,12 @@
 include hardware/google/pixel/vibrator/drv2624/device.mk
 include device/google/raviole/audio/whitefin/audio-tables.mk
 
+SOONG_CONFIG_lyric_tuning_product := slider
+SOONG_CONFIG_google3a_config_target_device := slider
+
+# WirelessCharger
+DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product_wireless.xml
+
 # Init files
 PRODUCT_COPY_FILES += \
 	device/google/raviole/conf/init.whitefin.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.whitefin.rc
@@ -57,10 +63,28 @@
 
 # NFC
 PRODUCT_COPY_FILES += \
-	device/google/gs101/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf
+	frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
+	frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
+	frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
+	frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
+	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
+	device/google/raviole/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
+	device/google/raviole/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
+
+PRODUCT_PACKAGES += \
+	NfcNci \
+	Tag \
+	android.hardware.nfc@1.2-service.st
+
+DEVICE_MANIFEST_FILE += \
+	device/google/raviole/nfc/manifest_nfc.xml
 
 # PowerStats HAL
 PRODUCT_SOONG_NAMESPACES += device/google/raviole/powerstats/whitefin
 
 # Trusty liboemcrypto.so
 PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
+
+# This device is shipped with 31 (Android S)
+PRODUCT_SHIPPING_API_LEVEL := 31
diff --git a/nfc/libnfc-hal-st-debug.conf b/nfc/libnfc-hal-st-debug.conf
new file mode 100644
index 0000000..5fdaf5e
--- /dev/null
+++ b/nfc/libnfc-hal-st-debug.conf
@@ -0,0 +1,159 @@
+########################### Start of libnf-hal-st_aosp.conf ###########################
+
+###############################################################################
+###############################################################################
+# ST HAL trace log level
+STNFC_HAL_LOGLEVEL=4
+NFC_DEBUG_ENABLED=1
+
+###############################################################################
+# Vendor specific mode to enable FW (RF & SWP) traces.
+STNFC_FW_DEBUG_ENABLED=1
+
+###############################################################################
+# File used for NFA storage
+NFA_STORAGE="/data/nfc"
+
+###############################################################################
+# Keep the nfa storage file.
+PRESERVE_STORAGE=1
+
+###############################################################################
+# In Switch OFF mode (phone switched-off), specify the desired CE mode to
+# the controller.
+# 0: No card-emulation; DEFAULT
+# 1: Switch-off card-emulation enabled
+CE_ON_SWITCH_OFF_STATE=1
+
+###############################################################################
+# Vendor specific mode to support the USB charging mode if VPSIO=1 in switch off.
+STNFC_USB_CHARGING_MODE=1
+
+###############################################################################
+# Vendor Specific Proprietary Protocol & Discovery Configuration
+# Set to 0xFF if unsupported
+#  byte[0] NCI_PROTOCOL_18092_ACTIVE
+#  byte[1] NCI_PROTOCOL_B_PRIME
+#  byte[2] NCI_PROTOCOL_DUAL
+#  byte[3] NCI_PROTOCOL_15693
+#  byte[4] NCI_PROTOCOL_KOVIO
+#  byte[5] NCI_PROTOCOL_MIFARE
+#  byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO
+#  byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME
+#  byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME
+NFA_PROPRIETARY_CFG={05:FF:FF:06:8A:90:77:FF:FF}
+
+###############################################################################
+# Choose the presence-check algorithm for type-4 tag.  If not defined,
+# the default value is 1.
+# 0  NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm
+# 1  NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block
+# 2  NFA_RW_PRES_CHK_RESET; Deactivate to Sleep, then re-activate
+# 3  NFA_RW_PRES_CHK_RB_CH0; Type-4 tag protocol's ReadBinary command on channel 0
+# 4  NFA_RW_PRES_CHK_RB_CH3; Type-4 tag protocol's ReadBinary command on channel 3
+# 5  NFA_RW_PRES_CHK_ISO_DEP_NAK; presence check command ISO-DEP NAK as per NCI2.0
+PRESENCE_CHECK_ALGORITHM=5
+
+###############################################################################
+# Name of the NCI HAL module to use
+# If unset, falls back to nfc_nci.bcm2079x
+NCI_HAL_MODULE="nfc_nci.st21nfc"
+
+###############################################################################
+# White list to be set at startup.
+DEVICE_HOST_WHITE_LIST={02:C0}
+
+###############################################################################
+# BAIL OUT value for P2P
+# Implements algorithm for NFC-DEP protocol priority over ISO-DEP protocol.
+POLL_BAIL_OUT_MODE=1
+
+###############################################################################
+# Extended APDU length for ISO_DEP
+ISO_DEP_MAX_TRANSCEIVE=0xFEFF
+
+###############################################################################
+# Configure the NFC Extras to open and use a static pipe.  If the value is
+# not set or set to 0, then the default is use a dynamic pipe based on a
+# destination gate (see NFA_HCI_DEFAULT_DEST_GATE).  Note there is a value
+# for each EE (ESE/SIM)
+OFF_HOST_ESE_PIPE_ID=0x5E
+OFF_HOST_SIM_PIPE_ID=0x3E
+
+###############################################################################
+#Set the default Felica T3T System Code OffHost route Location :
+#This settings will be used when application does not set this parameter
+# host  0x00
+# eSE   0x82 (eSE),    0x86 (eUICC/SPI-SE)
+# UICC  0x81 (UICC_1), 0x85 (UICC_2)
+DEFAULT_SYS_CODE_ROUTE=0x86
+
+###############################################################################
+#Set the Felica T3T System Code supported power state:
+DEFAULT_SYS_CODE_PWR_STATE=0x3B
+
+###############################################################################
+# Path and Files used for FW update binaries storage
+STNFC_FW_PATH_STORAGE="/vendor/firmware"
+STNFC_FW_BIN_NAME="/st54j_fw.bin"
+STNFC_FW_CONF_NAME="/st54j_conf.bin"
+
+###############################################################################
+# Default off-host route for Felica.
+# This settings will be used when application does not set this parameter
+# host  0x00
+# eSE   0x82 (eSE),    0x86 (eUICC/SPI-SE)
+# UICC  0x81 (UICC_1), 0x85 (UICC_2)
+DEFAULT_NFCF_ROUTE=0x86
+
+###############################################################################
+# Configure the default off-host route.
+# used for technology A and B routing
+# eSE   0x82 (eSE),    0x86 (eUICC/SPI-SE)
+# UICC  0x81 (UICC_1), 0x85 (UICC_2)
+DEFAULT_OFFHOST_ROUTE=0x81
+
+###############################################################################
+# Configure the default AID route.
+# host  0x00
+# eSE   0x82 (eSE),    0x86 (eUICC/SPI-SE)
+# UICC  0x81 (UICC_1), 0x85 (UICC_2)
+DEFAULT_ROUTE=0x00
+
+###############################################################################
+# Configure the NFCEEIDs of offhost UICC.
+# UICC  0x81 (UICC_1), 0x85 (UICC_2)
+OFFHOST_ROUTE_UICC={81}
+
+###############################################################################
+# Configure the NFCEEIDs of offhost eSEs.
+# eSE   0x82 (eSE),    0x86 (eUICC/SPI-SE)
+OFFHOST_ROUTE_ESE={86}
+
+###############################################################################
+# Configure the list of NFCEE for the ISO-DEP routing.
+# host  0x00
+# eSE   0x82 (eSE),    0x86 (eUICC/SPI-SE)
+# UICC  0x81 (UICC_1), 0x85 (UICC_2)
+DEFAULT_ISODEP_ROUTE=0x81
+
+###############################################################################
+# Configure the HAL Clock control
+# enable  0x01
+# disable 0x00 default value
+STNFC_CONTROL_CLK=0x01
+
+################################################################################
+# Configure the ACTIVE_RW timer
+# Default 0x00, set 0x01 to enable it
+STNFC_ACTIVERW_TIMER=0x01
+
+################################################################################
+# Core configuration settings
+CORE_CONF_PROP={ 20, 02, 0a, 03,
+        a1, 01, 1e,
+        a2, 01, 19,
+        80, 01, 01
+}
+
+
diff --git a/nfc/libnfc-nci-raven-debug.conf b/nfc/libnfc-nci-raven-debug.conf
new file mode 100644
index 0000000..e530888
--- /dev/null
+++ b/nfc/libnfc-nci-raven-debug.conf
@@ -0,0 +1,121 @@
+###############################################################################
+# Application options
+NFC_DEBUG_ENABLED=1
+
+###############################################################################
+# File used for NFA storage
+NFA_STORAGE="/data/nfc"
+
+###############################################################################
+# Force UICC to only listen to the following technology(s).
+# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
+# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | NFA_TECHNOLOGY_MASK_F
+UICC_LISTEN_TECH_MASK=0x07
+
+###############################################################################
+# Set HOST default listen to the following technology(s).
+# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
+# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F
+# 0x07 = A + B + F
+HOST_LISTEN_TECH_MASK=0x07
+
+###############################################################################
+# AID for Empty Select command
+# If specified, this AID will be substituted when an Empty SELECT command is
+# detected.  The first byte is the length of the AID.  Maximum length is 16.
+AID_FOR_EMPTY_SELECT={08:A0:00:00:01:51:00:00:00}
+
+###############################################################################
+# When screen is turned off, specify the desired power state of the controller.
+# 0: power-off-sleep state; DEFAULT
+# 1: full-power state
+# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used)
+SCREEN_OFF_POWER_STATE=1
+
+###############################################################################
+# Force tag polling for the following technology(s).
+# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
+# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B |
+#            NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 |
+#            NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_KOVIO |
+#            NFA_TECHNOLOGY_MASK_ACTIVE
+#
+# Notable bits:
+# NFA_TECHNOLOGY_MASK_A             0x01    /* NFC Technology A             */
+# NFA_TECHNOLOGY_MASK_B             0x02    /* NFC Technology B             */
+# NFA_TECHNOLOGY_MASK_F             0x04    /* NFC Technology F             */
+# NFA_TECHNOLOGY_MASK_ISO15693      0x08    /* Proprietary Technology       */
+# NFA_TECHNOLOGY_MASK_KOVIO         0x20    /* Proprietary Technology       */
+# NFA_TECHNOLOGY_MASK_ACTIVE        0x40    /* NFC Technology Active        */
+POLLING_TECH_MASK=0x2F
+
+###############################################################################
+# Force P2P to only listen for the following technology(s).
+# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
+# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F |
+# NFA_TECHNOLOGY_MASK_ACTIVE
+#
+# Notable bits:
+# NFA_TECHNOLOGY_MASK_A             0x01    /* NFC Technology A             */
+# NFA_TECHNOLOGY_MASK_F             0x04    /* NFC Technology F             */
+# NFA_TECHNOLOGY_MASK_ACTIVE         0x40    /* NFC Technology Active        */
+P2P_LISTEN_TECH_MASK=0x00
+
+PRESERVE_STORAGE=0x01
+
+###############################################################################
+# Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h.
+# The value is set to 3 by default as it assumes we will discover 0xF2,
+# 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced
+# so that the stack will not wait any longer than necessary.
+# Maximum EE supported number
+# NXP PN547C2 0x02
+# NXP PN65T 0x03
+# NXP PN548C2 0x02
+# NXP PN66T 0x03
+NFA_MAX_EE_SUPPORTED=0x02
+
+###############################################################################
+# AID_MATCHING constants
+# AID_MATCHING_EXACT_ONLY 0x00
+# AID_MATCHING_EXACT_OR_PREFIX 0x01
+# AID_MATCHING_PREFIX_ONLY 0x02
+# AID_MATCHING_EXACT_OR_SUBSET_OR_PREFIX 0x03
+AID_MATCHING_MODE=0x03
+
+###############################################################################
+#Set the default Felica T3T System Code :
+#This settings will be used when application does not set this parameter
+DEFAULT_SYS_CODE={FE:FE}
+
+###############################################################################
+# Value of NIC parameter NFCC_COFNIG_CONTROL
+# 0x00  NFCC is not allowed to manage RF configuration
+# 0x01  NFCC is allowed to manage RF configuration
+NFCC_CONFIG_CONTROL=0x01
+
+###############################################################################
+#Set if the AID routing should be blocked for the power modes not supported.
+NFA_AID_BLOCK_ROUTE=1
+
+###############################################################################
+#Set the OffHost AID supported power state:
+OFFHOST_AID_ROUTE_PWR_STATE=0x3B
+
+###############################################################################
+# Mifare Tag implementation
+# 0: General implementation
+# 1: Legacy implementation
+LEGACY_MIFARE_READER=0
+
+###############################################################################
+# Nfc recovery implementation
+# 0: Crash Nfc Service
+# 1: Toggle Nfc state
+RECOVERY_OPTION=1
+
+###############################################################################
+# NFCEE Power Supply and Communication Link Control Configuration
+# Set when SetAlwaysOn enabled
+# Default 0x00 when SetAlways on disabled
+ALWAYS_ON_SET_EE_POWER_AND_LINK_CONF=0x03
diff --git a/nfc/libse-gto-hal.conf b/nfc/libse-gto-hal.conf
new file mode 100644
index 0000000..f4e443d
--- /dev/null
+++ b/nfc/libse-gto-hal.conf
@@ -0,0 +1,2 @@
+#Gemalto SPI devnode
+GTO_DEV=/dev/st54spi;
diff --git a/nfc/libse-gto-hal2.conf b/nfc/libse-gto-hal2.conf
new file mode 100644
index 0000000..13ecd54
--- /dev/null
+++ b/nfc/libse-gto-hal2.conf
@@ -0,0 +1,2 @@
+#Gemalto SPI devnode
+GTO_DEV=/dev/st33spi;
diff --git a/nfc/manifest_nfc.xml b/nfc/manifest_nfc.xml
new file mode 100644
index 0000000..bf6b7cc
--- /dev/null
+++ b/nfc/manifest_nfc.xml
@@ -0,0 +1,11 @@
+<manifest version="1.0" type="device">
+  <hal format="hidl">
+    <name>android.hardware.nfc</name>
+    <transport>hwbinder</transport>
+    <version>1.2</version>
+    <interface>
+      <name>INfc</name>
+      <instance>default</instance>
+      </interface>
+  </hal>
+</manifest>
diff --git a/nfc/manifest_se.xml b/nfc/manifest_se.xml
new file mode 100644
index 0000000..9e5cee9
--- /dev/null
+++ b/nfc/manifest_se.xml
@@ -0,0 +1,7 @@
+<manifest version="1.0" type="device">
+  <hal format="hidl">
+    <name>android.hardware.secure_element</name>
+    <transport>hwbinder</transport>
+    <fqname>@1.2::ISecureElement/eSE1</fqname>
+  </hal>
+</manifest>
diff --git a/oriole/BoardConfig.mk b/oriole/BoardConfig.mk
index d94b836..e1ef669 100644
--- a/oriole/BoardConfig.mk
+++ b/oriole/BoardConfig.mk
@@ -13,11 +13,15 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
-TARGET_BOOTLOADER_BOARD_NAME := oriole
-TARGET_SCREEN_DENSITY := 420
-USES_DEVICE_GOOGLE_RAVIOLE := true
+ifdef PHONE_CAR_BOARD_CONFIG
+  include $(PHONE_CAR_BOARD_CONFIG)
+else
+  TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
+  TARGET_BOOTLOADER_BOARD_NAME := oriole
+  TARGET_SCREEN_DENSITY := 420
+  USES_DEVICE_GOOGLE_RAVIOLE := true
 
-include device/google/gs101/BoardConfig-common.mk
--include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
--include vendor/google_devices/oriole/proprietary/BoardConfigVendor.mk
+  include device/google/gs101/BoardConfig-common.mk
+  -include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
+  -include vendor/google_devices/oriole/proprietary/BoardConfigVendor.mk
+endif
diff --git a/oriole/overlay/frameworks/base/core/res/res/values/config.xml b/oriole/overlay/frameworks/base/core/res/res/values/config.xml
index 267bc29..cf57ec0 100644
--- a/oriole/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/oriole/overlay/frameworks/base/core/res/res/values/config.xml
@@ -80,9 +80,9 @@
 
     <string translatable="false" name="config_mainBuiltInDisplayCutoutRectApproximation">
         M 492,0
-        h 118
+        h 124
         v 118
-        h -118
+        h -124
         Z
         @left
     </string>
@@ -90,12 +90,10 @@
     <!-- Radius of the software rounded corners. -->
     <dimen name="rounded_corner_radius">28px</dimen>
 
-    <!-- Height of the status bar in portrait. The height should be
-         Max((status bar content height + waterfall top size), top cutout size) -->
-    <dimen name="status_bar_height_portrait">124px</dimen>
-    <dimen name="status_bar_height_landscape">74px</dimen>
-    <!-- Height of area above QQS where battery/time go (equal to status bar) -->
-    <dimen name="quick_qs_offset_height">124px</dimen>
+    <!-- Height of the status bar.
+         Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
+         -->
+    <dimen name="status_bar_height_height">74px</dimen>
 
     <!-- Adjustment for software rounded corners since corners aren't perfectly round. -->
     <dimen name="rounded_corner_radius_adjustment">5px</dimen>
@@ -229,6 +227,88 @@
          non-zero amplitudes, to bring the vibrator amplitude down to zero using this timing. -->
     <integer name="config_vibrationWaveformRampDownDuration">50</integer>
 
+    <!-- A vibration waveform for notifications that specify DEFAULT_VIBRATE.
+         This value is a float array with values grouped as
+         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         This is only applied on devices with vibration frequency control. If the device doesn't
+         support frequency control, then the vibration specified in
+         config_defaultNotificationVibePattern is used instead.
+     -->
+    <array name="config_defaultNotificationVibeWaveform">
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>0.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+    </array>
+
+    <!-- A vibration waveform for notifications that do not specify vibration but vibrate anyway,
+         because the device is in vibrate mode. This value is a float array with values grouped as
+         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         This is only applied on devices with vibration frequency control. If the device doesn't
+         support frequency control, then the vibration specified in
+         config_notificationFallbackVibePattern is used instead.
+     -->
+    <array name="config_notificationFallbackVibeWaveform">
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>0.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>50.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>50.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>50.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>50.0</item>
+    </array>
+
     <!-- the number of the max cached processes in the system. -->
     <integer name="config_customizedMaxCachedProcesses">64</integer>
 </resources>
diff --git a/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml b/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
index 29363c6..b364c4a 100644
--- a/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
+++ b/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
@@ -25,8 +25,8 @@
     <!-- the padding on the top of the statusbar (usually 0) -->
     <dimen name="status_bar_padding_top">1px</dimen>
 
-    <!-- Height of the status bar header bar when on Keyguard (match status_bar_portrait) -->
-    <dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height_portrait</dimen>
+    <!-- Height of the status bar header bar when on Keyguard (match status_bar_height) -->
+    <dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height</dimen>
 
     <!-- Padding for the system icons on the keyguard (when no multi user switch is showing).
     The icons always have a 4dp padding in the container so we only need 26 extra px of padding
diff --git a/raven/BoardConfig.mk b/raven/BoardConfig.mk
index 6d752a4..c3f2cc7 100644
--- a/raven/BoardConfig.mk
+++ b/raven/BoardConfig.mk
@@ -13,11 +13,16 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
-TARGET_BOOTLOADER_BOARD_NAME := raven
-TARGET_SCREEN_DENSITY := 560
-USES_DEVICE_GOOGLE_RAVIOLE := true
 
-include device/google/gs101/BoardConfig-common.mk
--include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
--include vendor/google_devices/raven/proprietary/BoardConfigVendor.mk
+ifdef PHONE_CAR_BOARD_CONFIG
+  include $(PHONE_CAR_BOARD_CONFIG)
+else
+  TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
+  TARGET_BOOTLOADER_BOARD_NAME := raven
+  TARGET_SCREEN_DENSITY := 560
+  USES_DEVICE_GOOGLE_RAVIOLE := true
+
+  include device/google/gs101/BoardConfig-common.mk
+  -include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
+  -include vendor/google_devices/raven/proprietary/BoardConfigVendor.mk
+endif
diff --git a/raven/overlay/frameworks/base/core/res/res/values/config.xml b/raven/overlay/frameworks/base/core/res/res/values/config.xml
index ba283e6..491a4cc 100644
--- a/raven/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/raven/overlay/frameworks/base/core/res/res/values/config.xml
@@ -34,9 +34,9 @@
 
     <string translatable="false" name="config_mainBuiltInDisplayCutoutRectApproximation">
         M 653,0
-        h 130
+        h 145
         v 130
-        h -130
+        h -145
         Z
         @left
     </string>
@@ -195,16 +195,92 @@
          non-zero amplitudes, to bring the vibrator amplitude down to zero using this timing. -->
     <integer name="config_vibrationWaveformRampDownDuration">50</integer>
 
-    <!-- Height of the status bar in portrait. The height should be
-         Max((status bar content height + waterfall top size), top cutout size) -->
-    <dimen name="status_bar_height_portrait">145px</dimen>
-    <dimen name="status_bar_height_landscape">28dp</dimen>
+    <!-- A vibration waveform for notifications that specify DEFAULT_VIBRATE.
+         This value is a float array with values grouped as
+         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         This is only applied on devices with vibration frequency control. If the device doesn't
+         support frequency control, then the vibration specified in
+         config_defaultNotificationVibePattern is used instead.
+     -->
+    <array name="config_defaultNotificationVibeWaveform">
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>0.0</item>
 
-    <!-- Height of area above QQS where battery/time go (equal to status bar) -->
-    <dimen name="quick_qs_offset_height">145px</dimen>
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
 
-    <!-- If face auth sends the user directly to home/last open app, or stays on keyguard by default-->
-    <bool name="config_faceAuthDismissesKeyguard">false</bool>
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+    </array>
+
+    <!-- A vibration waveform for notifications that do not specify vibration but vibrate anyway,
+         because the device is in vibrate mode. This value is a float array with values grouped as
+         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         This is only applied on devices with vibration frequency control. If the device doesn't
+         support frequency control, then the vibration specified in
+         config_notificationFallbackVibePattern is used instead.
+     -->
+    <array name="config_notificationFallbackVibeWaveform">
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>0.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>50.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>50.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>100.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>50.0</item>
+
+        <item>0.4</item>
+        <item>-0.25</item>
+        <item>100.0</item>
+
+        <item>0.0</item>
+        <item>-0.85</item>
+        <item>50.0</item>
+    </array>
+
+    <!-- Height of the status bar.
+         Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
+         -->
+    <dimen name="status_bar_height">28dp</dimen>
 
     <!-- the number of the max cached processes in the system. -->
     <integer name="config_customizedMaxCachedProcesses">64</integer>
diff --git a/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml b/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
index bd8bafa..fb6ecc9 100644
--- a/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
+++ b/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
@@ -22,8 +22,8 @@
     <!-- the padding on the top of the statusbar (usually 0) -->
     <dimen name="status_bar_padding_top">1px</dimen>
 
-    <!-- Height of the status bar header bar when on Keyguard (match status_bar_portrait) -->
-    <dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height_portrait</dimen>
+    <!-- Height of the status bar header bar when on Keyguard (match status_bar_height) -->
+    <dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height</dimen>
 
     <!-- Padding for the system icons on the keyguard (when no multi user switch is showing).
     The icons always have a 4dp padding in the container so we only need 26 extra px of padding
diff --git a/thermal_info_config_oriole.json b/thermal_info_config_oriole.json
index 2c7fdc8..148676a 100644
--- a/thermal_info_config_oriole.json
+++ b/thermal_info_config_oriole.json
@@ -400,7 +400,7 @@
                 },
                 {
                     "CdevRequest": "tpu_cooling",
-                    "LimitInfo": [0, 1, 2, 3, 4, 4, 4]
+                    "LimitInfo": [0, 2, 3, 4, 5, 5, 5]
                 }
             ]
         },
@@ -724,7 +724,7 @@
             "Coefficient":[
                 "-10000",
                 "400",
-                "1200"
+                "1000"
             ],
             "HotThreshold":[
                 "NAN",
@@ -753,7 +753,7 @@
             "Coefficient":[
                 "-10000",
                 "400",
-                "1200"
+                "1000"
             ],
             "HotThreshold":[
                 "NAN",
@@ -790,6 +790,14 @@
                 {
                     "CdevRequest": "thermal-cpufreq-2",
                     "LimitInfo": [0, 0, 0, 7, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 0, 7, 11]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 0, 4, 5]
                 }
             ]
         },
@@ -816,7 +824,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 10, 11, 11]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"vdroop1",
@@ -826,7 +848,7 @@
                 "NAN",
                 "NAN",
                 "NAN",
-                1150,
+                1000,
                 "NAN",
                 "NAN"
             ],
@@ -841,7 +863,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"vdroop2",
@@ -851,7 +887,7 @@
                 "NAN",
                 "NAN",
                 "NAN",
-                1350,
+                1200,
                 "NAN",
                 "NAN"
             ],
@@ -866,7 +902,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 15, 15, 15]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"smpl_gm",
@@ -876,7 +926,7 @@
                 "NAN",
                 "NAN",
                 "NAN",
-                1400,
+                1100,
                 "NAN",
                 "NAN"
             ],
@@ -891,7 +941,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 13, 13, 13]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"ocp_cpu1",
diff --git a/thermal_info_config_raven.json b/thermal_info_config_raven.json
index c01ece3..9c9db8d 100644
--- a/thermal_info_config_raven.json
+++ b/thermal_info_config_raven.json
@@ -141,7 +141,7 @@
             "Type":"UNKNOWN",
             "HotThreshold":[
                 "NAN",
-                "35.0",
+                "40.0",
                 "NAN",
                 "NAN",
                 "NAN",
@@ -375,7 +375,7 @@
                 },
                 {
                     "CdevRequest": "tpu_cooling",
-                    "LimitInfo": [0, 1, 2, 3, 4, 4, 4]
+                    "LimitInfo": [0, 2, 3, 4, 5, 5, 5]
                 }
             ]
         },
@@ -554,8 +554,8 @@
                 "USB2-MINUS-QI"
             ],
             "Coefficient":[
-                "35000",
-                "3000",
+                "40000",
+                "4500",
                 "9000"
             ],
             "HotThreshold":[
@@ -590,8 +590,8 @@
                 "USB2-MINUS-QI"
             ],
             "Coefficient":[
-                "35000",
-                "4000",
+                "40000",
+                "5000",
                 "12000"
             ],
             "HotThreshold":[
@@ -699,7 +699,7 @@
             "Coefficient":[
                 "-10000",
                 "400",
-                "1200"
+                "1000"
             ],
             "HotThreshold":[
                 "NAN",
@@ -728,7 +728,7 @@
             "Coefficient":[
                 "-10000",
                 "400",
-                "1200"
+                "1000"
             ],
             "HotThreshold":[
                 "NAN",
@@ -765,6 +765,14 @@
                 {
                     "CdevRequest": "thermal-cpufreq-2",
                     "LimitInfo": [0, 0, 0, 7, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 0, 7, 11]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 0, 4, 5]
                 }
             ]
         },
@@ -791,7 +799,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 10, 11, 11]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"vdroop1",
@@ -801,7 +823,7 @@
                 "NAN",
                 "NAN",
                 "NAN",
-                1150,
+                1000,
                 "NAN",
                 "NAN"
             ],
@@ -816,7 +838,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 7, 7, 7]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"vdroop2",
@@ -826,7 +862,7 @@
                 "NAN",
                 "NAN",
                 "NAN",
-                1350,
+                1200,
                 "NAN",
                 "NAN"
             ],
@@ -841,7 +877,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 15, 15, 15]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"smpl_gm",
@@ -851,7 +901,7 @@
                 "NAN",
                 "NAN",
                 "NAN",
-                1400,
+                1100,
                 "NAN",
                 "NAN"
             ],
@@ -866,7 +916,21 @@
             ],
             "VrThreshold":"NAN",
             "Multiplier":1,
-            "Monitor":true
+            "Monitor":true,
+            "BindedCdevInfo": [
+                {
+                    "CdevRequest": "thermal-cpufreq-2",
+                    "LimitInfo": [0, 0, 0, 0, 7, 10, 10]
+                },
+                {
+                    "CdevRequest": "thermal-gpufreq-0",
+                    "LimitInfo": [0, 0, 0, 0, 13, 13, 13]
+                },
+                {
+                    "CdevRequest": "tpu_cooling",
+                    "LimitInfo": [0, 0, 0, 0, 4, 4, 4]
+                }
+	    ]
         },
         {
             "Name":"ocp_cpu1",
diff --git a/uwb/UWB-calibration.conf b/uwb/UWB-calibration.conf
new file mode 100644
index 0000000..c5041bf
--- /dev/null
+++ b/uwb/UWB-calibration.conf
@@ -0,0 +1,117 @@
+[CCC]format=1
+[CCC]kind=0
+[CCC]settings=1
+[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
+[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
+[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
+[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
+[CCC]ant0.ch5.prf64.pdoa_offset=0
+[CCC]ant0.ch9.prf64.pdoa_offset=0
+[CCC]ant0.ch5.prf64.pll_locking_code=0
+[CCC]ant0.ch9.prf64.pll_locking_code=0
+[CCC]id=0
+[CCC]wifi_coex_time_gap=10
+[CCC]ap_coop_mode=1
+[CCC]antenna_selection=4
+[CCC]wifi_coex_min_spacing=0x08
+ant0.ch5.prf16.ant_delay=16450
+ant0.ch5.prf16.tx_power=0x4E4E4E4E
+ant0.ch5.prf16.pg_count=0
+ant0.ch5.prf16.pg_delay=0x26
+ant0.ch5.prf64.ant_delay=16450
+ant0.ch5.prf64.tx_power=0x4E4E4E4E
+ant0.ch5.prf64.pg_count=0
+ant0.ch5.prf64.pg_delay=0x26
+ant0.ch9.prf16.ant_delay=16450
+ant0.ch9.prf16.tx_power=0x56565656
+ant0.ch9.prf16.pg_count=0
+ant0.ch9.prf16.pg_delay=0x26
+ant0.ch9.prf64.ant_delay=16450
+ant0.ch9.prf64.tx_power=0x56565656
+ant0.ch9.prf64.pg_count=0
+ant0.ch9.prf64.pg_delay=0x26
+ant0.port=0
+ant0.selector_gpio=7
+ant0.selector_gpio_value=0
+ant1.ch5.prf16.ant_delay=16450
+ant1.ch5.prf16.tx_power=0x4E4E4E4E
+ant1.ch5.prf16.pg_count=0
+ant1.ch5.prf16.pg_delay=0x26
+ant1.ch5.prf64.ant_delay=16450
+ant1.ch5.prf64.tx_power=0x4E4E4E4E
+ant1.ch5.prf64.pg_count=0
+ant1.ch5.prf64.pg_delay=0x26
+ant1.ch9.prf16.ant_delay=16450
+ant1.ch9.prf16.tx_power=0x56565656
+ant1.ch9.prf16.pg_count=0
+ant1.ch9.prf16.pg_delay=0x26
+ant1.ch9.prf64.ant_delay=16450
+ant1.ch9.prf64.tx_power=0x56565656
+ant1.ch9.prf64.pg_count=0
+ant1.ch9.prf64.pg_delay=0x26
+ant1.port=0
+ant1.selector_gpio=7
+ant1.selector_gpio_value=1
+ant2.ch5.prf16.ant_delay=16450
+ant2.ch5.prf16.tx_power=0x4E4E4E4E
+ant2.ch5.prf16.pg_count=0
+ant2.ch5.prf16.pg_delay=0x26
+ant2.ch5.prf64.ant_delay=16450
+ant2.ch5.prf64.tx_power=0x4E4E4E4E
+ant2.ch5.prf64.pg_count=0
+ant2.ch5.prf64.pg_delay=0x26
+ant2.ch9.prf16.ant_delay=16450
+ant2.ch9.prf16.tx_power=0x56565656
+ant2.ch9.prf16.pg_count=0
+ant2.ch9.prf16.pg_delay=0x26
+ant2.ch9.prf64.ant_delay=16450
+ant2.ch9.prf64.tx_power=0x56565656
+ant2.ch9.prf64.pg_count=0
+ant2.ch9.prf64.pg_delay=0x26
+ant2.port=1
+ant2.selector_gpio=6
+ant2.selector_gpio_value=0
+ant3.ch5.prf16.ant_delay=16450
+ant3.ch5.prf16.tx_power=0x4E4E4E4E
+ant3.ch5.prf16.pg_count=0
+ant3.ch5.prf16.pg_delay=0x26
+ant3.ch5.prf64.ant_delay=16450
+ant3.ch5.prf64.tx_power=0x4E4E4E4E
+ant3.ch5.prf64.pg_count=0
+ant3.ch5.prf64.pg_delay=0x26
+ant3.ch9.prf16.ant_delay=16450
+ant3.ch9.prf16.tx_power=0x56565656
+ant3.ch9.prf16.pg_count=0
+ant3.ch9.prf16.pg_delay=0x26
+ant3.ch9.prf64.ant_delay=16450
+ant3.ch9.prf64.tx_power=0x56565656
+ant3.ch9.prf64.pg_count=0
+ant3.ch9.prf64.pg_delay=0x26
+ant3.port=1
+ant3.selector_gpio=6
+ant3.selector_gpio_value=1
+ant0.ant1.ch5.pdoa_offset=0
+ant0.ant1.ch9.pdoa_offset=0
+ant0.ant2.ch5.pdoa_offset=0
+ant0.ant2.ch9.pdoa_offset=0
+ant1.ant2.ch5.pdoa_offset=0
+ant1.ant2.ch9.pdoa_offset=0
+ant0.ant3.ch5.pdoa_offset=0
+ant0.ant3.ch9.pdoa_offset=0
+ant1.ant3.ch5.pdoa_offset=-4710
+ant1.ant3.ch9.pdoa_offset=-6144
+ant2.ant3.ch5.pdoa_offset=0
+ant2.ant3.ch9.pdoa_offset=0
+ch5.pll_locking_code=0
+ch9.pll_locking_code=0
+ant1.ant3.ch5.pdoa_lut=e1:f2:85:f5:ae:f3:3d:f6:52:f4:f6:f6:8f:f4:9a:f7:48:f5:52:f8:d7:f5:0a:f9:66:f6:ae:f9:85:f7:66:fa:8f:f8:1f:fb:48:f9:d7:fb:8f:fa:7b:fc:ec:fb:33:fd:0a:fd:ec:fd:66:fe:a4:fe:00:00:48:ff:71:01:00:00:b8:02:b8:00:29:04:64:01:ae:05:19:02:85:07:cb:02:33:09:7d:03:f6:0a:2f:04:0a:0d:e3:04:cd:0e:96:05:14:10:48:06:71:11:fa:06:66:12:ac:07:33:13:60:08:3d:14:12:09:85:15:c5:09:ec:15:77:0a
+ant1.ant3.ch9.pdoa_lut=e1:ec:f6:f6:48:ed:3d:f6:85:ed:85:f5:14:ee:9a:f7:3d:ee:52:f8:e1:ee:0a:f9:3d:f0:ae:f9:85:f1:66:fa:85:f3:1f:fb:00:f6:d7:fb:9a:f7:7b:fc:14:fa:33:fd:ec:fb:ec:fd:71:fd:a4:fe:cd:fe:48:ff:a4:00:00:00:85:01:b8:00:7b:02:5c:01:d7:03:14:02:cd:04:cd:02:48:07:85:03:ae:09:29:04:e1:0c:e1:04:7b:10:9a:05:cd:12:52:06:f6:14:f6:06:a4:16:ae:07:ae:17:0a:09:d7:17:c3:09:52:18:66:08:7b:18:7b:0a
+xtal_trim=31
+temperature_reference=85
+smart_tx_power=1
+auto_sleep_margin=20000
+[HAL]antenna_pair_azimuth=4
+[HAL]antenna_pair_elevation=0xff
+[HAL]tx_antenna=0
+[HAL]minimum_system_offset_uwbtime0=300
+restricted_channels=0
diff --git a/uwb/uwb_calibration.mk b/uwb/uwb_calibration.mk
new file mode 100644
index 0000000..d0585d9
--- /dev/null
+++ b/uwb/uwb_calibration.mk
@@ -0,0 +1,21 @@
+#
+# Copyright (C) 2021 The Android Open-Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+LOCAL_UWB_CAL_DIR=device/google/raviole/uwb
+
+PRODUCT_COPY_FILES += \
+    $(LOCAL_UWB_CAL_DIR)/UWB-calibration.conf:$(TARGET_COPY_OUT_VENDOR)/etc/UWB-calibration.conf \
+    $(LOCAL_UWB_CAL_DIR)/UWB-calibration.conf:$(TARGET_COPY_OUT_VENDOR)/etc/UWB-calibration-unknown.conf \
+    $(LOCAL_UWB_CAL_DIR)/UWB-calibration.conf:$(TARGET_COPY_OUT_VENDOR)/etc/UWB-calibration-default.conf \