summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXin Li <delphij@google.com>2018-08-06 16:50:11 -0700
committerXin Li <delphij@google.com>2018-08-06 16:50:11 -0700
commit984459ada7e91e2c2d959de679e46b7459301867 (patch)
tree846be9d8e49b978d5aeb9730c4e1ab7c975f5edc
parent7e953a2f32aa51008769387f6ba70044d51c19ac (diff)
parentad18271298c67c8bda51279842406abe5460cd3b (diff)
downloaddevice_google_taimen-oreo-mr1-1.2-iot-release.tar.gz
device_google_taimen-oreo-mr1-1.2-iot-release.tar.bz2
device_google_taimen-oreo-mr1-1.2-iot-release.zip
Bug: 112104996 Change-Id: I5dce2e47525c73ead5e9ab39fa21f55b3a13cee8
-rw-r--r--AndroidBoard.mk17
-rw-r--r--BoardConfig.mk49
-rw-r--r--WCNSS_qcom_cfg.ini87
-rw-r--r--aosp_taimen.mk5
-rw-r--r--audio_effects.xml2
-rw-r--r--audio_platform_info_tavil.xml58
-rw-r--r--audio_policy_volumes.xml86
-rw-r--r--default_volume_tables.xml65
-rw-r--r--device.mk15
-rw-r--r--init-taimen.rc13
-rw-r--r--init.insmod.cfg1
-rw-r--r--mixer_paths_tavil.xml180
-rw-r--r--nfc/libnfc-nxp.taimen.conf5
-rw-r--r--overlay/frameworks/base/core/res/res/values/config.xml292
-rwxr-xr-xoverlay/frameworks/base/core/res/res/values/dimens.xml2
-rw-r--r--overlay/frameworks/base/core/res/res/xml/power_profile.xml201
-rw-r--r--self-extractors/extract-lists.txt1
-rw-r--r--self-extractors/qcom/staging/device-partial.mk1
-rw-r--r--sepolicy/OWNERS6
19 files changed, 855 insertions, 231 deletions
diff --git a/AndroidBoard.mk b/AndroidBoard.mk
new file mode 100644
index 0000000..006fe5c
--- /dev/null
+++ b/AndroidBoard.mk
@@ -0,0 +1,17 @@
+#
+# Copyright 2018 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.
+#
+
+-include vendor/google_devices/taimen/proprietary/AndroidBoardVendor.mk
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 4093f57..6e39bd2 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -33,20 +33,63 @@ BOARD_VENDOR_KERNEL_MODULES += \
device/google/wahoo-kernel/gcc/touch_core_base.ko \
device/google/wahoo-kernel/gcc/ftm4.ko \
device/google/wahoo-kernel/gcc/sw49408.ko \
- device/google/wahoo-kernel/gcc/lge_battery.ko
+ device/google/wahoo-kernel/gcc/lge_battery.ko \
+ device/google/wahoo-kernel/gcc/wlan.ko
else ifeq (,$(filter-out taimen_kasan, $(TARGET_PRODUCT)))
# if TARGET_PRODUCT == taimen_kasan
BOARD_VENDOR_KERNEL_MODULES += \
device/google/wahoo-kernel/kasan/touch_core_base.ko \
device/google/wahoo-kernel/kasan/ftm4.ko \
device/google/wahoo-kernel/kasan/sw49408.ko \
- device/google/wahoo-kernel/kasan/lge_battery.ko
+ device/google/wahoo-kernel/kasan/lge_battery.ko \
+ device/google/wahoo-kernel/kasan/wlan.ko
+else ifeq (,$(filter-out taimen_kcfi, $(TARGET_PRODUCT)))
+# if TARGET_PRODUCT == taimen_kcfi
+BOARD_VENDOR_KERNEL_MODULES += \
+ device/google/wahoo-kernel/kcfi/touch_core_base.ko \
+ device/google/wahoo-kernel/kcfi/ftm4.ko \
+ device/google/wahoo-kernel/kcfi/sw49408.ko \
+ device/google/wahoo-kernel/kcfi/lge_battery.ko \
+ device/google/wahoo-kernel/kcfi/wlan.ko
+else ifeq (,$(filter-out taimen_kernel_debug_memory, $(TARGET_PRODUCT)))
+# if TARGET == taimen_kernel_debug_memory
+BOARD_VENDOR_KERNEL_MODULES += \
+ device/google/wahoo-kernel/debug_memory/touch_core_base.ko \
+ device/google/wahoo-kernel/debug_memory/ftm4.ko \
+ device/google/wahoo-kernel/debug_memory/sw49408.ko \
+ device/google/wahoo-kernel/debug_memory/lge_battery.ko \
+ device/google/wahoo-kernel/debug_memory/wlan.ko
+else ifeq (,$(filter-out taimen_kernel_debug_locking, $(TARGET_PRODUCT)))
+# if TARGET == taimen_kernel_debug_locking
+BOARD_VENDOR_KERNEL_MODULES += \
+ device/google/wahoo-kernel/debug_locking/touch_core_base.ko \
+ device/google/wahoo-kernel/debug_locking/ftm4.ko \
+ device/google/wahoo-kernel/debug_locking/sw49408.ko \
+ device/google/wahoo-kernel/debug_locking/lge_battery.ko \
+ device/google/wahoo-kernel/debug_locking/wlan.ko
+else ifeq (,$(filter-out taimen_kernel_debug_hang, $(TARGET_PRODUCT)))
+# if TARGET == taimen_kernel_debug_hang
+BOARD_VENDOR_KERNEL_MODULES += \
+ device/google/wahoo-kernel/debug_hang/touch_core_base.ko \
+ device/google/wahoo-kernel/debug_hang/ftm4.ko \
+ device/google/wahoo-kernel/debug_hang/sw49408.ko \
+ device/google/wahoo-kernel/debug_hang/lge_battery.ko \
+ device/google/wahoo-kernel/debug_hang/wlan.ko
+else ifeq (,$(filter-out taimen_kernel_debug_api, $(TARGET_PRODUCT)))
+# if TARGET == taimen_kernel_debug_api
+BOARD_VENDOR_KERNEL_MODULES += \
+ device/google/wahoo-kernel/debug_api/touch_core_base.ko \
+ device/google/wahoo-kernel/debug_api/ftm4.ko \
+ device/google/wahoo-kernel/debug_api/sw49408.ko \
+ device/google/wahoo-kernel/debug_api/lge_battery.ko \
+ device/google/wahoo-kernel/debug_api/wlan.ko
else
BOARD_VENDOR_KERNEL_MODULES += \
device/google/wahoo-kernel/touch_core_base.ko \
device/google/wahoo-kernel/ftm4.ko \
device/google/wahoo-kernel/sw49408.ko \
- device/google/wahoo-kernel/lge_battery.ko
+ device/google/wahoo-kernel/lge_battery.ko \
+ device/google/wahoo-kernel/wlan.ko
endif
-include vendor/google_devices/taimen/proprietary/BoardConfigVendor.mk
diff --git a/WCNSS_qcom_cfg.ini b/WCNSS_qcom_cfg.ini
index 18219bc..9f945f1 100644
--- a/WCNSS_qcom_cfg.ini
+++ b/WCNSS_qcom_cfg.ini
@@ -89,6 +89,11 @@ gTxChainMask1ss=0
# TPC power
gSelfGenFrmPwr=3
+gReportMaxLinkSpeed=0
+
+# Use OEM provisioned MAC address
+enable_mac_provision=1
+
################ NAN feature set start ###################
# Enable or Disable NAN
# 1=Enable (default), 0=Disable
@@ -138,6 +143,9 @@ gTxBFEnable=1
gSetTxChainmask1x1=1
gSetRxChainmask1x1=1
+# 2.4GHz Antenna Sharing is not supported
+gForce1x1Exception=0
+
#If set to 0, MCC is not allowed.
gEnableMCCMode=1
@@ -220,11 +228,7 @@ gEnableIpTcpUdpChecksumOffload=1
# Enable TCP Segmentation Offload
# 1 - enable 0 - disable
-TSOEnable=0
-
-# Enable Large Recieve Offload
-# 1 - enable(default) 0 - disable
-LROEnable=1
+TSOEnable=1
# Enable HT MPDU Density
# 4 for 2 micro sec
@@ -240,6 +244,12 @@ ce_service_max_yield_time=500
ce_service_max_rx_ind_flush=1
maxMSDUsPerRxInd=8
+# Data Stall Debugging feature
+gEnableDataStallDetection=0
+
+# Dynamic configuration of TCP limit output bytes
+gTcpLimitOutputEnable=0
+
################ Datapath feature set End ################
#############################################
@@ -270,14 +280,6 @@ gActiveMinChannelTime=20
gPNOScanSupport=1
-# Perform PNO fast scan this many number of times
-gPNOScanTimerRepeatValue=6
-
-# PNO slow scan period = gPNOSlowScanMultiplier times PNO fast scan period
-# Example: fast scan period is passed from framework (default = 10 sec), then
-# PNO slow scan period = 60 sec.
-gPNOSlowScanMultiplier=6
-
# Enable or Disable Extended Scan (GScan)
# 1=Enable (default), 0=Disable
gExtScanEnable=1
@@ -316,9 +318,11 @@ g_probe_req_ie_bitmap_0=0x0000000B
# g_probe_req_ie_bitmap_3=0x00000000
# g_probe_req_ie_bitmap_4=0x00000000
# g_probe_req_ie_bitmap_5=0x00000000
-# g_probe_req_ie_bitmap_6=0x00000000
+g_probe_req_ie_bitmap_6=0x20000000
# g_probe_req_ie_bitmap_7=0x00000000
+gProbeReqOUIs=0050F208
+
#############################################
# Power related configurations
#############################################
@@ -373,7 +377,6 @@ EseEnabled=1
gNeighborLookupThreshold=76
gNeighborReassocThreshold=81
-gNeighborScanTimerPeriod=200
gNeighborScanChannelMinTime=20
gNeighborScanChannelMaxTime=30
gMaxNeighborReqTries=3
@@ -411,6 +414,9 @@ gRoamOffloadEnabled=1
gAllowDFSChannelRoam=1
+# LFR Subnet Detection
+gLFRSubnetDetectionEnable=0
+
#############################################
# Offload related configurations
#############################################
@@ -461,6 +467,8 @@ gHwFilterMode=0
# Default value of gEnableWoW is 3.
# gEnableWoW=0
+# 11k feature offload
+11k_offload_enable_bitmask=0
#############################################
# Logging related configurations
@@ -578,9 +586,6 @@ gAPChannelSelectEndChannel=11
# DFS Master Capability
gEnableDFSMasterCap=1
-# Disable 11AC for hotspot
-gSapForce11NFor11AC=1
-
#Auto Shutdown Value in seconds. A value of 0 means Auto shutoff is disabled
gAPAutoShutOff=0
@@ -595,8 +600,6 @@ gSapSccChanAvoidance=0
#Enable/Disable Tx beamformee in SAP mode
gEnableTxBFeeSAP=1
-
-
#Enable/Disable dual MAC feature
# 0 - enable DBS
# 1 - disable DBS
@@ -616,6 +619,50 @@ enable_11d_in_world_mode=1
gEnableLPRx=0
+gDptraceConfig=1,4,1,126
+
+gAP11ACOverride=0
+
+#Enable/Disable chain selection optimization for one chain dtim
+#Min: 0
+#MAX: 30
+gEnableDTIMSelectionDiversity=3
+
+#############################################
+# MAWC related configurations
+#############################################
+
+# MAWCEnabled - Enable/Disable Motion Aided Wireless Connectivity Global
+MAWCEnabled=0
+
+# mawc_roam_enabled - Enable/Disable MAWC during roaming
+mawc_roam_enabled=0
+
+# Enable/Disable the Motion Aided Wireless Connectivity
+# based NLO using this parameter
+mawc_nlo_enabled=0
+
+# Enable/Disable rtt sta mac randomization
+enable_rtt_mac_randomization=1
+
+# Channel selection logic DBS (1) vs MCC (0)
+channel_select_logic_conc=0
+
+gConfigVCmode=0
+
+# WLM (Wireless Latency Manager)
+wlm_latency_flags_moderate=0
+wlm_latency_flags_low=0
+wlm_latency_flags_ultralow=0
+
+# OCE Feature
+oce_sta_enable=0
+oce_sap_enable=0
+num_oce_wan_slots=0
+oce_wan_score_idx7_to_4=0
+oce_wan_score_idx11_to_8=0
+oce_enable_rssi_assoc_reject=0
+
END
# Note: Configuration parser would not read anything past the END marker
diff --git a/aosp_taimen.mk b/aosp_taimen.mk
index fa46a05..5653fd5 100644
--- a/aosp_taimen.mk
+++ b/aosp_taimen.mk
@@ -24,13 +24,14 @@ $(call inherit-product-if-exists, vendor/google_devices/taimen/proprietary/devic
PRODUCT_PACKAGES += \
Dialer \
- Launcher3 \
+ Launcher3QuickStep \
WallpaperPicker \
netutils-wrapper-1.0 \
vndk_package
PRODUCT_COPY_FILES += \
- device/google/taimen/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
+ device/google/taimen/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
+ frameworks/native/data/etc/aosp_excluded_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/aosp_excluded_hardware.xml
PRODUCT_RESTRICT_VENDOR_FILES := owner
diff --git a/audio_effects.xml b/audio_effects.xml
index f22bf51..ed6ad27 100644
--- a/audio_effects.xml
+++ b/audio_effects.xml
@@ -6,6 +6,7 @@
<library name="visualizer_sw" path="libvisualizer.so"/>
<library name="visualizer_hw" path="libqcomvisualizer.so"/>
<library name="downmix" path="libdownmix.so"/>
+ <library name="dynamics_processing" path="libdynproc.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="proxy" path="libeffectproxy.so"/>
<library name="offload_bundle" path="libqcompostprocbundle.so"/>
@@ -55,6 +56,7 @@
<effect name="alarm_helper" library="volume_listener" uuid="09f303e2-0590-11e5-8fdb-0025b32654a0"/>
<effect name="voice_helper" library="volume_listener" uuid="0ace5c08-0590-11e5-ae9e-0025b32654a0"/>
<effect name="notification_helper" library="volume_listener" uuid="0b776dde-0590-11e5-81ba-0025b32654a0"/>
+ <effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
</effects>
<postprocess>
<stream type="music">
diff --git a/audio_platform_info_tavil.xml b/audio_platform_info_tavil.xml
index 69ae11a..846e305 100644
--- a/audio_platform_info_tavil.xml
+++ b/audio_platform_info_tavil.xml
@@ -59,10 +59,12 @@
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19" />
<usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19" />
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="4" />
+ <usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6" />
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7" />
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="4" />
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16" />
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16" />
+ <usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27" />
</pcm_ids>
<config_params>
<param key="input_mic_max_count" value="3"/>
@@ -84,7 +86,9 @@
<device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
+ <device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
+ <device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="voice-tty-vco-usb" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="voice-tty-hco-handset" interface="QUAT_MI2S_RX"/>
@@ -98,6 +102,60 @@
<app uc_type="PCM_CAPTURE" mode="default" bit_width="24" id="69940" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="voip" bit_width="16" id="69945" max_rate="48000" />
</app_types>
+ <microphone_characteristics>
+ <microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
+ group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
+ frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
+ responses="-0.98 -0.95 -0.89 -0.85 -0.81 -0.79 -0.77 -0.74 -0.71 -0.68 -0.66 -0.66 -0.63 -0.60 -0.57 -0.54 -0.53 -0.50 -0.50 -0.48 -0.46 -0.46 -0.41 -0.38 -0.33 -0.30 -0.34 -0.31 -0.29 -0.26 -0.23 -0.19 -0.17 -0.14 -0.11 -0.08 -0.05 -0.03 0.00 0.01 0.00 0.03 0.03 0.08 0.12 0.16 0.18 0.19 0.30 0.39 0.49 0.56 0.63 0.82 0.83 0.84 0.83 0.93 0.99 1.24 1.50 1.76 2.00 2.05 2.36 2.63 2.71 2.73 3.00 3.12 3.28 4.61 5.23 7.94 7.00 7.88 8.87 9.95 11.41 12.67 13.87 17.63 17.87 18.83 23.27 27.86 38.70 36.74 31.66 25.61 27.23 19.68 16.12"
+ sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.02635 0.00454 0.00794" />
+ <microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
+ group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
+ frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
+ responses="-1.17 -1.13 -1.09 -1.06 -1.02 -0.98 -0.96 -0.94 -0.91 -0.87 -0.84 -0.82 -0.79 -0.78 -0.76 -0.75 -0.72 -0.70 -0.68 -0.66 -0.63 -0.60 -0.58 -0.55 -0.53 -0.53 -0.49 -0.46 -0.43 -0.41 -0.37 -0.33 -0.30 -0.27 -0.24 -0.21 -0.16 -0.12 -0.07 -0.02 0.00 0.06 0.09 0.12 0.17 0.24 0.25 0.25 0.35 0.45 0.56 0.66 0.78 0.96 0.98 1.08 1.26 1.49 1.67 1.93 2.04 2.28 2.47 2.65 2.86 3.42 3.93 4.54 5.03 5.59 6.40 7.59 8.72 10.83 10.43 13.91 18.52 25.40 22.48 16.63 13.18 10.53 8.41 5.85 3.78 3.68 3.19 2.93 0.59 2.93 2.62 1.44 3.01"
+ sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.04974 0.15736 0.00426" />
+ <microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
+ group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
+ frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
+ responses="-0.95 -0.91 -0.87 -0.84 -0.79 -0.77 -0.76 -0.75 -0.71 -0.67 -0.65 -0.63 -0.61 -0.61 -0.59 -0.56 -0.56 -0.53 -0.51 -0.50 -0.49 -0.46 -0.45 -0.41 -0.41 -0.37 -0.33 -0.32 -0.30 -0.28 -0.24 -0.23 -0.20 -0.19 -0.15 -0.15 -0.12 -0.09 -0.04 -0.01 0.00 0.02 0.05 0.11 0.14 0.19 0.23 0.31 0.44 0.52 0.63 0.69 0.75 0.84 1.22 1.19 1.13 1.20 1.27 1.36 1.40 1.56 1.65 1.88 1.99 2.11 2.33 2.54 2.89 3.15 3.35 4.08 4.99 5.38 5.05 5.54 6.44 6.66 10.40 8.75 8.47 9.10 8.62 16.96 14.69 16.88 19.24 25.51 29.41 42.32 31.65 33.96 25.48"
+ sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.05034 0.15409 0.00794" />
+ </microphone_characteristics>
+ <!-- TODO: Fake channel mapping data, need to populate with actual data -->
+ <snd_devices>
+ <input_snd_device>
+ <input_snd_device_mic_mapping>
+ <snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
+ <mic_info mic_device_id="builtin_mic_1"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
+ </snd_dev>
+ <snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
+ <mic_info mic_device_id="builtin_mic_1"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+ <mic_info mic_device_id="builtin_mic_2"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
+ </snd_dev>
+ <snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
+ <mic_info mic_device_id="builtin_mic_1"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+ <mic_info mic_device_id="builtin_mic_3"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
+ </snd_dev>
+ <snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
+ <mic_info mic_device_id="builtin_mic_1"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
+ <mic_info mic_device_id="builtin_mic_3"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+ </snd_dev>
+ <snd_dev in_snd_device="SND_DEVICE_IN_THREE_MIC">
+ <mic_info mic_device_id="builtin_mic_1"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+ <mic_info mic_device_id="builtin_mic_2"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+ <mic_info mic_device_id="builtin_mic_3"
+ channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
+ </snd_dev>
+ </input_snd_device_mic_mapping>
+ </input_snd_device>
+ </snd_devices>
</audio_platform_info>
diff --git a/audio_policy_volumes.xml b/audio_policy_volumes.xml
index 5e3aa26..96b6306 100644
--- a/audio_policy_volumes.xml
+++ b/audio_policy_volumes.xml
@@ -42,7 +42,9 @@ volume index from 0 to 100.
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
@@ -50,49 +52,59 @@ volume index from 0 to 100.
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_SPEAKER"
- ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEADSET"
- ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-5000</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER"
- ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEADSET"
- ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_SPEAKER">
- <point>1,-5000</point>
+ <point>0,-5000</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_EXT_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET"
- ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4000</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>0,-4200</point>
<point>33,-2800</point>
@@ -112,7 +124,9 @@ volume index from 0 to 100.
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
@@ -120,11 +134,13 @@ volume index from 0 to 100.
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_SPEAKER"
- ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
@@ -132,11 +148,13 @@ volume index from 0 to 100.
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_SPEAKER"
- ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_SPEAKER"
@@ -145,14 +163,18 @@ volume index from 0 to 100.
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="SILENT_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEADSET"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_SPEAKER"
- ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EARPIECE"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
- ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="TAIMEN_DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_SPEAKER"
@@ -161,6 +183,8 @@ volume index from 0 to 100.
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="FULL_SCALE_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_SPEAKER"
@@ -169,6 +193,8 @@ volume index from 0 to 100.
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="FULL_SCALE_VOLUME_CURVE"/>
+ <volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
+ ref="FULL_SCALE_VOLUME_CURVE"/>
</volumes>
-
+
diff --git a/default_volume_tables.xml b/default_volume_tables.xml
index 5a776a3..fff3ae0 100644
--- a/default_volume_tables.xml
+++ b/default_volume_tables.xml
@@ -25,45 +25,90 @@
<point>0,-9600</point>
<point>100,-9600</point>
</reference>
- <reference name="DEFAULT_SYSTEM_VOLUME_CURVE">
+ <reference name="TAIMEN_DEFAULT_SYSTEM_VOLUME_CURVE">
<!-- Default System reference Volume Curve -->
<point>1,-2400</point>
<point>33,-1800</point>
<point>66,-1200</point>
<point>100,-600</point>
</reference>
- <reference name="DEFAULT_MEDIA_VOLUME_CURVE">
+ <reference name="TAIMEN_DEFAULT_MEDIA_VOLUME_CURVE">
<!-- Default Media reference Volume Curve -->
<point>1,-5800</point>
<point>100,0</point>
</reference>
- <reference name="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE">
- <!--Default Volume Curve -->
+ <reference name="TAIMEN_DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE">
+ <!--Default Headset Volume Curve -->
<point>1,-4950</point>
<point>33,-3350</point>
<point>66,-1700</point>
<point>100,0</point>
</reference>
- <reference name="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE">
- <!-- Default is Speaker Media Volume Curve -->
+ <reference name="TAIMEN_DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE">
+ <!-- Default Speaker Volume Curve -->
<point>1,-5800</point>
<point>20,-4000</point>
<point>60,-1700</point>
<point>100,0</point>
</reference>
- <reference name="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE">
- <!--Default Volume Curve -->
+ <reference name="TAIMEN_DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE">
+ <!--Default Earpiece Volume Curve -->
<point>1,-4950</point>
<point>33,-3350</point>
<point>66,-1700</point>
<point>100,0</point>
</reference>
- <reference name="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE">
- <!-- Default is Ext Media System Volume Curve -->
+ <reference name="TAIMEN_DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE">
+ <!-- Default Ext Media System Volume Curve -->
<point>1,-5800</point>
<point>20,-4000</point>
<point>60,-2100</point>
<point>100,-1000</point>
</reference>
+ <reference name="TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE">
+ <!-- Default Hearing Aid Volume Curve -->
+ <point>1,-12700</point>
+ <point>20,-8000</point>
+ <point>60,-4000</point>
+ <point>100,0</point>
+ </reference>
+ <!-- ******************************* -->
+ <!-- Non-mutable volume curves below -->
+ <reference name="TAIMEN_DEFAULT_NON_MUTABLE_SPEAKER_VOLUME_CURVE">
+ <point>0,-5800</point>
+ <point>20,-4000</point>
+ <point>60,-1700</point>
+ <point>100,0</point>
+ </reference>
+ <reference name="TAIMEN_DEFAULT_NON_MUTABLE_HEADSET_VOLUME_CURVE">
+ <point>0,-4950</point>
+ <point>33,-3350</point>
+ <point>66,-1700</point>
+ <point>100,0</point>
+ </reference>
+ <reference name="TAIMEN_DEFAULT_NON_MUTABLE_EARPIECE_VOLUME_CURVE">
+ <point>0,-4950</point>
+ <point>33,-3350</point>
+ <point>66,-1700</point>
+ <point>100,0</point>
+ </reference>
+ <reference name="TAIMEN_DEFAULT_NON_MUTABLE_EXT_VOLUME_CURVE">
+ <point>0,-5800</point>
+ <point>20,-4000</point>
+ <point>60,-2100</point>
+ <point>100,-1000</point>
+ </reference>
+ <reference name="TAIMEN_DEFAULT_NON_MUTABLE_VOLUME_CURVE">
+ <point>0,-5800</point>
+ <point>100,0</point>
+ </reference>
+ <reference name="TAIMEN_DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE">
+ <!-- Default non-mutable Hearing Aid Volume Curve -->
+ <!-- based on TAIMEN_DEFAULT_HEARING_AID_VOLUME_CURVE -->
+ <point>0,-12700</point>
+ <point>20,-8000</point>
+ <point>60,-4000</point>
+ <point>100,0</point>
+ </reference>
</volumes>
diff --git a/device.mk b/device.mk
index 74ee9d6..6335298 100644
--- a/device.mk
+++ b/device.mk
@@ -70,6 +70,9 @@ PRODUCT_PROPERTY_OVERRIDES += vendor.audio.adm.buffering.ms=3
PRODUCT_PROPERTY_OVERRIDES += audio_hal.period_multiplier=2
PRODUCT_PROPERTY_OVERRIDES += af.fast_track_multiplier=1
+# Whether by default, the eSIM system UI, including that in SUW and Settings, will be shown.
+PRODUCT_SYSTEM_DEFAULT_PROPERTIES += esim.enable_esim_system_ui_by_default=false
+
# Pro audio feature
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml
@@ -99,11 +102,16 @@ PRODUCT_COPY_FILES += \
PRODUCT_COPY_FILES += \
device/google/taimen/touchscreen.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/touchscreen.idc
+# Keymaster configuration
+PRODUCT_COPY_FILES += \
+ frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml
+
# Enable modem logging
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_PROPERTY_OVERRIDES += \
persist.sys.modem.diag.qdb=0\
persist.sys.modem.diag.mdlog=true \
+ persist.sys.modem.diag.mdlog_br_num=5 \
ro.radio.log_loc="/data/vendor/modem_dump" \
ro.radio.log_prefix="modem_log_"
endif
@@ -115,9 +123,14 @@ PRODUCT_PROPERTY_OVERRIDES += \
# Vibrator HAL
PRODUCT_PROPERTY_OVERRIDES += \
ro.vibrator.hal.click.duration=10 \
- ro.vibrator.hal.tick.duration=4
+ ro.vibrator.hal.tick.duration=4 \
+ ro.vibrator.hal.heavyclick.duration=12
# Enable Perfetto traced
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
persist.traced.enable=1
+# Early phase offset for SurfaceFlinger (b/75985430)
+PRODUCT_PROPERTY_OVERRIDES += \
+ debug.sf.early_phase_offset_ns=5000000
+
diff --git a/init-taimen.rc b/init-taimen.rc
index 127abf6..14c5fc0 100644
--- a/init-taimen.rc
+++ b/init-taimen.rc
@@ -31,15 +31,18 @@ on boot
on init && property:ro.boot.revision=*
setprop ro.boot.hardware.revision ${ro.boot.revision}
-on property:init.svc.fps_hal=running && property:ro.boot.revision=rev_0
- stop fps_hal
+on property:init.svc.vendor.fps_hal=running && property:ro.boot.revision=rev_0
+ stop vendor.fps_hal
on property:sys.all.modules.ready=1
# Update touch firmware if required
write /sys/devices/virtual/input/ftm4_touch/check_fw 1
-on property:sys.retaildemo.enabled=* && property:sys.all.modules.ready=1
- write /sys/module/lge_battery/parameters/demo_mode ${sys.retaildemo.enabled}
-
on property:ro.boot.hardware.display=2-1
setprop sys.display.low_persistence_mode_brightness 255
+
+on property:persist.vendor.charge.stop.level=* && property:sys.all.modules.ready=1
+ write /sys/module/lge_battery/parameters/charge_stop_level ${persist.vendor.charge.stop.level}
+
+on property:persist.vendor.charge.start.level=* && property:sys.all.modules.ready=1
+ write /sys/module/lge_battery/parameters/charge_start_level ${persist.vendor.charge.start.level}
diff --git a/init.insmod.cfg b/init.insmod.cfg
index 42a97a0..6fceef9 100644
--- a/init.insmod.cfg
+++ b/init.insmod.cfg
@@ -2,3 +2,4 @@ insmod /vendor/lib/modules/touch_core_base.ko
insmod /vendor/lib/modules/ftm4.ko
insmod /vendor/lib/modules/sw49408.ko
insmod /vendor/lib/modules/lge_battery.ko
+insmod /vendor/lib/modules/wlan.ko
diff --git a/mixer_paths_tavil.xml b/mixer_paths_tavil.xml
index d1c6c69..1151590 100644
--- a/mixer_paths_tavil.xml
+++ b/mixer_paths_tavil.xml
@@ -83,8 +83,10 @@
<ctl name="SLIMBUS_3_RX Port Mixer MI2S_TX" value="0" />
<ctl name="SLIMBUS_0_RX Port Mixer SLIM_0_TX" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia1" value="0" />
+ <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia5" value="0" />
+ <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia6" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia11" value="0" />
@@ -116,6 +118,9 @@
<ctl name="MultiMedia1 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_4_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_7_TX" value="0" />
+ <ctl name="MultiMedia2 Mixer SLIM_0_TX" value="0" />
+ <ctl name="MultiMedia2 Mixer SLIM_7_TX" value="0" />
+ <ctl name="MultiMedia10 Mixer SLIM_7_TX" value="0" />
<ctl name="HDMI Mixer MultiMedia1" value="0" />
<ctl name="HDMI Mixer MultiMedia2" value="0" />
<ctl name="HDMI Mixer MultiMedia3" value="0" />
@@ -195,9 +200,9 @@
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="MultiMedia1 Mixer USB_AUDIO_TX" value="0" />
- <ctl name="MultiMedia3 Mixer USB_AUDIO_TX" value="0" />
<ctl name="MultiMedia5 Mixer USB_AUDIO_TX" value="0" />
<ctl name="MultiMedia8 Mixer USB_AUDIO_TX" value="0" />
+ <ctl name="MultiMedia10 Mixer USB_AUDIO_TX" value="0" />
<ctl name="USB_AUDIO_RX Channels" value="Two" />
<ctl name="USB_AUDIO_RX SampleRate" value="KHZ_48" />
<ctl name="USB_AUDIO_RX Format" value="S16_LE" />
@@ -205,7 +210,9 @@
<ctl name="USB_AUDIO_TX SampleRate" value="KHZ_48" />
<ctl name="USB_AUDIO_TX Format" value="S16_LE" />
<ctl name="MultiMedia6 Mixer SLIM_0_TX" value="0" />
+ <ctl name="MultiMedia10 Mixer SLIM_0_TX" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia1" value="0" />
+ <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia3" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia5" value="0" />
@@ -484,6 +491,7 @@
<!-- Incall Music -->
<ctl name="Incall_Music Audio Mixer MultiMedia2" value="0" />
+ <ctl name="Incall_Music Audio Mixer MultiMedia9" value="0" />
<!-- Incall Music End -->
<!-- compress-voip-call start -->
@@ -513,12 +521,6 @@
<ctl name="VoWLAN_Tx Mixer USB_AUDIO_TX_VoWLAN" value="0" />
<!-- VoWLAN end-->
- <!-- Audio BTSCO -->
- <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia1" value="0" />
- <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia4" value="0" />
- <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia5" value="0" />
- <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia6" value="0" />
- <ctl name="MultiMedia1 Mixer SLIM_7_TX" value="0" />
<!-- IIR/voice anc -->
<ctl name="IIR0 Band1" id ="0" value="268435456" />
<ctl name="IIR0 Band1" id ="1" value="0" />
@@ -612,6 +614,13 @@
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia3" value="0" />
+ <!-- mmap record init -->
+ <ctl name="MultiMedia3 Mixer SLIM_0_TX" value="0" />
+ <ctl name="MultiMedia3 Mixer AUX_PCM_UL_TX" value="0" />
+ <ctl name="MultiMedia3 Mixer TERT_MI2S_TX" value="0" />
+ <ctl name="MultiMedia3 Mixer USB_AUDIO_TX" value="0" />
+ <!-- mmap record init end -->
+
<!-- Speaker swap -->
<ctl name="Swap channel" value="0" />
@@ -865,10 +874,35 @@
<path name="audio-ull-playback bt-sco-wb" />
</path>
+ <path name="hifi-playback">
+ <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia2" value="1" />
+ </path>
+
+ <path name="hifi-playback speaker">
+ <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia2" value="1" />
+ </path>
+
+ <path name="hifi-playback handset">
+ <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia2" value="1" />
+ </path>
+
+ <path name="hifi-playback handset-hac">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia2" value="1" />
+ </path>
+
<path name="hifi-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia2" value="1" />
</path>
+ <path name="hifi-playback bt-sco">
+ <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia2" value="1" />
+ </path>
+
+ <path name="hifi-playback bt-sco-wb">
+ <ctl name="BT SampleRate" value="KHZ_16" />
+ <path name="hifi-playback bt-sco" />
+ </path>
+
<path name="hifi-playback afe-proxy">
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="1" />
</path>
@@ -881,10 +915,23 @@
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia2" value="1" />
</path>
+ <path name="hifi-record">
+ <ctl name="MultiMedia2 Mixer SLIM_0_TX" value="1" />
+ </path>
+
<path name="hifi-record usb-headset-mic">
<ctl name="MultiMedia2 Mixer USB_AUDIO_TX" value="1" />
</path>
+ <path name="hifi-record bt-sco">
+ <ctl name="MultiMedia2 Mixer SLIM_7_TX" value="1" />
+ </path>
+
+ <path name="hifi-record bt-sco-wb">
+ <ctl name="BT SampleRate" value="KHZ_16" />
+ <path name="hifi-record bt-sco" />
+ </path>
+
<path name="compress-offload-playback">
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia4" value="1" />
</path>
@@ -897,6 +944,10 @@
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia4" value="1" />
</path>
+ <path name="compress-offload-playback handset-hac">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="1" />
+ </path>
+
<path name="compress-offload-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia4" value="1" />
</path>
@@ -959,17 +1010,25 @@
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia3" value="1" />
</path>
+ <path name="mmap-playback handset">
+ <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia3" value="1" />
+ </path>
+
+ <path name="mmap-playback handset-hac">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia3" value="1" />
+ </path>
+
<path name="mmap-playback speaker-and-headphones">
<path name="mmap-playback speaker" />
<path name="mmap-playback" />
</path>
<path name="mmap-playback bt-sco">
- <ctl name="AUX_PCM_RX Audio Mixer MultiMedia3" value="1" />
+ <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia3" value="1" />
</path>
<path name="mmap-playback bt-sco-wb">
- <ctl name="AUX PCM SampleRate" value="16000" />
+ <ctl name="BT SampleRate" value="KHZ_16" />
<path name="mmap-playback bt-sco" />
</path>
@@ -1560,10 +1619,11 @@
<ctl name="DEC7 Volume" value="86" />
</path>
- <!-- CAMCORDER MIC 2nd D:4 dB -->
+ <!-- CAMCORDER MIC 2nd D:0 dB -->
<path name="camcorder-mic">
- <path name="dmic1" />
- <ctl name="DEC7 Volume" value="88" />
+ <path name="dmic5" />
+ <ctl name="DEC6 Volume" value="84" />
+ <ctl name="SLIM_0_TX Format" value="S24_LE" />
</path>
<!-- TX Dual-mic 1st MIC D:4 dB, 2nd MIC:4 dB -->
@@ -1816,10 +1876,30 @@
<path name="bt-sco-headset">
</path>
- <path name="bt-sco-mic">
+ <path name="bt-sco-headset-wb">
</path>
- <path name="bt-sco-headset-wb">
+ <path name="speaker-and-bt-sco">
+ <path name="speaker"/>
+ <path name="bt-sco-headset"/>
+ </path>
+
+ <path name="speaker-and-bt-sco-wb">
+ <path name="speaker"/>
+ <path name="bt-sco-headset-wb"/>
+ </path>
+
+ <path name="speaker-safe-and-bt-sco">
+ <path name="speaker-safe"/>
+ <path name="bt-sco-headset"/>
+ </path>
+
+ <path name="speaker-safe-and-bt-sco-wb">
+ <path name="speaker-safe"/>
+ <path name="bt-sco-headset-wb"/>
+ </path>
+
+ <path name="bt-sco-mic">
</path>
<path name="bt-sco-mic-wb">
@@ -2050,6 +2130,10 @@
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia10" value="1" />
</path>
+ <path name="audio-playback-voip handset-hac">
+ <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia10" value="1" />
+ </path>
+
<!-- VoIP Tx settings -->
<path name="audio-record-voip">
<ctl name="MultiMedia10 Mixer SLIM_0_TX" value="1" />
@@ -2214,4 +2298,72 @@
<path name="incall-rec-uplink-and-downlink" />
</path>
+ <path name="incall-music-uplink">
+ <ctl name="Incall_Music Audio Mixer MultiMedia9" value="1" />
+ </path>
+
+ <path name="incall-music-uplink speaker">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink handset">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink handset-hac">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink display-port">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink bt-sco">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink bt-sco-wb">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink speaker-and-display-port">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink afe-proxy">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink usb-headphones">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink usb-headset">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink speaker-and-usb-headphones">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink headphones">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink speaker-and-headphones">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink speaker-and-bt-sco">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink voice-tty-hco-handset">
+ <path name="incall-music-uplink" />
+ </path>
+
+ <path name="incall-music-uplink voice-tty-vco-usb">
+ <path name="incall-music-uplink" />
+ </path>
+
</mixer>
diff --git a/nfc/libnfc-nxp.taimen.conf b/nfc/libnfc-nxp.taimen.conf
index c48c651..1411ac8 100644
--- a/nfc/libnfc-nxp.taimen.conf
+++ b/nfc/libnfc-nxp.taimen.conf
@@ -210,7 +210,7 @@ NXP_RF_CONF_BLK_4={ 20, 02, 5B, 01,
# UICC2 bit rate A0D1
# SWP1A interface A0D4
# DWP intf behavior config, SVDD Load activated by default if set to 0x31 A037
-NXP_CORE_CONF_EXTN={20, 02, 2D, 0B,
+NXP_CORE_CONF_EXTN={20, 02, 32, 0C,
A0, EC, 01, 01,
A0, ED, 01, 01,
A0, 5E, 01, 01,
@@ -221,7 +221,8 @@ NXP_CORE_CONF_EXTN={20, 02, 2D, 0B,
A0, D1, 01, 02,
A0, D4, 01, 00,
A0, DD, 01, 2D,
- A0, 37, 01, 35
+ A0, 37, 01, 35,
+ A0, 08, 02, 00, 81
}
# A0, F2, 01, 01,
# A0, 40, 01, 01,
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
index 5605121..bab33e2 100644
--- a/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
@@ -26,63 +26,81 @@
<!-- MMS user agent prolfile url -->
<string name="config_mms_user_agent_profile_url" translatable="false">http://www.gstatic.com/android/sms/G011C.xml</string>
- <!-- Array of light sensor LUX values to define our levels for auto backlight brightness support.
- The N entries of this array define N 1 zones as follows:
+ <!-- Array of light sensor lux values to define our levels for auto backlight brightness support.
+ The N entries of this array define N + 1 control points as follows:
+ (1-based arrays)
- Zone 0: 0 <= LUX < array[0]
- Zone 1: array[0] <= LUX < array[1]
+ Point 1: (0, value[1]): lux <= 0
+ Point 2: (level[1], value[2]): 0 < lux <= level[1]
+ Point 3: (level[2], value[3]): level[2] < lux <= level[3]
...
- Zone N: array[N - 1] <= LUX < array[N]
- Zone N + 1 array[N] <= LUX < infinity
+ Point N+1: (level[N], value[N+1]): level[N] < lux
+
+ The control points must be strictly increasing. Each control point
+ corresponds to an entry in the brightness backlight values arrays.
+ For example, if lux == level[1] (first element of the levels array)
+ then the brightness will be determined by value[2] (second element
+ of the brightness values array).
+
+ Spline interpolation is used to determine the auto-brightness
+ backlight values for lux levels between these control points.
Must be overridden in platform specific overlays -->
<integer-array name="config_autoBrightnessLevels">
- <item>5</item>
+ <item>1</item>
+ <item>2</item>
+ <item>3</item>
+ <item>4</item>
+ <item>8</item>
+ <item>12</item>
<item>20</item>
- <item>40</item>
- <item>100</item>
- <item>325</item>
- <item>600</item>
- <item>1250</item>
- <item>2200</item>
- <item>4000</item>
+ <item>33</item>
+ <item>55</item>
+ <item>90</item>
+ <item>148</item>
+ <item>245</item>
+ <item>403</item>
+ <item>665</item>
+ <item>1097</item>
+ <item>1808</item>
+ <item>2981</item>
<item>5000</item>
</integer-array>
- <!-- Array of output values for LCD backlight corresponding to the LUX values
- in the config_autoBrightnessLevels array. This array should have size one greater
- than the size of the config_autoBrightnessLevels array.
- This must be overridden in platform specific overlays -->
- <integer-array name="config_autoBrightnessLcdBacklightValues">
- <item>9</item> <!-- 0-5 -->
- <item>30</item> <!-- 5-20 -->
- <item>45</item> <!-- 20-40 -->
- <item>62</item> <!-- 40-100 -->
- <item>78</item> <!-- 100-325 -->
- <item>96</item> <!-- 325-600 -->
- <item>119</item> <!-- 600-1250 -->
- <item>146</item> <!-- 1250-2200 -->
- <item>178</item> <!-- 2200-4000 -->
- <item>221</item> <!-- 4000-5000 -->
- <item>255</item> <!-- 5000+ -->
- </integer-array>
+ <!-- Array of desired screen brightness in nits corresponding to the lux values
+ in the config_autoBrightnessLevels array. As with config_screenBrightnessMinimumNits and
+ config_screenBrightnessMaximumNits, the display brightness is defined as the measured
+ brightness of an all-white image.
- <!-- Array of output values for button backlight corresponding to the LUX values
- in the config_autoBrightnessLevels array. This array should have size one greater
- than the size of the config_autoBrightnessLevels array.
- This must be overridden in platform specific overlays -->
- <integer-array name="config_autoBrightnessButtonBacklightValues">
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- <item>0</item>
- </integer-array>
+ If this is defined then:
+ - config_autoBrightnessLcdBacklightValues should not be defined
+ - config_screenBrightnessNits must be defined
+ - config_screenBrightnessBacklight must be defined
+
+ This array should have size one greater than the size of the config_autoBrightnessLevels
+ array. The brightness values must be non-negative and non-decreasing. This must be
+ overridden in platform specific overlays -->
+ <array name="config_autoBrightnessDisplayValuesNits">
+ <item>7.702998</item> <!-- 0-1 -->
+ <item>32.31226</item> <!-- 1-2 -->
+ <item>38.786167</item> <!-- 2-3 -->
+ <item>43.30993</item> <!-- 3-4 -->
+ <item>46.851162</item> <!-- 4-8 -->
+ <item>55.90478</item> <!-- 8-12 -->
+ <item>61.334614</item> <!-- 12-20 -->
+ <item>68.43880</item> <!-- 20-33 -->
+ <item>75.59099</item> <!-- 33-55 -->
+ <item>82.86860</item> <!-- 55-90 -->
+ <item>91.49397</item> <!-- 90-148 -->
+ <item>102.49851</item> <!-- 148-245 -->
+ <item>118.81740</item> <!-- 245-403 -->
+ <item>144.68486</item> <!-- 403-665 -->
+ <item>180.69225</item> <!-- 665-1097 -->
+ <item>225.84135</item> <!-- 1097-1808 -->
+ <item>292.46844</item> <!-- 1808-2981 -->
+ <item>377.05084</item> <!-- 2981-5000 -->
+ <item>481.93427</item> <!-- 5000+ -->
+ </array>
<!-- Shutdown if the battery temperature exceeds (this value * 0.1) Celsius. -->
<integer name="config_shutdownBatteryTemperature">600</integer>
@@ -92,28 +110,176 @@
that can be set by the user. -->
<integer name="config_screenBrightnessDim">15</integer>
- <!-- Minimum allowable screen brightness to use in a very dark room.
- This value sets the floor for the darkest possible auto-brightness
- adjustment. It is expected to be somewhat less than the first entry in
- config_autoBrightnessLcdBacklightValues so as to allow the user to have
- some range of adjustment to dim the screen further than usual in very
- dark rooms. The contents of the screen must still be clearly visible
- in darkness (although they may not be visible in a bright room). -->
- <integer name="config_screenBrightnessDark">1</integer>
-
<!-- Screen brightness when dozing. -->
<integer name="config_screenBrightnessDoze">13</integer>
+ <!-- Whether the display blanks itself when transition from a doze to a non-doze state -->
+ <bool name="config_displayBlanksAfterDoze">true</bool>
+
<!-- Default screen brightness setting.
Must be in the range specified by minimum and maximum. -->
<integer name="config_screenBrightnessSettingDefault">98</integer>
- <!-- Default screen brightness for VR setting. Default value: 0x56 => 86. -->
- <integer name="config_screenBrightnessForVrSettingDefault">86</integer>
+ <!-- Default screen brightness for VR setting. Default value: 0x8c => 140. -->
+ <integer name="config_screenBrightnessForVrSettingDefault">140</integer>
+
+ <!-- Minimum screen brightness for VR setting. Default value: 0x8c => 140. -->
+ <integer name="config_screenBrightnessForVrSettingMinimum">140</integer>
<!-- Minimum screen brightness setting allowed by the power manager.
The user is forbidden from setting the brightness below this level. -->
- <integer name="config_screenBrightnessSettingMinimum">4</integer>
+ <integer name="config_screenBrightnessSettingMinimum">1</integer>
+
+ <!-- An array describing the screen's backlight values corresponding to the brightness
+ values in the config_screenBrightnessNits array.
+
+ This array should be equal in size to config_screenBrightnessBacklight. -->
+ <integer-array name="config_screenBrightnessBacklight">
+ <item>1</item>
+ <item>2</item>
+ <item>3</item>
+ <item>4</item>
+ <item>5</item>
+ <item>6</item>
+ <item>7</item>
+ <item>8</item>
+ <item>9</item>
+ <item>10</item>
+ <item>11</item>
+ <item>12</item>
+ <item>13</item>
+ <item>14</item>
+ <item>15</item>
+ <item>16</item>
+ <item>17</item>
+ <item>18</item>
+ <item>19</item>
+ <item>20</item>
+ <item>25</item>
+ <item>30</item>
+ <item>35</item>
+ <item>40</item>
+ <item>45</item>
+ <item>50</item>
+ <item>55</item>
+ <item>60</item>
+ <item>65</item>
+ <item>70</item>
+ <item>75</item>
+ <item>80</item>
+ <item>85</item>
+ <item>90</item>
+ <item>95</item>
+ <item>100</item>
+ <item>105</item>
+ <item>110</item>
+ <item>115</item>
+ <item>120</item>
+ <item>125</item>
+ <item>130</item>
+ <item>135</item>
+ <item>140</item>
+ <item>145</item>
+ <item>150</item>
+ <item>155</item>
+ <item>160</item>
+ <item>165</item>
+ <item>170</item>
+ <item>175</item>
+ <item>180</item>
+ <item>185</item>
+ <item>190</item>
+ <item>195</item>
+ <item>200</item>
+ <item>205</item>
+ <item>210</item>
+ <item>215</item>
+ <item>220</item>
+ <item>225</item>
+ <item>230</item>
+ <item>235</item>
+ <item>240</item>
+ <item>245</item>
+ <item>250</item>
+ <item>255</item>
+ </integer-array>
+
+ <!-- An array of floats describing the screen brightness in nits corresponding to the backlight
+ values in the config_screenBrightnessBacklight array. On OLED displays these values
+ should be measured with an all white image while the display is in the fully on state.
+ Note that this value should *not* reflect the maximum brightness value for any high
+ brightness modes but only the maximum brightness value obtainable in a sustainable manner.
+
+ This array should be equal in size to config_screenBrightnessBacklight -->
+ <array name="config_screenBrightnessNits">
+ <item>2.685</item>
+ <item>3.343</item>
+ <item>4.13</item>
+ <item>5.216</item>
+ <item>6.308</item>
+ <item>7.565</item>
+ <item>9.269</item>
+ <item>10.98</item>
+ <item>13.25</item>
+ <item>15.49</item>
+ <item>18.42</item>
+ <item>20.6</item>
+ <item>22.71</item>
+ <item>24.68</item>
+ <item>26.31</item>
+ <item>28.39</item>
+ <item>30.34</item>
+ <item>32.39</item>
+ <item>33.94</item>
+ <item>35.94</item>
+ <item>45.12</item>
+ <item>54</item>
+ <item>62.31</item>
+ <item>70.73</item>
+ <item>78.85</item>
+ <item>86.41</item>
+ <item>93.53</item>
+ <item>102.3</item>
+ <item>109.1</item>
+ <item>118.7</item>
+ <item>126.4</item>
+ <item>136.9</item>
+ <item>147.8</item>
+ <item>158.9</item>
+ <item>168.3</item>
+ <item>177.4</item>
+ <item>186.6</item>
+ <item>195.7</item>
+ <item>204.5</item>
+ <item>214</item>
+ <item>221.8</item>
+ <item>234</item>
+ <item>242.1</item>
+ <item>250.6</item>
+ <item>263.4</item>
+ <item>272.4</item>
+ <item>282.5</item>
+ <item>296.3</item>
+ <item>305.6</item>
+ <item>315.3</item>
+ <item>329.8</item>
+ <item>339.8</item>
+ <item>349.7</item>
+ <item>357.4</item>
+ <item>364.6</item>
+ <item>374.6</item>
+ <item>384.9</item>
+ <item>392.5</item>
+ <item>402.8</item>
+ <item>413.6</item>
+ <item>421.6</item>
+ <item>432.2</item>
+ <item>440.3</item>
+ <item>448.3</item>
+ <item>459.2</item>
+ <item>467.6</item>
+ <item>478.5</item>
+ </array>
<!-- Values for USB port setting. in format of bootmode:current function:new function -->
<string-array translatable="false" name="config_oemUsbModeOverride">
@@ -126,4 +292,10 @@
<integer-array name="config_longPressVibePattern">
<item>12</item>
</integer-array>
-</resources>
+
+ <!-- Enable ACS (auto channel selection) for Wifi hotspot (SAP) -->
+ <bool translatable="false" name="config_wifi_softap_acs_supported">true</bool>
+
+ <!-- Enable 802.11ac for Wifi hotspot (SAP) -->
+ <bool translatable="false" name="config_wifi_softap_ieee80211ac_supported">true</bool>
+ </resources>
diff --git a/overlay/frameworks/base/core/res/res/values/dimens.xml b/overlay/frameworks/base/core/res/res/values/dimens.xml
index 93e3470..87a455b 100755
--- a/overlay/frameworks/base/core/res/res/values/dimens.xml
+++ b/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -19,5 +19,5 @@
<resources>
<!-- Height of the status bar -->
- <dimen name="status_bar_height">28dp</dimen>
+ <dimen name="status_bar_height_portrait">28dp</dimen>
</resources>
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 1fcf817..b9ab9f3 100644
--- a/overlay/frameworks/base/core/res/res/xml/power_profile.xml
+++ b/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
- <!-- All values are in mAh except as noted -->
-
- <!-- Nothing -->
- <item name="none">0</item>
+ <!-- All values are in mA except as noted -->
<!-- This is the battery capacity in mAh -->
<item name="battery.capacity">3520</item>
@@ -15,13 +12,24 @@
</array>
<!-- Power consumption when CPU is suspended -->
- <item name="cpu.idle">6.957</item>
+ <item name="cpu.suspend">6.957</item>
<!-- Additional power consumption when CPU is in a kernel idle loop -->
- <item name="cpu.awake">2.855</item>
+ <item name="cpu.idle">2.855</item>
+
+ <!-- Additional power consumption by CPU excluding cluster and core when
+ running -->
+ <item name="cpu.active">17.757</item>
+
+ <!-- Additional power consumption by CPU cluster0 itself when running
+ excluding cores in it -->
+ <item name="cpu.cluster_power.cluster0">6.478</item>
+ <!-- Additional power consumption by CPU cluster1 itself when running
+ excluding cores in it -->
+ <item name="cpu.cluster_power.cluster1">6.141</item>
<!-- Different CPU speeds as reported in
/sys/devices/system/cpu/cpu0/cpufreq/stats/scaling_available_frequencies -->
- <array name="cpu.speeds.cluster0">
+ <array name="cpu.core_speeds.cluster0">
<value>300000</value> <!-- 300 MHz CPU speed -->
<value>364800</value> <!-- 364 MHz CPU speed -->
<value>441600</value> <!-- 441 MHz CPU speed -->
@@ -47,7 +55,7 @@
</array>
<!-- Different CPU speeds as reported in
/sys/devices/system/cpu/cpu4/cpufreq/stats/scaling_available_frequencies -->
- <array name="cpu.speeds.cluster1">
+ <array name="cpu.core_speeds.cluster1">
<value>300000</value> <!-- 300 MHz CPU speed -->
<value>345600</value> <!-- 345 MHz CPU speed -->
<value>422400</value> <!-- 422 MHz CPU speed -->
@@ -81,66 +89,66 @@
<value>2457600</value> <!-- 2457 MHz CPU speed -->
</array>
- <!-- Additional power used by a CPU from cluster 0 when running at different
- speeds. Currently this measurement also includes cluster cost. -->
- <array name="cpu.active.cluster0">
- <value>92.451</value> <!-- 300 MHz CPU speed -->
- <value>93.158</value> <!-- 364 MHz CPU speed -->
- <value>93.997</value> <!-- 441 MHz CPU speed -->
- <value>94.915</value> <!-- 518 MHz CPU speed -->
- <value>95.686</value> <!-- 595 MHz CPU speed -->
- <value>96.295</value> <!-- 672 MHz CPU speed -->
- <value>97.031</value> <!-- 748 MHz CPU speed -->
- <value>97.804</value> <!-- 825 MHz CPU speed -->
- <value>99.095</value> <!-- 883 MHz CPU speed -->
- <value>100.005</value> <!-- 960 MHz CPU speed -->
- <value>101.407</value> <!-- 1036 MHz CPU speed -->
- <value>102.484</value> <!-- 1094 MHz CPU speed -->
- <value>104.247</value> <!-- 1171 MHz CPU speed -->
- <value>106.340</value> <!-- 1248 MHz CPU speed -->
- <value>107.756</value> <!-- 1324 MHz CPU speed -->
- <value>109.728</value> <!-- 1401 MHz CPU speed -->
- <value>110.122</value> <!-- 1478 MHz CPU speed -->
- <value>112.570</value> <!-- 1555 MHz CPU speed -->
- <value>117.837</value> <!-- 1670 MHz CPU speed -->
- <value>130.354</value> <!-- 1747 MHz CPU speed -->
- <value>133.134</value> <!-- 1824 MHz CPU speed -->
- <value>137.809</value> <!-- 1900 MHz CPU speed -->
+ <!-- Additional power used by a CPU core from cluster 0 when running at
+ different speeds, excluding cluster and active cost -->
+ <array name="cpu.core_power.cluster0">
+ <value>3.685</value> <!-- 300 MHz CPU speed -->
+ <value>3.598</value> <!-- 364 MHz CPU speed -->
+ <value>3.621</value> <!-- 441 MHz CPU speed -->
+ <value>4.202</value> <!-- 518 MHz CPU speed -->
+ <value>4.935</value> <!-- 595 MHz CPU speed -->
+ <value>5.633</value> <!-- 672 MHz CPU speed -->
+ <value>6.216</value> <!-- 748 MHz CPU speed -->
+ <value>6.710</value> <!-- 825 MHz CPU speed -->
+ <value>7.557</value> <!-- 883 MHz CPU speed -->
+ <value>8.687</value> <!-- 960 MHz CPU speed -->
+ <value>9.882</value> <!-- 1036 MHz CPU speed -->
+ <value>10.950</value> <!-- 1094 MHz CPU speed -->
+ <value>12.075</value> <!-- 1171 MHz CPU speed -->
+ <value>12.875</value> <!-- 1248 MHz CPU speed -->
+ <value>14.424</value> <!-- 1324 MHz CPU speed -->
+ <value>15.653</value> <!-- 1401 MHz CPU speed -->
+ <value>17.345</value> <!-- 1478 MHz CPU speed -->
+ <value>18.710</value> <!-- 1555 MHz CPU speed -->
+ <value>21.587</value> <!-- 1670 MHz CPU speed -->
+ <value>25.430</value> <!-- 1747 MHz CPU speed -->
+ <value>27.165</value> <!-- 1824 MHz CPU speed -->
+ <value>31.671</value> <!-- 1900 MHz CPU speed -->
</array>
- <!-- Additional power used by a CPU from cluster 1 when running at different
- speeds. Currently this measurement also includes cluster cost. -->
- <array name="cpu.active.cluster1">
- <value>102.305</value> <!-- 300 MHz CPU speed -->
- <value>103.782</value> <!-- 345 MHz CPU speed -->
- <value>106.156</value> <!-- 422 MHz CPU speed -->
- <value>109.347</value> <!-- 499 MHz CPU speed -->
- <value>111.951</value> <!-- 576 MHz CPU speed -->
- <value>114.418</value> <!-- 652 MHz CPU speed -->
- <value>118.203</value> <!-- 729 MHz CPU speed -->
- <value>119.348</value> <!-- 806 MHz CPU speed -->
- <value>123.105</value> <!-- 902 MHz CPU speed -->
- <value>125.068</value> <!-- 979 MHz CPU speed -->
- <value>127.789</value> <!-- 1056 MHz CPU speed -->
- <value>130.686</value> <!-- 1132 MHz CPU speed -->
- <value>135.918</value> <!-- 1190 MHz CPU speed -->
- <value>138.613</value> <!-- 1267 MHz CPU speed -->
- <value>142.436</value> <!-- 1344 MHz CPU speed -->
- <value>148.186</value> <!-- 1420 MHz CPU speed -->
- <value>154.753</value> <!-- 1497 MHz CPU speed -->
- <value>160.137</value> <!-- 1574 MHz CPU speed -->
- <value>164.933</value> <!-- 1651 MHz CPU speed -->
- <value>172.082</value> <!-- 1728 MHz CPU speed -->
- <value>181.209</value> <!-- 1804 MHz CPU speed -->
- <value>201.205</value> <!-- 1881 MHz CPU speed -->
- <value>205.762</value> <!-- 1958 MHz CPU speed -->
- <value>229.152</value> <!-- 2035 MHz CPU speed -->
- <value>244.584</value> <!-- 2112 MHz CPU speed -->
- <value>296.146</value> <!-- 2208 MHz CPU speed -->
- <value>314.341</value> <!-- 2265 MHz CPU speed -->
- <value>334.633</value> <!-- 2323 MHz CPU speed -->
- <value>344.553</value> <!-- 2342 MHz CPU speed -->
- <value>351.063</value> <!-- 2361 MHz CPU speed -->
- <value>347.850</value> <!-- 2457 MHz CPU speed -->
+ <!-- Additional power used by a CPU core from cluster 1 when running at
+ different speeds, excluding cluster and active cost -->
+ <array name="cpu.core_power.cluster1">
+ <value>10.722</value> <!-- 300 MHz CPU speed -->
+ <value>11.520</value> <!-- 345 MHz CPU speed -->
+ <value>14.105</value> <!-- 422 MHz CPU speed -->
+ <value>16.680</value> <!-- 499 MHz CPU speed -->
+ <value>18.946</value> <!-- 576 MHz CPU speed -->
+ <value>21.265</value> <!-- 652 MHz CPU speed -->
+ <value>23.432</value> <!-- 729 MHz CPU speed -->
+ <value>26.019</value> <!-- 806 MHz CPU speed -->
+ <value>28.856</value> <!-- 902 MHz CPU speed -->
+ <value>31.085</value> <!-- 979 MHz CPU speed -->
+ <value>33.615</value> <!-- 1056 MHz CPU speed -->
+ <value>35.760</value> <!-- 1132 MHz CPU speed -->
+ <value>40.608</value> <!-- 1190 MHz CPU speed -->
+ <value>43.284</value> <!-- 1267 MHz CPU speed -->
+ <value>47.347</value> <!-- 1344 MHz CPU speed -->
+ <value>52.231</value> <!-- 1420 MHz CPU speed -->
+ <value>57.225</value> <!-- 1497 MHz CPU speed -->
+ <value>63.138</value> <!-- 1574 MHz CPU speed -->
+ <value>69.251</value> <!-- 1651 MHz CPU speed -->
+ <value>76.449</value> <!-- 1728 MHz CPU speed -->
+ <value>84.710</value> <!-- 1804 MHz CPU speed -->
+ <value>102.551</value> <!-- 1881 MHz CPU speed -->
+ <value>107.115</value> <!-- 1958 MHz CPU speed -->
+ <value>129.689</value> <!-- 2035 MHz CPU speed -->
+ <value>135.832</value> <!-- 2112 MHz CPU speed -->
+ <value>164.674</value> <!-- 2208 MHz CPU speed -->
+ <value>180.279</value> <!-- 2265 MHz CPU speed -->
+ <value>197.024</value> <!-- 2323 MHz CPU speed -->
+ <value>204.511</value> <!-- 2342 MHz CPU speed -->
+ <value>211.886</value> <!-- 2361 MHz CPU speed -->
+ <value>212.147</value> <!-- 2457 MHz CPU speed -->
</array>
<!-- Additional power used when screen is turned on at minimum brightness -->
@@ -157,24 +165,51 @@
minute. -->
<item name="camera.avg">831.870</item>
- <!-- Additional power used when audio decoding/encoding via DSP -->
- <item name="dsp.audio">139.047</item>
+ <!-- Additional power used when video is playing -->
+ <item name="video">21.29</item>
+ <!-- Additional power used when audio is playing -->
+ <item name="audio">74.758</item>
- <!-- Additional power used when GPS is acquiring a signal -->
- <item name="gps.on">30</item>
+ <!-- Idle current for wifi radio in mA.-->
+ <item name="wifi.controller.idle">2</item>
+ <!-- Rx current for wifi radio in mA.-->
+ <item name="wifi.controller.rx">166</item>
+ <!-- Tx current for wifi radio in mA-->
+ <item name="wifi.controller.tx">720</item>
+ <!-- Operating voltage for wifi radio in mV.-->
+ <item name="wifi.controller.voltage">3700</item>
- <!-- Additional power used when cellular radio is transmitting/receiving -->
- <item name="radio.active">50</item>
- <!-- Additional power used when cellular radio is paging the tower -->
- <item name="radio.scanning">5</item>
- <!-- Additional power used when the cellular radio is on. Multi-value entry,
- one per signal strength (no signal, weak, moderate, strong) -->
- <array name="radio.on"> <!-- Strength 0 to BINS-1 -->
- <value>6</value> <!-- none -->
- <value>5</value> <!-- poor -->
- <value>4</value> <!-- moderate -->
- <value>3</value> <!-- good -->
- <value>3</value> <!-- great -->
+ <!-- Cellular modem related values.-->
+ <item name="modem.controller.sleep">0</item>
+ <!-- Idle current for modem in mA.-->
+ <item name="modem.controller.idle">145</item>
+ <!-- Rx current for modem in mA.-->
+ <item name="modem.controller.rx">147</item>
+ <!-- Tx current for modem in mA.-->
+ <array name="modem.controller.tx"> <!-- Strength 0 to 4 -->
+ <value>153</value>
+ <value>198</value>
+ <value>259</value>
+ <value>310</value>
+ <value>395</value>
</array>
+ <!-- Operating voltage for modem in mV.-->
+ <item name="modem.controller.voltage">3700</item>
+
+ <!-- GPS related values.-->
+ <array name="gps.signalqualitybased"> <!-- Strength 0 to 1 -->
+ <value>49</value>
+ <value>8</value>
+ </array>
+ <item name="gps.voltage">3700</item>
+
+ <!-- Idle current for bluetooth in mA.-->
+ <item name="bluetooth.controller.idle">0.01</item>
+ <!-- Rx current for bluetooth in mA.-->
+ <item name="bluetooth.controller.rx">9</item>
+ <!-- Tx current for bluetooth in mA-->
+ <item name="bluetooth.controller.tx">7</item>
+ <!-- Operating voltage for bluetooth in mV.-->
+ <item name="bluetooth.controller.voltage">3300</item>
</device>
diff --git a/self-extractors/extract-lists.txt b/self-extractors/extract-lists.txt
index bf46af0..1cc2a90 100644
--- a/self-extractors/extract-lists.txt
+++ b/self-extractors/extract-lists.txt
@@ -16,6 +16,7 @@
system/framework/com.quicinc.cne.api-V1.0-java.jar \
system/framework/com.quicinc.cne.jar \
system/framework/embmslibrary.jar \
+ system/framework/qcrilhook.jar \
system/framework/rcsimssettings.jar \
system/lib64/com.qualcomm.qti.imsrtpservice@1.0.so \
system/lib64/libdiag_system.so \
diff --git a/self-extractors/qcom/staging/device-partial.mk b/self-extractors/qcom/staging/device-partial.mk
index 5313a5f..e2f5787 100644
--- a/self-extractors/qcom/staging/device-partial.mk
+++ b/self-extractors/qcom/staging/device-partial.mk
@@ -25,6 +25,7 @@ PRODUCT_COPY_FILES := \
vendor/qcom/taimen/proprietary/com.quicinc.cne.api-V1.0-java.jar:system/framework/com.quicinc.cne.api-V1.0-java.jar:qcom \
vendor/qcom/taimen/proprietary/com.quicinc.cne.jar:system/framework/com.quicinc.cne.jar:qcom \
vendor/qcom/taimen/proprietary/embmslibrary.jar:system/framework/embmslibrary.jar:qcom \
+ vendor/qcom/taimen/proprietary/qcrilhook.jar:system/framework/qcrilhook.jar:qcom \
vendor/qcom/taimen/proprietary/rcsimssettings.jar:system/framework/rcsimssettings.jar:qcom \
vendor/qcom/taimen/proprietary/lib64/com.qualcomm.qti.imsrtpservice@1.0.so:system/lib64/com.qualcomm.qti.imsrtpservice@1.0.so:qcom \
vendor/qcom/taimen/proprietary/lib64/libdiag_system.so:system/lib64/libdiag_system.so:qcom \
diff --git a/sepolicy/OWNERS b/sepolicy/OWNERS
new file mode 100644
index 0000000..4bd7e34
--- /dev/null
+++ b/sepolicy/OWNERS
@@ -0,0 +1,6 @@
+nnk@google.com
+jeffv@google.com
+klyubin@google.com
+dcashman@google.com
+jbires@google.com
+sspatil@google.com