Merge Android 14 QPR2 to AOSP main

Bug: 319669529
Merged-In: I1e89d5091baa1df8662e4dcbd0a15460d0826c4b
Change-Id: I5ec91ce4c108cefcb2510fa54e28e888f5bff567
This commit is contained in:
Xin Li 2024-03-06 09:29:47 -08:00
commit 57e651cd73
16 changed files with 290 additions and 42 deletions

2
OWNERS
View file

@ -1,4 +1,4 @@
per-file powerhint.json = jychen@google.com,jenhaochen@google.com,wvw@google.com,joaodias@google.com per-file powerhint.json = jychen@google.com,jenhaochen@google.com,wvw@google.com,joaodias@google.com
# per-file for Pixel device makefiles, see go/pixel-device-mk-owner-checklist for details. # per-file for Pixel device makefiles, see go/pixel-device-mk-owner-checklist for details.
per-file *.mk,*/BoardConfig.mk=file:device/google/gs-common:master:/OWNERS per-file *.mk,*/BoardConfig.mk=file:device/google/gs-common:main:/OWNERS

2
PREUPLOAD.cfg Normal file
View file

@ -0,0 +1,2 @@
[Builtin Hooks]
jsonlint = true

View file

@ -416,6 +416,14 @@
<path name="primary-playback -> bt" /> <path name="primary-playback -> bt" />
</path> </path>
<path name="primary-playback-0 -> bluetooth-low-energy-headset">
<path name="primary-playback -> bt" />
</path>
<path name="primary-playback-0 -> bluetooth-low-energy-speaker">
<path name="primary-playback -> bt" />
</path>
<path name="primary-playback-0 -> usb"> <path name="primary-playback-0 -> usb">
<ctl name="USB_RX Mixer EP2" value="1" /> <ctl name="USB_RX Mixer EP2" value="1" />
</path> </path>
@ -476,6 +484,14 @@
<path name="raw-playback -> bt" /> <path name="raw-playback -> bt" />
</path> </path>
<path name="raw-playback-0 -> bluetooth-low-energy-headset">
<path name="raw-playback -> bt" />
</path>
<path name="raw-playback-0 -> bluetooth-low-energy-speaker">
<path name="raw-playback -> bt" />
</path>
<path name="raw-playback-0 -> usb"> <path name="raw-playback-0 -> usb">
<ctl name="USB_RX Mixer RAW" value="1" /> <ctl name="USB_RX Mixer RAW" value="1" />
</path> </path>
@ -536,6 +552,14 @@
<path name="deep-buffer-playback -> bt" /> <path name="deep-buffer-playback -> bt" />
</path> </path>
<path name="deep-buffer-playback-0 -> bluetooth-low-energy-headset">
<path name="deep-buffer-playback -> bt" />
</path>
<path name="deep-buffer-playback-0 -> bluetooth-low-energy-speaker">
<path name="deep-buffer-playback -> bt" />
</path>
<path name="deep-buffer-playback-0 -> usb"> <path name="deep-buffer-playback-0 -> usb">
<ctl name="USB_RX Mixer EP6" value="1" /> <ctl name="USB_RX Mixer EP6" value="1" />
</path> </path>
@ -601,6 +625,14 @@
<path name="compress-offload-playback -> bt" /> <path name="compress-offload-playback -> bt" />
</path> </path>
<path name="compress-offload-playback-0 -> bluetooth-low-energy-headset">
<path name="compress-offload-playback -> bt" />
</path>
<path name="compress-offload-playback-0 -> bluetooth-low-energy-speaker">
<path name="compress-offload-playback -> bt" />
</path>
<path name="compress-offload-playback-0 -> usb"> <path name="compress-offload-playback-0 -> usb">
<ctl name="USB_RX Mixer EP7" value="1" /> <ctl name="USB_RX Mixer EP7" value="1" />
</path> </path>
@ -661,6 +693,14 @@
<path name="mmap-playback -> bt" /> <path name="mmap-playback -> bt" />
</path> </path>
<path name="mmap-playback-0 -> bluetooth-low-energy-headset">
<path name="mmap-playback -> bt" />
</path>
<path name="mmap-playback-0 -> bluetooth-low-energy-speaker">
<path name="mmap-playback -> bt" />
</path>
<path name="mmap-playback-0 -> usb"> <path name="mmap-playback-0 -> usb">
<ctl name="USB_RX Mixer EP1" value="1" /> <ctl name="USB_RX Mixer EP1" value="1" />
</path> </path>
@ -733,6 +773,14 @@
<path name="voip-playback -> bt" /> <path name="voip-playback -> bt" />
</path> </path>
<path name="voip-playback-0 -> bluetooth-low-energy-headset">
<path name="voip-playback -> bt" />
</path>
<path name="voip-playback-0 -> bluetooth-low-energy-speaker">
<path name="voip-playback -> bt" />
</path>
<path name="voip-playback-0 -> usb"> <path name="voip-playback-0 -> usb">
<ctl name="USB_RX Mixer VOIP" value="1" /> <ctl name="USB_RX Mixer VOIP" value="1" />
</path> </path>
@ -851,6 +899,14 @@
<path name="haptic-playback -> bt" /> <path name="haptic-playback -> bt" />
</path> </path>
<path name="haptic-playback-0 -> bluetooth-low-energy-headset">
<path name="haptic-playback -> bt" />
</path>
<path name="haptic-playback-0 -> bluetooth-low-energy-speaker">
<path name="haptic-playback -> bt" />
</path>
<path name="haptic-playback-0 -> usb"> <path name="haptic-playback-0 -> usb">
<ctl name="USB_RX Mixer EP3" value="1" /> <ctl name="USB_RX Mixer EP3" value="1" />
<ctl name="TDM_0_RX Mixer EP8" value="1" /> <ctl name="TDM_0_RX Mixer EP8" value="1" />
@ -885,6 +941,14 @@
<path name="usb-microphones -> primary-capture-0" /> <path name="usb-microphones -> primary-capture-0" />
</path> </path>
<path name="bluetooth-sco-headset-microphones -> primary-capture-0">
<ctl name="EP1 TX Mixer BT_TX" value="1" />
</path>
<path name="bluetooth-low-energy-headset-microphones -> primary-capture-0">
<ctl name="EP1 TX Mixer BT_TX" value="1" />
</path>
<path name="microphones -> voip-capture-0"> <path name="microphones -> voip-capture-0">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1" /> <ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1" />
</path> </path>
@ -913,6 +977,10 @@
<ctl name="VOIP TX Mixer BT_TX" value="1" /> <ctl name="VOIP TX Mixer BT_TX" value="1" />
</path> </path>
<path name="bluetooth-low-energy-headset-microphones -> voip-capture-0">
<ctl name="VOIP TX Mixer BT_TX" value="1" />
</path>
<path name="microphones -> fast-capture-0"> <path name="microphones -> fast-capture-0">
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1" /> <ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1" />
</path> </path>
@ -937,6 +1005,10 @@
<ctl name="EP3 TX Mixer BT_TX" value="1" /> <ctl name="EP3 TX Mixer BT_TX" value="1" />
</path> </path>
<path name="bluetooth-low-energy-headset-microphones -> fast-capture-0">
<ctl name="EP3 TX Mixer BT_TX" value="1" />
</path>
<path name="microphones -> sound-trigger-capture-0"> <path name="microphones -> sound-trigger-capture-0">
</path> </path>
@ -971,6 +1043,14 @@
<path name="voice-call-downlink-0 -> bt" /> <path name="voice-call-downlink-0 -> bt" />
</path> </path>
<path name="voice-call-downlink-0 -> bluetooth-low-energy-headset">
<path name="voice-call-downlink-0 -> bt" />
</path>
<path name="voice-call-downlink-0 -> bluetooth-low-energy-speaker">
<path name="voice-call-downlink-0 -> bt" />
</path>
<path name="voice-call-downlink-0 -> usb"> <path name="voice-call-downlink-0 -> usb">
<ctl name="USB_RX Mixer EP5" value="1" /> <ctl name="USB_RX Mixer EP5" value="1" />
</path> </path>
@ -1011,6 +1091,10 @@
<ctl name="EP4 TX Mixer BT_TX" value="1" /> <ctl name="EP4 TX Mixer BT_TX" value="1" />
</path> </path>
<path name="bluetooth-low-energy-headset-microphones -> voice-call-uplink-0">
<ctl name="EP4 TX Mixer BT_TX" value="1" />
</path>
<path name="null-source -> voice-call-uplink-0"> <path name="null-source -> voice-call-uplink-0">
<ctl name="EP4 TX Mixer INCALL_TX" value="1" /> <ctl name="EP4 TX Mixer INCALL_TX" value="1" />
</path> </path>
@ -1075,6 +1159,10 @@
<ctl name="EP2 TX Mixer BT_TX" value="1" /> <ctl name="EP2 TX Mixer BT_TX" value="1" />
</path> </path>
<path name="bluetooth-low-energy-headset-microphones -> mmap-capture-0">
<ctl name="EP2 TX Mixer BT_TX" value="1" />
</path>
<!-- codec setting --> <!-- codec setting -->
<!-- Rx device --> <!-- Rx device -->
<path name="speaker-earpiece"> <path name="speaker-earpiece">
@ -1252,6 +1340,10 @@
<ctl name="MIC Record Soft Gain (dB)" value="0" /> <ctl name="MIC Record Soft Gain (dB)" value="0" />
</path> </path>
<path name="bluetooth-low-energy-headset-microphones">
<path name="bluetooth-sco-headset-microphones" />
</path>
<path name="usb-headset-microphones"> <path name="usb-headset-microphones">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />

View file

@ -32,6 +32,9 @@
<scenario encode="OneChanMono_24_2" decode="invalid"/> <scenario encode="OneChanMono_24_2" decode="invalid"/>
<scenario encode="TwoChanStereo_24_2" decode="invalid"/> <scenario encode="TwoChanStereo_24_2" decode="invalid"/>
<scenario encode="OneChanStereo_24_2" decode="invalid"/> <scenario encode="OneChanStereo_24_2" decode="invalid"/>
<scenario encode="OneChanMono_48_2" decode="invalid"/>
<scenario encode="TwoChanStereo_48_2" decode="invalid"/>
<scenario encode="OneChanStereo_48_2" decode="invalid"/>
<scenario encode="OneChanMono_48_4" decode="invalid"/> <scenario encode="OneChanMono_48_4" decode="invalid"/>
<scenario encode="TwoChanStereo_48_4" decode="invalid"/> <scenario encode="TwoChanStereo_48_4" decode="invalid"/>
<scenario encode="OneChanStereo_48_4" decode="invalid"/> <scenario encode="OneChanStereo_48_4" decode="invalid"/>
@ -57,6 +60,9 @@
<configuration name="OneChanMono_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/> <configuration name="OneChanMono_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/> <configuration name="TwoChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/> <configuration name="OneChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
<configuration name="OneChanMono_48_2" codecConfiguration="LC3_48k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_48_2" codecConfiguration="LC3_48k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_48_2" codecConfiguration="LC3_48k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
<configuration name="OneChanMono_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/> <configuration name="OneChanMono_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/> <configuration name="TwoChanStereo_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanMono_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/> <configuration name="OneChanMono_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
@ -68,6 +74,7 @@
<codecConfiguration name="LC3_16k_2" codec="LC3" samplingFrequency="16000" frameDurationUs="10000" octetsPerCodecFrame="40"/> <codecConfiguration name="LC3_16k_2" codec="LC3" samplingFrequency="16000" frameDurationUs="10000" octetsPerCodecFrame="40"/>
<codecConfiguration name="LC3_24k_2" codec="LC3" samplingFrequency="24000" frameDurationUs="10000" octetsPerCodecFrame="60"/> <codecConfiguration name="LC3_24k_2" codec="LC3" samplingFrequency="24000" frameDurationUs="10000" octetsPerCodecFrame="60"/>
<codecConfiguration name="LC3_32k_2" codec="LC3" samplingFrequency="32000" frameDurationUs="10000" octetsPerCodecFrame="80"/> <codecConfiguration name="LC3_32k_2" codec="LC3" samplingFrequency="32000" frameDurationUs="10000" octetsPerCodecFrame="80"/>
<codecConfiguration name="LC3_48k_2" codec="LC3" samplingFrequency="48000" frameDurationUs="10000" octetsPerCodecFrame="100"/>
<codecConfiguration name="LC3_48k_4" codec="LC3" samplingFrequency="48000" frameDurationUs="10000" octetsPerCodecFrame="120"/> <codecConfiguration name="LC3_48k_4" codec="LC3" samplingFrequency="48000" frameDurationUs="10000" octetsPerCodecFrame="120"/>
</codecConfigurationList> </codecConfigurationList>
<strategyConfigurationList> <strategyConfigurationList>

View file

@ -83,6 +83,7 @@ on early-boot
# Wait for insmod_sh to finish all common modules # Wait for insmod_sh to finish all common modules
wait_for_prop vendor.common.modules.ready 1 wait_for_prop vendor.common.modules.ready 1
start insmod_sh_felix start insmod_sh_felix
chown system system /sys/class/power_supply/dualbatt/dbatt_stats
service insmod_sh_felix /vendor/bin/insmod.sh /vendor/etc/init.insmod.felix.cfg service insmod_sh_felix /vendor/bin/insmod.sh /vendor/etc/init.insmod.felix.cfg
class main class main

View file

@ -14,6 +14,9 @@
# limitations under the License. # limitations under the License.
# #
# Restrict the visibility of Android.bp files to improve build analysis time
$(call inherit-product-if-exists, vendor/google/products/sources_pixel.mk)
TARGET_KERNEL_DIR ?= device/google/felix-kernel TARGET_KERNEL_DIR ?= device/google/felix-kernel
TARGET_BOARD_KERNEL_HEADERS := device/google/felix-kernel/kernel-headers TARGET_BOARD_KERNEL_HEADERS := device/google/felix-kernel/kernel-headers
TARGET_RECOVERY_DEFAULT_ROTATION := ROTATION_RIGHT TARGET_RECOVERY_DEFAULT_ROTATION := ROTATION_RIGHT
@ -136,10 +139,10 @@ PRODUCT_PROPERTY_OVERRIDES += \
# Bluetooth Tx power caps # Bluetooth Tx power caps
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/bluetooth/bluetooth_power_limits_felix_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ device/google/felix/bluetooth/bluetooth_power_limits_felix_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \
$(LOCAL_PATH)/bluetooth/bluetooth_power_limits_felix_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \ device/google/felix/bluetooth/bluetooth_power_limits_felix_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \
$(LOCAL_PATH)/bluetooth/bluetooth_power_limits_felix_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \ device/google/felix/bluetooth/bluetooth_power_limits_felix_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \
$(LOCAL_PATH)/bluetooth/bluetooth_power_limits_felix_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv device/google/felix/bluetooth/bluetooth_power_limits_felix_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv
# Spatial Audio # Spatial Audio
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
@ -208,13 +211,14 @@ PRODUCT_SOONG_NAMESPACES += \
# Increment the SVN for any official public releases # Increment the SVN for any official public releases
PRODUCT_VENDOR_PROPERTIES += \ PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.build.svn=30 ro.vendor.build.svn=37
# Vibrator HAL # Vibrator HAL
PRODUCT_VENDOR_PROPERTIES +=\ PRODUCT_VENDOR_PROPERTIES +=\
ro.vendor.vibrator.hal.long.frequency.shift=0 \ ro.vendor.vibrator.hal.long.frequency.shift=0 \
ro.vendor.vibrator.hal.gpio.num=44 \ ro.vendor.vibrator.hal.gpio.num=44 \
ro.vendor.vibrator.hal.gpio.shift=2 ro.vendor.vibrator.hal.gpio.shift=2 \
persist.vendor.vibrator.hal.chirp.enabled=0
ACTUATOR_MODEL := luxshare_ict_lt_xlra1906d ACTUATOR_MODEL := luxshare_ict_lt_xlra1906d
# Fingerprint # Fingerprint
@ -237,7 +241,7 @@ PRODUCT_PROPERTY_OVERRIDES += \
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.enable_frame_rate_override=true PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.enable_frame_rate_override=true
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.set_idle_timer_ms_4619827677550801152=80 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.set_idle_timer_ms_4619827677550801152=80
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.support_kernel_idle_timer_4619827677550801152=true PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.support_kernel_idle_timer_4619827677550801152=true
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.set_idle_timer_ms_4619827677550801153=1500 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.set_idle_timer_ms_4619827677550801153=1000
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.support_kernel_idle_timer_4619827677550801153=false PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.support_kernel_idle_timer_4619827677550801153=false
# Set zram size # Set zram size
@ -251,6 +255,13 @@ PRODUCT_PACKAGES += \
# Trusty liboemcrypto.so # Trusty liboemcrypto.so
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/felix/prebuilts PRODUCT_SOONG_NAMESPACES += vendor/google_devices/felix/prebuilts
ifneq (,$(filter AP1%,$(RELEASE_PLATFORM_VERSION)))
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/felix/prebuilts/trusty/24Q1
else ifneq (,$(filter AP2%,$(RELEASE_PLATFORM_VERSION)))
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/felix/prebuilts/trusty/24Q2
else
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/felix/prebuilts/trusty/trunk
endif
# Set zram size # Set zram size
PRODUCT_VENDOR_PROPERTIES += \ PRODUCT_VENDOR_PROPERTIES += \
@ -300,7 +311,7 @@ PRODUCT_VENDOR_PROPERTIES += \
##Audio Vendor property ##Audio Vendor property
PRODUCT_PROPERTY_OVERRIDES += \ PRODUCT_PROPERTY_OVERRIDES += \
persist.vendor.audio.cca.enabled=true persist.vendor.audio.cca.enabled=false
# Camera # Camera
PRODUCT_PROPERTY_OVERRIDES += \ PRODUCT_PROPERTY_OVERRIDES += \
@ -368,6 +379,10 @@ PRODUCT_PRODUCT_PROPERTIES += \
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
device/google/felix/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml device/google/felix/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
# LE Audio Unicast Allowlist
PRODUCT_PRODUCT_PROPERTIES += \
persist.bluetooth.leaudio.allow_list=SM-R510
# Bluetooth EWP test tool # Bluetooth EWP test tool
PRODUCT_PACKAGES_DEBUG += \ PRODUCT_PACKAGES_DEBUG += \
ewp_tool ewp_tool

View file

@ -1,7 +1,7 @@
<compatibility-matrix version="1.0" type="framework" level="7"> <compatibility-matrix version="1.0" type="framework" level="7">
<hal format="aidl" optional="true"> <hal format="aidl" optional="true">
<name>com.google.hardware.pixel.display</name> <name>com.google.hardware.pixel.display</name>
<version>9</version> <version>10</version>
<interface> <interface>
<name>IDisplay</name> <name>IDisplay</name>
<instance>secondary</instance> <instance>secondary</instance>

View file

@ -20,12 +20,22 @@ BOARD_USES_GENERIC_AUDIO := true
USES_DEVICE_GOOGLE_FELIX := true USES_DEVICE_GOOGLE_FELIX := true
BOARD_KERNEL_CMDLINE += swiotlb=noforce BOARD_KERNEL_CMDLINE += swiotlb=noforce
RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_FELIX_RADIO_DIR)
ifneq (,$(filter AP1%,$(RELEASE_PLATFORM_VERSION)))
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/24Q1
else ifneq (,$(filter AP2%,$(RELEASE_PLATFORM_VERSION)))
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/24Q2
else
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/trunk
endif
# Enable load module in parallel # Enable load module in parallel
BOARD_BOOTCONFIG += androidboot.load_modules_parallel=true BOARD_BOOTCONFIG += androidboot.load_modules_parallel=true
# The modules which need to be loaded in sequential # The modules which need to be loaded in sequential
BOARD_KERNEL_CMDLINE += exynos_drm.load_sequential=1 BOARD_KERNEL_CMDLINE += exynos_drm.load_sequential=1
BOARD_KERNEL_CMDLINE += panel-samsung-ana6707-f10.load_sequential=1 BOARD_KERNEL_CMDLINE += panel-samsung-ana6707-f10.load_sequential=1
BOARD_KERNEL_CMDLINE += s2mpg12-regulator.load_sequential=1
#Display #Display
USES_IDISPLAY_INTF_SEC := true USES_IDISPLAY_INTF_SEC := true

View file

@ -42,7 +42,7 @@
<integer name="config_defaultRefreshRate">0</integer> <integer name="config_defaultRefreshRate">0</integer>
<!-- Whether to show Fold lock behavior setting feature in Settings App --> <!-- Whether to show Fold lock behavior setting feature in Settings App -->
<bool name="config_fold_lock_behavior">false</bool> <bool name="config_fold_lock_behavior">true</bool>
<!-- The default peak refresh rate. --> <!-- The default peak refresh rate. -->
<integer name="config_defaultPeakRefreshRate">120</integer> <integer name="config_defaultPeakRefreshRate">120</integer>

View file

@ -19,5 +19,5 @@
<!-- Weather clock smartspace positioning to apply for the weather clock on tablets --> <!-- Weather clock smartspace positioning to apply for the weather clock on tablets -->
<item name="weather_clock_smartspace_scale" type="dimen" format="float">0.85</item> <item name="weather_clock_smartspace_scale" type="dimen" format="float">0.85</item>
<dimen name="weather_clock_smartspace_translateX">-40dp</dimen> <dimen name="weather_clock_smartspace_translateX">-40dp</dimen>
<dimen name="weather_clock_smartspace_translateY">-5dp</dimen> <dimen name="weather_clock_smartspace_translateY">-15dp</dimen>
</resources> </resources>

View file

@ -35,7 +35,7 @@
SuplVersion="2" SuplVersion="2"
SuplMinorVersion="0" SuplMinorVersion="0"
SuplOtdoaCapable="true" SuplOtdoaCapable="true"
SuplOtdoaCapable2="false" SuplOtdoaCapable2="true"
SuplGlonassCapable = "true" SuplGlonassCapable = "true"
SuplGalileoCapable = "true" SuplGalileoCapable = "true"
SuplBdsCapable = "true" SuplBdsCapable = "true"

View file

@ -34,7 +34,7 @@
SuplVersion="2" SuplVersion="2"
SuplMinorVersion="0" SuplMinorVersion="0"
SuplOtdoaCapable="true" SuplOtdoaCapable="true"
SuplOtdoaCapable2="false" SuplOtdoaCapable2="true"
SuplGlonassCapable = "true" SuplGlonassCapable = "true"
SuplGalileoCapable = "true" SuplGalileoCapable = "true"
SuplBdsCapable = "true" SuplBdsCapable = "true"

View file

@ -114,7 +114,7 @@
</hal> </hal>
<hal format="aidl"> <hal format="aidl">
<name>vendor.google.google_battery</name> <name>vendor.google.google_battery</name>
<version>2</version> <version>3</version>
<interface> <interface>
<name>IGoogleBattery</name> <name>IGoogleBattery</name>
<instance>default</instance> <instance>default</instance>

View file

@ -177,7 +177,7 @@
}, },
{ {
"Name": "CAMUClampBoost", "Name": "CAMUClampBoost",
"Path": "/proc/vendor_sched/cam_uclamp_min", "Path": "/proc/vendor_sched/groups/cam/uclamp_min",
"Values": [ "Values": [
"764", "764",
"0" "0"
@ -186,7 +186,7 @@
}, },
{ {
"Name": "TAUClampBoost", "Name": "TAUClampBoost",
"Path": "/proc/vendor_sched/ta_uclamp_min", "Path": "/proc/vendor_sched/groups/ta/uclamp_min",
"Values": [ "Values": [
"764", "764",
"1" "1"
@ -195,7 +195,7 @@
}, },
{ {
"Name": "FGUClampBoost", "Name": "FGUClampBoost",
"Path": "/proc/vendor_sched/fg_uclamp_min", "Path": "/proc/vendor_sched/groups/fg/uclamp_min",
"Values": [ "Values": [
"159", "159",
"0" "0"
@ -204,7 +204,7 @@
}, },
{ {
"Name": "MLUclampBoost", "Name": "MLUclampBoost",
"Path": "/proc/vendor_sched/nnapi_uclamp_min", "Path": "/proc/vendor_sched/groups/nnapi/uclamp_min",
"Values": [ "Values": [
"225", "225",
"813" "813"
@ -223,7 +223,7 @@
}, },
{ {
"Name": "CDPreferIdle", "Name": "CDPreferIdle",
"Path": "/proc/vendor_sched/cam_prefer_idle", "Path": "/proc/vendor_sched/groups/cam/prefer_idle",
"Values": [ "Values": [
"0", "0",
"1" "1"
@ -269,7 +269,7 @@
}, },
{ {
"Name": "TAPreferHighCap", "Name": "TAPreferHighCap",
"Path": "/proc/vendor_sched/ta_prefer_high_cap", "Path": "/proc/vendor_sched/groups/ta/prefer_high_cap",
"Values": [ "Values": [
"1", "1",
"0" "0"
@ -278,7 +278,7 @@
}, },
{ {
"Name": "TAPreferIdle", "Name": "TAPreferIdle",
"Path": "/proc/vendor_sched/ta_prefer_idle", "Path": "/proc/vendor_sched/groups/ta/prefer_idle",
"Values": [ "Values": [
"0", "0",
"1" "1"
@ -287,7 +287,7 @@
}, },
{ {
"Name": "FGPreferIdle", "Name": "FGPreferIdle",
"Path": "/proc/vendor_sched/fg_prefer_idle", "Path": "/proc/vendor_sched/groups/fg/prefer_idle",
"Values": [ "Values": [
"1", "1",
"0" "0"
@ -297,7 +297,7 @@
}, },
{ {
"Name": "CDPreferHighCap", "Name": "CDPreferHighCap",
"Path": "/proc/vendor_sched/cam_prefer_high_cap", "Path": "/proc/vendor_sched/groups/cam/prefer_high_cap",
"Values": [ "Values": [
"1", "1",
"0" "0"
@ -319,7 +319,7 @@
"Values": [ "Values": [
"0", "0",
"1" "1"
], ]
}, },
{ {
"Name": "DisplayWakeup", "Name": "DisplayWakeup",
@ -551,6 +551,15 @@
"0" "0"
] ]
}, },
{
"Name": "EM_Profile",
"Path": "/sys/kernel/pixel_em/active_profile",
"Values": [
"default",
"cam1"
],
"DefaultIndex": 0
},
{ {
"Name": "PMU_POLL", "Name": "PMU_POLL",
"Path": "/proc/vendor_sched/pmu_poll_enable", "Path": "/proc/vendor_sched/pmu_poll_enable",
@ -671,7 +680,7 @@
}, },
{ {
"Name": "Dex2oatGroup", "Name": "Dex2oatGroup",
"Path": "/proc/vendor_sched/dex2oat_ug", "Path": "/proc/vendor_sched/groups/dex2oat/ug",
"Values": [ "Values": [
"1", "1",
"0" "0"
@ -793,6 +802,71 @@
"Duration": 2000, "Duration": 2000,
"Value": "9999999" "Value": "9999999"
}, },
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "ReducePreferIdle",
"Duration": 5000,
"Value": "0"
},
{
"PowerHint": "DISPLAY_CHANGE_GPU",
"Node": "GPUDvfsPeriod",
"Duration": 1000,
"Value": "10"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "FGPreferIdle",
"Duration": 5000,
"Value": "1"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Type": "DoHint",
"Value": "DISPLAY_CHANGE_GPU"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "CPUBigClusterMaxFreq",
"Duration": 5000,
"Value": "9999999"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "CPUMidClusterMaxFreq",
"Duration": 5000,
"Value": "9999999"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "CPULittleClusterMaxFreq",
"Duration": 5000,
"Value": "9999999"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "TAUClampBoost",
"Duration": 5000,
"Value": "764"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "FGUClampBoost",
"Duration": 5000,
"Value": "159"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "MemFreq",
"Duration": 5000,
"Value": "3172000"
},
{
"PowerHint": "DISPLAY_CHANGE",
"Node": "NPITaskPacking",
"Duration": 5000,
"Value": "0"
},
{ {
"PowerHint": "CPU_LOAD_RESET", "PowerHint": "CPU_LOAD_RESET",
"Node": "GPUMinFreq", "Node": "GPUMinFreq",
@ -979,6 +1053,18 @@
"Duration": 1000, "Duration": 1000,
"Value": "664000" "Value": "664000"
}, },
{
"PowerHint": "CAMERA_ZOOMING_BOOST",
"Node": "CDPreferIdle",
"Duration": 100,
"Value": "1"
},
{
"PowerHint": "CAMERA_ZOOMING_BOOST",
"Node": "PMU_POLL",
"Duration": 100,
"Value": "0"
},
{ {
"PowerHint": "GCA_CAMERA_SHOT_BIGCPU_RANK1", "PowerHint": "GCA_CAMERA_SHOT_BIGCPU_RANK1",
"Node": "TAPreferHighCap", "Node": "TAPreferHighCap",
@ -1389,21 +1475,63 @@
}, },
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPUBigClusterMaxFreq", "Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "EM_Profile",
"Duration": 0,
"Value": "cam1"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_LIT_LCPI_THRESHOLD",
"Duration": 0,
"Value": "0"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_LIT_SPC_THRESHOLD",
"Duration": 0,
"Value": "0"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_MID_LIMIT_FREQ",
"Duration": 0,
"Value": "1836000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_MID_LCPI_THRESHOLD",
"Duration": 0,
"Value": "3"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_MID_SPC_THRESHOLD",
"Duration": 0,
"Value": "50"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_BIG_LIMIT_FREQ",
"Duration": 0, "Duration": 0,
"Value": "1826000" "Value": "1826000"
}, },
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPUMidClusterMaxFreq", "Node": "PMU_BIG_LCPI_THRESHOLD",
"Duration": 0, "Duration": 0,
"Value": "1491000" "Value": "3"
}, },
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPULittleClusterMaxFreq", "Node": "PMU_BIG_SPC_THRESHOLD",
"Duration": 0, "Duration": 0,
"Value": "1401000" "Value": "50"
}, },
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",

View file

@ -359,9 +359,7 @@ class HwCal : public Vibrator::HwCal, private HwCalBase {
return true; return true;
} }
bool isChirpEnabled() override { bool isChirpEnabled() override {
bool value; return utils::getProperty("persist.vendor.vibrator.hal.chirp.enabled", false);
getProperty("chirp.enabled", &value, false);
return value;
} }
bool getSupportedPrimitives(uint32_t *value) override { bool getSupportedPrimitives(uint32_t *value) override {
return getProperty("supported_primitives", value, (uint32_t)0); return getProperty("supported_primitives", value, (uint32_t)0);

View file

@ -55,11 +55,6 @@ static constexpr uint8_t VOLTAGE_SCALE_MAX = 100;
static constexpr int8_t MAX_COLD_START_LATENCY_MS = 6; // I2C Transaction + DSP Return-From-Standby static constexpr int8_t MAX_COLD_START_LATENCY_MS = 6; // I2C Transaction + DSP Return-From-Standby
static constexpr int8_t MAX_PAUSE_TIMING_ERROR_MS = 1; // ALERT Irq Handling static constexpr int8_t MAX_PAUSE_TIMING_ERROR_MS = 1; // ALERT Irq Handling
static constexpr uint32_t MAX_TIME_MS = UINT16_MAX; static constexpr uint32_t MAX_TIME_MS = UINT16_MAX;
static constexpr float SETTING_TIME_OVERHEAD = 26; // This time was combined by
// HAL set the effect to
// driver and the kernel
// executes the effect before
// chip play the effect
static constexpr auto ASYNC_COMPLETION_TIMEOUT = std::chrono::milliseconds(100); static constexpr auto ASYNC_COMPLETION_TIMEOUT = std::chrono::milliseconds(100);
static constexpr auto POLLING_TIMEOUT = 20; static constexpr auto POLLING_TIMEOUT = 20;
@ -358,7 +353,7 @@ Vibrator::Vibrator(std::unique_ptr<HwApi> hwApiDefault, std::unique_ptr<HwCal> h
mFfEffects.resize(WAVEFORM_MAX_INDEX); mFfEffects.resize(WAVEFORM_MAX_INDEX);
mEffectDurations.resize(WAVEFORM_MAX_INDEX); mEffectDurations.resize(WAVEFORM_MAX_INDEX);
mEffectDurations = { mEffectDurations = {
1000, 100, 32, 1000, 300, 130, 150, 500, 100, 10, 12, 1000, 1000, 1000, 1000, 100, 12, 1000, 300, 130, 150, 500, 100, 5, 12, 1000, 1000, 1000,
}; /* 11+3 waveforms. The duration must < UINT16_MAX */ }; /* 11+3 waveforms. The duration must < UINT16_MAX */
uint8_t effectIndex; uint8_t effectIndex;
@ -701,8 +696,8 @@ ndk::ScopedAStatus Vibrator::getPrimitiveDuration(CompositePrimitive primitive,
if (!status.isOk()) { if (!status.isOk()) {
return status; return status;
} }
// Please check the overhead time detail in b/261841035
*durationMs = mEffectDurations[effectIndex] + SETTING_TIME_OVERHEAD; *durationMs = mEffectDurations[effectIndex];
} else { } else {
*durationMs = 0; *durationMs = 0;
} }