Merge "Revert "dragon: camera: Stop advertising camera2 FULL mode"" into mnc-dr-ryu-dev
diff --git a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/image_151210_mp_signed.hex b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/image_151216_mp_signed.hex
similarity index 98%
rename from DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/image_151210_mp_signed.hex
rename to DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/image_151216_mp_signed.hex
index 7e3bf19..d231a0e 100644
--- a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/image_151210_mp_signed.hex
+++ b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/image_151216_mp_signed.hex
@@ -427,48 +427,48 @@
:10AA9000161A020018500000D1180000C10300006F
:10AAA00000200020A40000101C22002049A5010065
:10AAB000B9AA010018320020F7B5041C00780D284F
-:10AAC00000D93DE106F034FD0E006500E0007000A5
-:10AAD000D50099002C01AC00AE00B000C600CD003E
-:10AAE0003501E9009B4F9C484C2101223B1C04F09E
-:10AAF00043FC041E00D0B1E00823984E38780121B1
+:10AAC00000D93CE106F034FD0E006400DF006F00A9
+:10AAD000D40098002B01AB00AD00AF00C500CC0046
+:10AAE0003401E8009B4F9C484C2101223B1C04F0A0
+:10AAF00043FC041E00D0B0E00823984E38780121B2
:10AB000000930196221C231C04F03AFC051E18D168
:10AB1000012338780093F318019302212A1C2B1C7F
-:10AB200004F02EFC041E00D0D3E0022576193878FC
+:10AB200004F02EFC041E00D0D2E0022576193878FD
:10AB3000032100950196221C231C04F021FC00280F
:10AB400003D0211C221CFFF719FD03F013FE041C87
:10AB500004F0AAFA031C061CAB4308D0804806F098
:10AB6000ADFB301C06F0D2FB7E4806F0A7FB7E480A
:10AB700006F0A4FB201C06F0C9FB7C4806F09EFBF7
-:10AB8000012004F09FFA002868D10420FFF7FCFBA5
-:10AB9000DFE0774806F092FB96200122754BC0005B
-:10ABA0001A7006F0B7FAD4E06379032B04D1724827
-:10ABB00006F084FBA068C7E0022B00D0C9E06F4814
-:10ABC00006F07CFBA06806F091FB6D4806F076FB72
-:10ABD000A368187806F08AFB6A4806F06FFBA07934
-:10ABE00006F084FB684806F069FBE07906F07EFB1E
-:10ABF000664806F063FB2079A6E0654806F05EFB38
-:10AC0000A08806F083FB634806F058FBE08806F056
-:10AC10007DFB614806F052FB208906F077FB95E04A
-:10AC20005E4894E05E4892E0302106225D4806F0DE
-:10AC3000F5FC002005F07AFE01225B4B5B481A70A0
-:10AC400000225B4B1A705B4B191CD833D4310A605D
-:10AC50001A607CE0584806F031FB584800210A1C75
-:10AC600071E7012005F062FE00224F4B54481A7034
-:10AC70006DE0544806F022FB207906F037FB52487D
-:10AC800006F01CFB60795FE0504806F017FB0022DD
-:10AC9000384B1A7004F0A6FB5BE04D4806F00EFB43
-:10ACA0004C4C2578002D0AD000254B4806F006FBB9
-:10ACB00025704A4C2078FFF78DFE257049E0484BFF
-:10ACC0001B78022B24D1FFF763FB464E041E306035
-:10ACD00003D0201C291C2A1C35E7E8208002FFF73E
-:10ACE00059FB3060002800D02BE78021C0223E4B6A
-:10ACF000C9035200995001211A683C4C0B1C834037
-:10AD00001A4200D0E36701302028F7D105F07AFD20
-:10AD1000374806F0D3FA0020011C06F029FA18E0A3
-:10AD2000344806F0CBFA04F05DFB0022294B1A7080
-:10AD30000FE0314806F0C2FAFFF75AFCFFF78CFC2F
-:10AD40002E4806F0BBFA207806F0D0FA074806F045
-:10AD5000B5FAF7BD10230020941B0200BB2400208D
+:10AB8000012004F09FFA002867D1FFF7FDFBDFE00A
+:10AB9000774806F093FB96200122764BC0001A708E
+:10ABA00006F0B8FAD4E06379032B04D1724806F0BA
+:10ABB00085FBA068C7E0022B00D0C9E06F4806F013
+:10ABC0007DFBA06806F092FB6D4806F077FBA3685A
+:10ABD000187806F08BFB6B4806F070FBA07906F046
+:10ABE00085FB694806F06AFBE07906F07FFB674861
+:10ABF00006F064FB2079A6E0654806F05FFBA088BC
+:10AC000006F084FB634806F059FBE08806F07EFB03
+:10AC1000614806F053FB208906F078FB95E05F4819
+:10AC200094E05F4892E0302106225E4806F0F6FC90
+:10AC3000002005F07BFE01225B4B5C481A7000226D
+:10AC40005B4B1A705B4B191CD833D4310A601A6005
+:10AC50007CE0594806F032FB584800210A1C72E794
+:10AC6000012005F063FE00224F4B55481A706DE03D
+:10AC7000544806F023FB207906F038FB524806F0D2
+:10AC80001DFB60795FE0514806F018FB0022394B4C
+:10AC90001A7004F0A7FB5BE04D4806F00FFB4D4C2B
+:10ACA0002578002D0AD000254B4806F007FB2570BB
+:10ACB0004A4C2078FFF78EFE257049E0484B1B7800
+:10ACC000022B24D1FFF764FB464E041E306003D0F4
+:10ACD000201C291C2A1C36E7E8208002FFF75AFBBB
+:10ACE0003060002800D02CE78021C0223E4BC903F1
+:10ACF0005200995001211A683C4C0B1C83401A42A7
+:10AD000000D0E36701302028F7D105F07BFD3848FB
+:10AD100006F0D4FA0020011C06F02AFA18E03548A3
+:10AD200006F0CCFA04F05EFB00222A4B1A700FE00A
+:10AD3000314806F0C3FAFFF75BFCFFF78DFC2F48A4
+:10AD400006F0BCFA207806F0D1FA084806F0B6FA08
+:10AD5000F7BDC04610230020941B0200BB24002036
:10AD60001F1A0200261A0200321A0200CD1A02002F
:10AD7000471A0200282200204D1A0200561A02002B
:10AD80005F1A0200661A02006E1A0200741A0200AC
@@ -2196,8 +2196,8 @@
:101910007720746F2065786974206465627567202C
:101920006D6F64652E0D0A000D0A56657273696F3E
:101930006E2000204275696C74206F6E2000446533
-:101940006320313120323031350020617420003184
-:10195000373A30323A3434002070726573736564FC
+:10194000632031372032303135002061742000317E
+:10195000323A35323A3432002070726573736564FE
:101960000D0A002121212121204150505F45525272
:101970004F525F48414E444C4552202121212120A5
:101980006572726F725F636F6465203D203078000E
@@ -2209,7 +2209,7 @@
:1019E00079733A2000205363616E20436F646573FE
:1019F0002028686578293A200062460D0A0050695F
:101A000078656C2043204B6579626F617264004792
-:101A10006F6F676C6500302E3135313231300045E3
+:101A10006F6F676C6500302E3135313231360045DD
:101A200072726F72200020747279696E6720746F11
:101A3000200055706461746520746865206C65765B
:101A4000656C20746F2000436F6E0D0A004665615F
@@ -4036,23 +4036,23 @@
:108C100010000000480000000001000000FC0000FF
:108C200003000200419A32EEE5DBBCC148D6431393
:108C30008799B21B5DA65DFF4861646F6B656E200E
-:108C400052656C6561736500631966EC911A1625AF
-:108C50005B6798BE1EB9A35ADAEEE7F939C8E9AEE8
-:108C60006DEFF4A8AC2CD775851B3FD387E18963E2
-:108C70002C8F3398FBBC73ADB500592AAAA889473D
-:108C80006171C124D0A820DC6AA05594A0315C1881
-:108C90003CDC0D033749150EF8C5E15BB507268BA3
-:108CA000310BB71C4BBC48BA26F59A4599F9803F61
-:108CB0008B4EB8C02FD6DBE301237EC49562A5504E
-:108CC0005EC163F0FC54B10CC96C28DE2E46CC901A
-:108CD0004E491856EBDFD34AD999E632589F958210
-:108CE000227244F8D9364CC97DBB3B471141F7DEAF
-:108CF000A398B5E82A9C61FACF3DB02A1A60C0EF6C
-:108D00006311AAEC7F33FA21378A5C1E55EFE0220B
-:108D1000890D7771C92C5684556974ED50F7650B30
-:108D20004A807280FE5528DC10E32BC633B009D18F
-:108D30005F0339B903643D70486138FD1D3C96629C
-:108D40006D2AFE7A5E2EC2DEFFFFFFFFFFFFFFFFF0
+:108C400052656C6561736500399A55D23D676CCC8D
+:108C50006339EFF58CEF431454DCCD256F60C4A36A
+:108C6000BB463C393C6508D3325A2AAED4D59BA5C5
+:108C70009FC05107DEA72EBD4ABCDBA409792BBAE1
+:108C8000A5C73571BD7C09CB16C400E6C52B4FFFC7
+:108C900028D8F3EE78C9E7D9B5EC6444426BBD122D
+:108CA000E488207FB4C9F594C205A79846D6A41DD0
+:108CB000B071C0C2AF5AEDC22FD267CEE38637265D
+:108CC000D6CB5F41338035D3760E75FAA344EA3AAA
+:108CD0008D06E4301A264FCBA81DD298309F39A0BC
+:108CE0008BF747493FF16DA002D25BFAAB509E2251
+:108CF000E1CD234264E4CB16A3FAC031079A43C204
+:108D00004FFD96DDD19DC9A67E756C96876304C123
+:108D100005CA07B2AEA18B2D8DFFC44A3F863A4CDF
+:108D20008D88C19E6D26D4D2367FFBD83FAF2EE111
+:108D30004581B3700291C3959A38509CA18ACD1891
+:108D4000A3C74DD000A3D859FFFFFFFFFFFFFFFFD0
:108D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23
:108D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13
:108D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03
diff --git a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/init_151210_mp_signed.dat b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/init_151210_mp_signed.dat
deleted file mode 100644
index 0b00915..0000000
--- a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/init_151210_mp_signed.dat
+++ /dev/null
Binary files differ
diff --git a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/init_151216_mp_signed.dat b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/init_151216_mp_signed.dat
new file mode 100644
index 0000000..3160571
--- /dev/null
+++ b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/raw/init_151216_mp_signed.dat
Binary files differ
diff --git a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/values/strings.xml b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/values/strings.xml
index 772ab2e..64bd909 100644
--- a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/values/strings.xml
+++ b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/res/values/strings.xml
@@ -25,12 +25,12 @@
<string name="target_keyboard_name" translatable="false">Pixel C Keyboard</string>
<string name="target_manufacturer" translatable="false">Google</string>
<string name="target_battery_level" translatable="false">20</string>
- <string name="target_firmware_version" translatable="false">0.151210</string>
+ <string name="target_firmware_version" translatable="false">0.151216</string>
<string name="target_min_updatable_firmware_version" translatable="false">0.151020</string>
<!-- File names of the firmware images in raw resource (for service use)-->
- <string name="target_firmware_init_file_name" translatable="false">init_151210_mp_signed</string>
- <string name="target_firmware_image_file_name" translatable="false">image_151210_mp_signed</string>
+ <string name="target_firmware_init_file_name" translatable="false">init_151216_mp_signed</string>
+ <string name="target_firmware_image_file_name" translatable="false">image_151216_mp_signed</string>
<!-- The update notification message title shown when a keyboard update is
available. Users are given the option to install or postpone the update.
diff --git a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/BluetoothConnectionBroadcastReceiver.java b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/BluetoothConnectionBroadcastReceiver.java
index 7ea3b48..9f6f078 100644
--- a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/BluetoothConnectionBroadcastReceiver.java
+++ b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/BluetoothConnectionBroadcastReceiver.java
@@ -30,6 +30,12 @@
@Override
public void onReceive(Context context, Intent intent) {
+ // Only process if the current user is the primary user in order to avoid starting the
+ // update process on the work profile.
+ UserManager userManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
+ if (!userManager.isSystemUser()) {
+ return;
+ }
if (!BluetoothAdapter.ACTION_CONNECTION_STATE_CHANGED.equals(intent.getAction())) return;
diff --git a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/KeyboardFirmwareUpdateService.java b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/KeyboardFirmwareUpdateService.java
index acaab9c..d286cf1 100644
--- a/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/KeyboardFirmwareUpdateService.java
+++ b/DragonKeyboardFirmwareUpdater/keyboard_firmware_updater/src/com/android/dragonkeyboardfirmwareupdater/KeyboardFirmwareUpdateService.java
@@ -698,6 +698,7 @@
.setCategory(Notification.CATEGORY_SYSTEM)
.setContentTitle(getString(R.string.notification_update_title))
.setContentText(getString(R.string.notification_update_text))
+ .setContentIntent(installIntent)
.setSmallIcon(R.drawable.ic_keyboard)
.addAction(new NotificationCompat.Action.Builder(
R.drawable.ic_later, getString(R.string.notification_update_later),
diff --git a/audio/hal/audio_hw.c b/audio/hal/audio_hw.c
index 83a623d..f853a10 100644
--- a/audio/hal/audio_hw.c
+++ b/audio/hal/audio_hw.c
@@ -920,13 +920,15 @@
if (has_additional_channels)
{
+ // TODO do not hardcode 16-bit encoding, use audio_stream_out_frame_size() instead
int16_t* src_buffer = (int16_t *)proc_buf_out;
int16_t* dst_buffer = (int16_t *)buffer;
if (dst_channels == 1) {
for (i = frames_wr; i > 0; i--)
{
- *dst_buffer++ = *src_buffer;
+ *dst_buffer = *src_buffer;
+ dst_buffer += 1;
src_buffer += src_channels;
}
} else {
@@ -1533,7 +1535,7 @@
{
if (format != AUDIO_FORMAT_PCM_16_BIT) return -EINVAL;
- if ((channel_count < 1) || (channel_count > 2)) return -EINVAL;
+ if ((channel_count < 1) || (channel_count > 4)) return -EINVAL;
switch (sample_rate) {
case 8000:
@@ -1829,6 +1831,10 @@
unsigned char *data = NULL;
struct pcm_config config;
+ size_t src_channels = audio_channel_count_from_out_mask(out->channel_mask);
+ size_t dst_channels = out->config.channels;
+ bool channel_remapping_needed = (dst_channels != src_channels);
+
lock_output_stream(out);
if (out->standby) {
pthread_mutex_lock(&adev->lock);
@@ -1869,7 +1875,7 @@
unsigned audio_bytes;
const void *audio_data;
- ALOGVV("%s: writing buffer (%d bytes) to pcm device", __func__, bytes);
+ ALOGVV("%s: writing buffer (%zd bytes) to pcm device", __func__, bytes);
if (pcm_device->resampler && pcm_device->res_buffer) {
audio_data = pcm_device->res_buffer;
audio_bytes = frames_wr * frame_size;
@@ -1884,6 +1890,37 @@
*/
apply_dsp(pcm_device, audio_data, audio_bytes/4);
+ if (channel_remapping_needed) {
+ unsigned remapped_audio_bytes;
+ const void *remapped_audio_data;
+ int i;
+ int frames_num = audio_bytes / frame_size;
+
+ audio_bytes = audio_bytes * dst_channels / src_channels;
+
+ /* With additional channels, we cannot use original buffer */
+ if (out->proc_buf_size < audio_bytes) {
+ out->proc_buf_size = audio_bytes;
+ out->proc_buf_out = (int16_t *)realloc(out->proc_buf_out, audio_bytes);
+ ALOG_ASSERT((out->proc_buf_out != NULL),
+ "out_write() failed to reallocate proc_buf_out");
+ }
+ remapped_audio_data = out->proc_buf_out;
+
+ // TODO do not hardcode 16-bit encoding, use audio_stream_out_frame_size() instead
+ int16_t* src_buffer = (int16_t *)audio_data;
+ int16_t* dst_buffer = (int16_t *)remapped_audio_data;
+
+ for (i = frames_num; i > 0; i--)
+ {
+ memcpy(dst_buffer, src_buffer, src_channels*sizeof(int16_t));
+ dst_buffer += dst_channels;
+ src_buffer += src_channels;
+ }
+
+ audio_data = remapped_audio_data;
+ }
+
pcm_device->status = pcm_write(pcm_device->pcm, audio_data, audio_bytes);
if (pcm_device->status != 0)
ret = pcm_device->status;
diff --git a/audio/hal/audio_hw.h b/audio/hal/audio_hw.h
index 92aff51..bdf89b0 100644
--- a/audio/hal/audio_hw.h
+++ b/audio/hal/audio_hw.h
@@ -109,7 +109,7 @@
*/
#define PLAYBACK_PERIOD_SIZE 512
#define PLAYBACK_PERIOD_COUNT 2
-#define PLAYBACK_DEFAULT_CHANNEL_COUNT 2
+#define PLAYBACK_DEFAULT_CHANNEL_COUNT 4
#define PLAYBACK_DEFAULT_SAMPLING_RATE 48000
#define PLAYBACK_START_THRESHOLD ((PLAYBACK_PERIOD_SIZE * PLAYBACK_PERIOD_COUNT) - 1)
#define PLAYBACK_STOP_THRESHOLD (PLAYBACK_PERIOD_SIZE * PLAYBACK_PERIOD_COUNT)
@@ -129,7 +129,7 @@
#define CAPTURE_PERIOD_SIZE 1024
#define CAPTURE_PERIOD_SIZE_LOW_LATENCY 512
#define CAPTURE_PERIOD_COUNT 2
-#define CAPTURE_DEFAULT_CHANNEL_COUNT 2
+#define CAPTURE_DEFAULT_CHANNEL_COUNT 4
#define CAPTURE_DEFAULT_SAMPLING_RATE 48000
#define CAPTURE_START_THRESHOLD 1
@@ -229,7 +229,8 @@
int send_new_metadata;
struct audio_device* dev;
-
+ int16_t *proc_buf_out;
+ size_t proc_buf_size;
};
struct stream_in {
diff --git a/audio/soundtrigger/sound_trigger_hw.c b/audio/soundtrigger/sound_trigger_hw.c
index 35ef5ec..a663e12 100644
--- a/audio/soundtrigger/sound_trigger_hw.c
+++ b/audio/soundtrigger/sound_trigger_hw.c
@@ -32,9 +32,10 @@
#include <hardware/sound_trigger.h>
#include <tinyalsa/asoundlib.h>
-#define DRAGON_MIXER_VAD 0
-#define DRAGON_MIC_CTRL "Int Mic Switch"
-#define UEVENT_MSG_LEN 1024
+#define DRAGON_MIXER_VAD 0
+#define DRAGON_MIC_CTRL "Int Mic Switch"
+#define DRAGON_HOTWORD_MODEL_CTRL "Hotword Model"
+#define UEVENT_MSG_LEN 1024
#define DRAGON_ST_CARD_NUM 0
#define DRAGON_ST_DEV_NUM 87
@@ -69,6 +70,7 @@
int term_sock;
struct mixer *mixer;
struct mixer_ctl *int_mic_sw;
+ struct mixer_ctl *hotword_model;
struct sound_trigger_recognition_config *config;
struct pcm *pcm;
int is_streaming;
@@ -109,6 +111,11 @@
if (!stdev->int_mic_sw)
goto err;
+ stdev->hotword_model = mixer_get_ctl_by_name(stdev->mixer,
+ DRAGON_HOTWORD_MODEL_CTRL);
+ if (!stdev->hotword_model)
+ ALOGE("No hotword model mixer control\n");
+
stdev_dsp_set_power(stdev, 0); // Disable DSP at the beginning
return 0;
@@ -143,11 +150,11 @@
static int vad_load_sound_model(struct dragon_sound_trigger_device *stdev,
char *buf, size_t len)
{
- (void)stdev;
- (void)buf;
- (void)len;
- /* TODO(dgreid) - implement with kcontrol TLV value. */
- return 0;
+ int ret;
+ ret = mixer_ctl_set_array(stdev->hotword_model, buf, len);
+ if (ret)
+ ALOGE("Failed hotword model write %d\n", ret);
+ return ret;
}
static char *sound_trigger_event_alloc(struct dragon_sound_trigger_device *
diff --git a/bcmdhd.cal b/bcmdhd.cal
index 7a75804..1624998 100644
--- a/bcmdhd.cal
+++ b/bcmdhd.cal
@@ -136,3 +136,4 @@
rssicorrnorm_c1=4,4
rssicorrnorm5g_c0=1,2,3,1,2,3,1,2,3,1,2,3
rssicorrnorm5g_c1=1,2,3,1,2,3,1,2,3,1,2,3
+btc_params3=75
\ No newline at end of file
diff --git a/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/overlay/frameworks/base/core/res/res/xml/power_profile.xml
index 9b9e3d2..f364355 100644
--- a/overlay/frameworks/base/core/res/res/xml/power_profile.xml
+++ b/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -19,16 +19,16 @@
<device name="Android">
<!-- All values are in mAh except as noted -->
<item name="none">2.18</item>
- <item name="screen.on">184.86</item>
+ <item name="screen.on">181.08</item>
<item name="screen.full">609.72</item>
<item name="bluetooth.active">26.47</item>
- <item name="bluetooth.on">6.29</item>
- <item name="wifi.on">4.07</item>
- <item name="wifi.active">79.06</item>
- <item name="wifi.scan">128.80</item>
- <item name="dsp.audio">22.93</item>
- <item name="dsp.video">137.57</item>
- <item name="camera.avg">997.50</item>
+ <item name="bluetooth.on">4.05</item>
+ <item name="wifi.on">3.81</item>
+ <item name="wifi.active">111.43</item>
+ <item name="wifi.scan">149.04</item>
+ <item name="dsp.audio">19.15</item>
+ <item name="dsp.video">113.57</item>
+ <item name="camera.avg">791.67</item>
<!-- Different CPU speeds as reported in
/sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state -->
@@ -53,8 +53,8 @@
<value>1912500</value>
</array>
<!-- Power consumption when CPU is idle -->
- <item name="cpu.idle">7.62</item> <!-- suspend power 32.00 mW -->
- <item name="cpu.awake">94.31</item> <!-- idle screen off 428.10 mW -->
+ <item name="cpu.idle">8.57</item> <!-- suspend power 36 mW -->
+ <item name="cpu.awake">97.14</item> <!-- idle screen off 444 mW -->
<array name="cpu.active.cluster0">
<!-- Power consumption at different speeds -->
<value>36.95</value> <!-- 204000 -->
diff --git a/rt5677_elf_vad b/rt5677_elf_vad
index 1f700de..4198dd6 100755
--- a/rt5677_elf_vad
+++ b/rt5677_elf_vad
Binary files differ