From 7512629d1994cb162f97d44c413d1a39d18046be Mon Sep 17 00:00:00 2001 From: Les Lee Date: Thu, 5 Sep 2024 03:48:47 +0000 Subject: [PATCH 01/48] wifi: Upgrade vendor hal version Bug: 362355566 Flag: EXEMPT HAL interface change Test: Build Change-Id: Idfc752d4f8186b710d6ae33ed29daf22157601cc --- device_framework_matrix_product.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device_framework_matrix_product.xml b/device_framework_matrix_product.xml index ead4cd93..879f614f 100644 --- a/device_framework_matrix_product.xml +++ b/device_framework_matrix_product.xml @@ -153,7 +153,7 @@ vendor.google.wifi_ext - 2-3 + 2-4 IWifiExt default From 5e2b322b5b298931c969398cec866331ffe829c4 Mon Sep 17 00:00:00 2001 From: Wesley Lee Date: Fri, 20 Sep 2024 09:46:54 -0700 Subject: [PATCH 02/48] use 80x80 as the minimal resolution Bug: 367425615 Flag: EXEMPT bugfix Change-Id: I19f87ebf6dae28369612e26db064bd2709f68094 Signed-off-by: Wesley Lee --- media_codecs_bo_c2.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/media_codecs_bo_c2.xml b/media_codecs_bo_c2.xml index 7786f5fd..8c564cd4 100644 --- a/media_codecs_bo_c2.xml +++ b/media_codecs_bo_c2.xml @@ -51,11 +51,11 @@ - + - - + + From a53df11883f96295cb14e4c81d6748caafe78df3 Mon Sep 17 00:00:00 2001 From: Zhengyuan Cui Date: Fri, 20 Sep 2024 22:24:07 +0000 Subject: [PATCH 03/48] Change any use case of folder name apis to tachyon_apis to avoid api review Bug: 364390678 Change-Id: Icc42a31cf00f09e1c86f147376c276c9a657822f Flag: EXEMPT refactor --- device.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device.mk b/device.mk index fa69e173..68f43139 100644 --- a/device.mk +++ b/device.mk @@ -1160,7 +1160,7 @@ PRODUCT_SOONG_NAMESPACES += \ vendor/google_devices/zuma/proprietary/gchips/tpu/nnapi_stable_aidl \ vendor/google_devices/zuma/proprietary/gchips/tpu/aidl \ vendor/google_devices/zuma/proprietary/gchips/tpu/hal \ - vendor/google_devices/zuma/proprietary/gchips/tpu/tachyon/api \ + vendor/google_devices/zuma/proprietary/gchips/tpu/tachyon/tachyon_apis \ vendor/google_devices/zuma/proprietary/gchips/tpu/tachyon/service # TPU firmware PRODUCT_PACKAGES += edgetpu-rio.fw From 7a32e9dcdd12f57613520aad3cbf78f068aa6bca Mon Sep 17 00:00:00 2001 From: Baltazar Ortiz Date: Tue, 10 Sep 2024 23:15:05 +0000 Subject: [PATCH 04/48] dumpstate: Use generic dc_mains for all parallel chargers Bug: 360866957 Test: adb bugreport Flag: EXEMPT bugfix Change-Id: I00e7a60bfcefb6d68879d0a301cd126134e8b3a1 Signed-off-by: Baltazar Ortiz --- conf/init.zuma.rc | 3 +-- dumpstate/dump_power.cpp | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index 4bb5a1d8..d8c9378c 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -531,10 +531,9 @@ on early-boot chown system system /dev/logbuffer_tcpm chown system system /dev/logbuffer_usbpd chown system system /dev/logbuffer_wireless - chown system system /dev/logbuffer_pca9468 + chown system system /dev/logbuffer_dc_mains chown system system /dev/logbuffer_cpm chown system system /dev/logbuffer_wc68 - chown system system /dev/logbuffer_ln8411 chown system system /dev/logbuffer_pcie0 chown system system /dev/logbuffer_pcie1 chown system system /dev/logbuffer_bd diff --git a/dumpstate/dump_power.cpp b/dumpstate/dump_power.cpp index 12039194..f56e5047 100644 --- a/dumpstate/dump_power.cpp +++ b/dumpstate/dump_power.cpp @@ -307,7 +307,7 @@ void dumpPdEngine() { const char* pdEngine [][2] { {"Logbuffer TCPC", "/dev/logbuffer_usbpd"}, {"PPS-google_cpm", "/dev/logbuffer_cpm"}, - {"PPS-dc", "/dev/logbuffer_pca9468"}, + {"PPS-dc", "/dev/logbuffer_dc_mains"}, }; for (const auto &row : pdEngine) { From 72946bd429d46ae7b532ea12f93e39d503f3010b Mon Sep 17 00:00:00 2001 From: Shikha Panwar Date: Mon, 30 Sep 2024 12:13:56 +0000 Subject: [PATCH 05/48] Zuma: Enable Secretkeeper on aosp targets These are used for testing, enable Secretkeeper on these devices. Test: get_build_var SECRETKEEPER_ENABLED Bug: 341708664 Change-Id: I0fd0e3d5a16cab352c79228e89f9d2fdd6f886b7 --- device.mk | 5 ----- 1 file changed, 5 deletions(-) diff --git a/device.mk b/device.mk index cd4f0f35..9d368c54 100644 --- a/device.mk +++ b/device.mk @@ -95,11 +95,6 @@ TRUSTY_KEYMINT_IMPL := rust ifeq ($(RELEASE_AVF_ENABLE_LLPVM_CHANGES),true) # Set the environment variable to enable the Secretkeeper HAL service. SECRETKEEPER_ENABLED := true - # TODO(b/341708664): Enable Secretkeeper unconditionally once AOSP targets are built with - # compatible bootloader (24Q3+). - ifneq (,$(filter aosp_%,$(TARGET_PRODUCT))) - SECRETKEEPER_ENABLED := false - endif endif # OEM Unlock reporting From 0911e1e72c925cf8bde051b401cb0d9559207741 Mon Sep 17 00:00:00 2001 From: Jimmy Shiu Date: Wed, 25 Sep 2024 15:21:15 +0000 Subject: [PATCH 06/48] [task_profiles]Add MaxPerformance and PreferIdle to InputPolicy profile. Flag: com.android.input.flags.enable_input_policy_profile Bug: 369574417 Change-Id: Iab14bf54c75911fcb48b316f66bc0293d5faf76c --- task_profiles.json | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/task_profiles.json b/task_profiles.json index 81e5e41f..47cada84 100644 --- a/task_profiles.json +++ b/task_profiles.json @@ -15,6 +15,21 @@ } ] }, + { + "Name": "PreferIdle", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/prefer_idle_set", + "ProcFilePath": "/proc/vendor_sched/prefer_idle_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, { "Name": "CameraServicePerformance", "Actions": [ @@ -291,7 +306,7 @@ }, { "Name": "InputPolicy", - "Profiles": [ "ResetUclampGrp" ] + "Profiles": [ "MaxPerformance", "ResetUclampGrp", "PreferIdle" ] } ] } From 115208a81ce9a1af46b1aa37821d4edd4dbcc4c8 Mon Sep 17 00:00:00 2001 From: Eileen Lai Date: Fri, 27 Sep 2024 07:27:13 +0000 Subject: [PATCH 07/48] modem_svc: use shared_modem_platform to replace all modem_svc_sit Bug: 368257019 Flag: NONE local testing only Change-Id: I3d4007714e48cdabe010b4d740fe472024966270 --- device.mk | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/device.mk b/device.mk index fa69e173..c67ca00e 100644 --- a/device.mk +++ b/device.mk @@ -1019,8 +1019,12 @@ PRODUCT_COPY_FILES += \ frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \ ifneq ($(BOARD_WITHOUT_RADIO),true) -# modem_svc_sit daemon -PRODUCT_PACKAGES += modem_svc_sit + +# Use Lassen specifc Shared Modem Platform +SHARED_MODEM_PLATFORM_VENDOR := lassen + +# Shared Modem Platform +include device/google/gs-common/modem/shared_modem_platform/shared_modem_platform.mk # modem_ml_svc_sit daemon PRODUCT_PACKAGES += modem_ml_svc_sit From 1df1b01bdd2414481b6260735cd40c85ce4a0e3d Mon Sep 17 00:00:00 2001 From: Madhav Iyengar Date: Fri, 30 Aug 2024 16:20:20 +0000 Subject: [PATCH 08/48] [chre-hal-xport] Give permissions for new xport Bug: 369883034 Flag: android.chre.flags.refactor_hal_xport_agnostic Change-Id: Ibea491792b6539820bc833f4662d84eb68e113ea --- conf/ueventd.zuma.rc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/conf/ueventd.zuma.rc b/conf/ueventd.zuma.rc index e69f4672..e1e330d8 100644 --- a/conf/ueventd.zuma.rc +++ b/conf/ueventd.zuma.rc @@ -155,6 +155,11 @@ /dev/acd-com.google.chre 0660 system system /dev/acd-com.google.chre.non_wake_up 0660 system system +# CHRE (EFW transport) +/dev/acd-chre_ctl 0660 system system +/dev/acd-chre_data_tx 0220 system system +/dev/acd-chre_data_rx 0440 system system + # BT /dev/acd-com.google.bt 0660 system system /dev/acd-com.google.bt.non_wake_up 0660 system system From 23cee311f910d19118407efac0474b0e1fd04ec0 Mon Sep 17 00:00:00 2001 From: Kuen-Han Tsai Date: Wed, 9 Oct 2024 15:59:20 +0800 Subject: [PATCH 09/48] Usb: Add status check to prevent NPE This patch prevents a Null Pointer Exception in queryMoistureDetectionStatus() when getPortStatusHelper() fails to open the /sys/class/typec file. The failure results in an empty currentPortStatus vector, causing the NPE when accessing its first element. Bug: 361097811 Flag: EXEMPT bugfix Test: NPE does not occur when getPortStatusHelper() fails Change-Id: I2cbe70d3b00cb2cf8c28a28d91a18fbf7c326ea7 Signed-off-by: Kuen-Han Tsai --- usb/usb/Usb.cpp | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/usb/usb/Usb.cpp b/usb/usb/Usb.cpp index 4f6d1272..10422f6c 100644 --- a/usb/usb/Usb.cpp +++ b/usb/usb/Usb.cpp @@ -1090,26 +1090,30 @@ void queryVersionHelper(android::hardware::usb::Usb *usb, pthread_mutex_lock(&usb->mLock); status = getPortStatusHelper(usb, currentPortStatus); - queryMoistureDetectionStatus(currentPortStatus); - queryPowerTransferStatus(currentPortStatus); - queryNonCompliantChargerStatus(currentPortStatus); - queryUsbDataSession(usb, currentPortStatus); - pthread_mutex_lock(&usb->mDisplayPortLock); - if (!usb->mDisplayPortFirstSetupDone && - usb->getDisplayPortUsbPathHelper(&displayPortUsbPath) == Status::SUCCESS) { + if (status == Status::SUCCESS && currentPortStatus->size() > 0) { + queryMoistureDetectionStatus(currentPortStatus); + queryPowerTransferStatus(currentPortStatus); + queryNonCompliantChargerStatus(currentPortStatus); + queryUsbDataSession(usb, currentPortStatus); + pthread_mutex_lock(&usb->mDisplayPortLock); + if (!usb->mDisplayPortFirstSetupDone && + usb->getDisplayPortUsbPathHelper(&displayPortUsbPath) == Status::SUCCESS) { - ALOGI("usbdp: boot with display connected or usb hal restarted"); - usb->setupDisplayPortPoll(); - } - pthread_mutex_unlock(&usb->mDisplayPortLock); - queryDisplayPortStatus(usb, currentPortStatus); - if (usb->mCallback != NULL) { - ScopedAStatus ret = usb->mCallback->notifyPortStatusChange(*currentPortStatus, - status); - if (!ret.isOk()) - ALOGE("queryPortStatus error %s", ret.getDescription().c_str()); + ALOGI("usbdp: boot with display connected or usb hal restarted"); + usb->setupDisplayPortPoll(); + } + pthread_mutex_unlock(&usb->mDisplayPortLock); + queryDisplayPortStatus(usb, currentPortStatus); + if (usb->mCallback != NULL) { + ScopedAStatus ret = usb->mCallback->notifyPortStatusChange(*currentPortStatus, + status); + if (!ret.isOk()) + ALOGE("queryPortStatus error %s", ret.getDescription().c_str()); + } else { + ALOGI("Notifying userspace skipped. Callback is NULL"); + } } else { - ALOGI("Notifying userspace skipped. Callback is NULL"); + ALOGI("%s skipped. currentPortStatus is empty", __func__); } pthread_mutex_unlock(&usb->mLock); } From a6c71987d597d0d575b62f6a65807c1bcd08ee87 Mon Sep 17 00:00:00 2001 From: Rick Yiu Date: Wed, 9 Oct 2024 12:57:48 +0000 Subject: [PATCH 10/48] Set auto prefer idle task name Set InputDispatche and InputReader prefer idle explicitly, which is a workaround and should be removed after they become ADPF. Bug: 366146314 Flag: NONE init rc file change does not support flags Test: tasks set as expected Change-Id: I38afa16f8f85e6aea31ddd5367c2e2d4a3249ced --- conf/init.zuma.rc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index d8c9378c..4899054e 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -857,6 +857,9 @@ on property:sys.boot_completed=1 # Enable SICD write /sys/devices/system/cpu/cpupm/cpupm/sicd 1 + # To be removed after InputDispatche and InputReader become ADPF + write /proc/vendor_sched/prefer_idle_task_name "InputDispatcher,InputReader" + on property:sys.boot_completed=1 && property:persist.sys.device_provisioned=1 write /sys/class/power_supply/battery/first_usage_date 0 From 9106927757baa5de8cea27ffd1c90ec236d44747 Mon Sep 17 00:00:00 2001 From: Andrew Cheng Date: Thu, 10 Oct 2024 11:33:23 -0700 Subject: [PATCH 11/48] Fix LE Audio sysprops typos in makefiles Makefile contain the following sysprops bluetooth.profile.bap.unicast.server.enabled bluetooth.profile.tbs.server.enabled bluetooth.profile.vc.server.enabled However, CS indicates the above sysprops aren't defined anywhere nor read anywhere? Given how the following LE Audio sysprops are missing from the makefile, and the similarities in naming, we suspect there was a typo? bluetooth.profile.bap.unicast.client.enabled bluetooth.profile.ccp.server.enabled bluetooth.profile.vcp.controller.enabled Bug: 372711861 Test: builds Flag: EXEMPT bugfix Change-Id: I3b1be96531ffa6639647e0240dfc0f07ad1843a3 --- device.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/device.mk b/device.mk index 4c3a5221..fc3766e9 100644 --- a/device.mk +++ b/device.mk @@ -186,7 +186,7 @@ PRODUCT_PRODUCT_PROPERTIES += \ bluetooth.profile.asha.central.enabled?=true \ bluetooth.profile.a2dp.source.enabled?=true \ bluetooth.profile.avrcp.target.enabled?=true \ - bluetooth.profile.bap.unicast.server.enabled?=true \ + bluetooth.profile.bap.unicast.client.enabled?=true \ bluetooth.profile.bas.client.enabled?=true \ bluetooth.profile.csip.set_coordinator.enabled?=true \ bluetooth.profile.gatt.enabled?=true \ @@ -201,8 +201,8 @@ PRODUCT_PRODUCT_PROPERTIES += \ bluetooth.profile.pan.panu.enabled?=true \ bluetooth.profile.pbap.server.enabled?=true \ bluetooth.profile.sap.server.enabled?=true \ - bluetooth.profile.tbs.server.enabled?=true \ - bluetooth.profile.vc.server.enabled?=true + bluetooth.profile.ccp.server.enabled?=true \ + bluetooth.profile.vcp.controller.enabled?=true # Carrier configuration default location PRODUCT_PROPERTY_OVERRIDES += \ From d2b83392a7370ae25ff14c1d53ab440c3014acc1 Mon Sep 17 00:00:00 2001 From: Robert Luo Date: Fri, 11 Oct 2024 12:47:48 +0800 Subject: [PATCH 12/48] [Pixel RR] Apply reviewed default permissions Pregrantting below permission(s): CALL_PHONE Flag: EXEMPT add pregranted permission in b/371912006 Bug: 336203918 Test: presubmit Change-Id: I96d2fd462172e2e176e5c8e0d4add7e98c36bb84 --- default-permissions.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/default-permissions.xml b/default-permissions.xml index 58dd84cb..0afb6702 100644 --- a/default-permissions.xml +++ b/default-permissions.xml @@ -169,7 +169,7 @@ - + From 0420e6dfffa12e45a2919c10dda3af0d95d72149 Mon Sep 17 00:00:00 2001 From: Juan Yescas Date: Wed, 26 Jun 2024 21:34:18 -0700 Subject: [PATCH 13/48] 16kb: Use PRODUCT_BOOTS_16K to select the proper rc file and fstab The build flag PRODUCT_BOOTS_16K will be used to select the proper efs rc file and fstab: - When PRODUCT_BOOTS_16K := true, 16k rc files and fstab will be used. - When PRODUCT_BOOTS_16K := false, 4k rc files and fstab will be used. Bug: 370842132 Bug: 346868433 Test: Built and booted up `aosp_shiba` and and `aosp_shiba-pgagnostic` targets Flag: EXEMPT bugfix Change-Id: I4dba20518925a176f1e1e66596e2bb1e8ade7c26 Merged-In: I4dba20518925a176f1e1e66596e2bb1e8ade7c26 --- device.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device.mk b/device.mk index 9d368c54..43651ffe 100644 --- a/device.mk +++ b/device.mk @@ -362,7 +362,7 @@ PRODUCT_COPY_FILES += \ device/google/zuma/conf/init.zuma.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.zuma.rc \ device/google/zuma/conf/init.persist.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.persist.rc -ifeq (true,$(filter $(DEVICE_PAGE_AGNOSTIC) $(PRODUCT_16K_DEVELOPER_OPTION),true)) +ifeq (true,$(filter $(PRODUCT_BOOTS_16K) $(PRODUCT_16K_DEVELOPER_OPTION),true)) PRODUCT_COPY_FILES += \ device/google/zuma/conf/init.efs.16k.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.efs.rc \ device/google/$(TARGET_BOARD_PLATFORM)/conf/fstab.efs.from_data:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.efs.from_data \ From e192e6f56e0d1418fc7355d51825d660ad35320f Mon Sep 17 00:00:00 2001 From: Juan Yescas Date: Tue, 2 Jul 2024 18:14:47 -0700 Subject: [PATCH 14/48] 16kb: Use TARGET_BOOTS_16K to select the efs config files Test: Build and test pgagnostic targets Bug: 370842132 Bug: 350529323 Bug: 346868433 Flag: EXEMPT bugfix Change-Id: I1e0bea52de09fe3c9ee2f52b0803882456943833 Merged-In: I1e0bea52de09fe3c9ee2f52b0803882456943833 --- device.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device.mk b/device.mk index 43651ffe..b12f0bc9 100644 --- a/device.mk +++ b/device.mk @@ -362,7 +362,7 @@ PRODUCT_COPY_FILES += \ device/google/zuma/conf/init.zuma.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.zuma.rc \ device/google/zuma/conf/init.persist.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.persist.rc -ifeq (true,$(filter $(PRODUCT_BOOTS_16K) $(PRODUCT_16K_DEVELOPER_OPTION),true)) +ifeq (true,$(filter $(TARGET_BOOTS_16K) $(PRODUCT_16K_DEVELOPER_OPTION),true)) PRODUCT_COPY_FILES += \ device/google/zuma/conf/init.efs.16k.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.efs.rc \ device/google/$(TARGET_BOARD_PLATFORM)/conf/fstab.efs.from_data:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.efs.from_data \ From fbedb6f26f1c51bd6d8943b8473e6375a330bda9 Mon Sep 17 00:00:00 2001 From: Vilas Bhat Date: Mon, 1 Jul 2024 22:01:54 +0000 Subject: [PATCH 15/48] 16k: Move logic from device/google/shusky/BoardConfig-shusky-common.mk to zuma/BoardConfig-16k-common.mk The makefile logic in device/google/shusky/BoardConfig-shusky-common.mk is identical to the logic required for akita. Hence, this logic is moved to device/google/zuma/BoardConfig-16k-common.mk to avoid duplicating the file for akita. Bug: 370842132 Bug: 349877551 Test: Built and booted up `aosp_shiba` and and `aosp_shiba-pgagnostic` targets Flag: EXEMPT bugfix Change-Id: Ibd060eae8f4e97ae8ff800f765e2310c984e5796 Merged-In: Ibd060eae8f4e97ae8ff800f765e2310c984e5796 --- BoardConfig-16k-common.mk | 38 ++++++++++++++++++++++++++++++++++++++ BoardConfig-common.mk | 3 +++ 2 files changed, 41 insertions(+) create mode 100644 BoardConfig-16k-common.mk diff --git a/BoardConfig-16k-common.mk b/BoardConfig-16k-common.mk new file mode 100644 index 00000000..f7bee9d1 --- /dev/null +++ b/BoardConfig-16k-common.mk @@ -0,0 +1,38 @@ +# +# Copyright (C) 2024 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. +# + +ifeq ($(TARGET_BOOTS_16K),true) +# Configures the 16kb kernel directory. +TARGET_KERNEL_DIR := $(TARGET_KERNEL_DIR)/16kb + +else ifeq ($(PRODUCT_16K_DEVELOPER_OPTION),true) +# Configures the 16kb kernel and modules for OTA updates. +TARGET_KERNEL_DIR_16K := $(TARGET_KERNEL_DIR)/16kb +BOARD_KERNEL_PATH_16K := $(TARGET_KERNEL_DIR_16K)/Image.lz4 + +BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_kernel_boot.modules.load) +BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/system_dlkm.modules.load) +BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_dlkm.modules.load) +BOARD_KERNEL_MODULES_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(TARGET_KERNEL_DIR_16K)/$(notdir $(module))) +BOARD_PREBUILT_DTBOIMAGE_16KB := $(TARGET_KERNEL_DIR_16K)/dtbo.img + +# Zuma targets use exynos-bcm_dbg.ko module instead of bcm_dbg.ko. +BOARD_KERNEL_MODULES_16K := $(filter-out %/bcm_dbg.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_LOAD_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(notdir $(module))) + +BOARD_16K_OTA_USE_INCREMENTAL := true +BOARD_16K_OTA_MOVE_VENDOR := true +endif diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index 3451d397..5c3cc937 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -16,6 +16,9 @@ include build/make/target/board/BoardConfigMainlineCommon.mk include build/make/target/board/BoardConfigPixelCommon.mk +# Include settings for 16k developer option, if enabled +include device/google/zuma/BoardConfig-16k-common.mk + # HACK : To fix up after bring up multimedia devices. TARGET_SOC := zuma From 9e1bb10e89eca5f841f4c922d0b3c136e5f6d736 Mon Sep 17 00:00:00 2001 From: Robin Peng Date: Fri, 2 Aug 2024 09:14:34 +0000 Subject: [PATCH 16/48] 16k: Ignore 16k kernel settings if 16kb folder doesn't exist to avoid build breakage with test kernel prebuilts (e.g. ag/28525733) that doesn't have 16kb artifacts in it. Bug: 370842132 Bug: 349877551 Flag: EXEMPT bugfix Change-Id: I2f6c1f3365f624502366b883dbcd1066ed166cdb Merged-In: I2f6c1f3365f624502366b883dbcd1066ed166cdb --- BoardConfig-16k-common.mk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/BoardConfig-16k-common.mk b/BoardConfig-16k-common.mk index f7bee9d1..6498e054 100644 --- a/BoardConfig-16k-common.mk +++ b/BoardConfig-16k-common.mk @@ -14,6 +14,8 @@ # limitations under the License. # +ifneq ($(wildcard $(TARGET_KERNEL_DIR)/16kb/),) + ifeq ($(TARGET_BOOTS_16K),true) # Configures the 16kb kernel directory. TARGET_KERNEL_DIR := $(TARGET_KERNEL_DIR)/16kb @@ -36,3 +38,5 @@ BOARD_KERNEL_MODULES_LOAD_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$( BOARD_16K_OTA_USE_INCREMENTAL := true BOARD_16K_OTA_MOVE_VENDOR := true endif + +endif From 4170eb8b55f0b83d2e2ada6aec3fb542758e6103 Mon Sep 17 00:00:00 2001 From: Jeff Chang Date: Mon, 21 Oct 2024 09:35:39 +0000 Subject: [PATCH 17/48] Update display dim configuration Revert the configuration from I79939290b6a355cf for benchmark regression. Flag: EXEMPT bug fix Bug: 357187828 Test: presubmit Change-Id: I214689dd98248cbe460ea84ac8f5affde3b8ad20 --- overlay/frameworks/base/core/res/res/values/config.xml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml index 5a009fe3..301b15d4 100644 --- a/overlay/frameworks/base/core/res/res/values/config.xml +++ b/overlay/frameworks/base/core/res/res/values/config.xml @@ -319,13 +319,6 @@ 100% - - 20000 - - - 33% - true From 03b2a5a84f1e49c5df5d225f5c29e33b356f8be6 Mon Sep 17 00:00:00 2001 From: Richard Chang Date: Wed, 23 Oct 2024 04:11:20 +0000 Subject: [PATCH 18/48] zuma: MCP: Set the vendor customized max cached processes to 1024. Bug: 374891496 Change-Id: I00f8758197836dedc94755ce60e6f97b2de1190a Test: adb shell dumpsys activity | grep CUR_MAX_CACHED_PROCESSES Flag: EXEMPT config XML change --- overlay/frameworks/base/core/res/res/values/config.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml index 5a009fe3..e11390c7 100644 --- a/overlay/frameworks/base/core/res/res/values/config.xml +++ b/overlay/frameworks/base/core/res/res/values/config.xml @@ -287,6 +287,9 @@ true + + 1024 + true From b7cc9557634095e1a52d5262771b4614f9407847 Mon Sep 17 00:00:00 2001 From: Kelvin Zhang Date: Wed, 23 Oct 2024 14:01:36 -0700 Subject: [PATCH 19/48] Add detailed error log to efs test Flag: TEST_ONLY Bug: 374502267 Test: th Change-Id: I15fea97417331b34a4e5ae9861d169b29ef932a9 --- .../src/com/android/test/CopyEfsTest.java | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/CopyEfsTest/src/com/android/test/CopyEfsTest.java b/CopyEfsTest/src/com/android/test/CopyEfsTest.java index 9314174d..ed65e367 100644 --- a/CopyEfsTest/src/com/android/test/CopyEfsTest.java +++ b/CopyEfsTest/src/com/android/test/CopyEfsTest.java @@ -24,6 +24,7 @@ import org.junit.After; import android.platform.test.annotations.AppModeFull; +import com.android.tradefed.device.DeviceNotAvailableException; import com.android.tradefed.testtype.DeviceJUnit4ClassRunner; import com.android.tradefed.testtype.junit4.BaseHostJUnit4Test; import com.android.tradefed.testtype.junit4.DeviceTestRunOptions; @@ -59,24 +60,25 @@ public class CopyEfsTest extends BaseHostJUnit4Test { testDumpF2FS("persist"); } + private CommandResult RunAndCheckAdbCmd(String cmd) throws DeviceNotAvailableException { + CommandResult r = getDevice().executeShellV2Command(cmd); + assertEquals("Failed to run " + cmd, r.getExitCode(), Integer.valueOf(0)); + return r; + } + private void testDumpF2FS(String name) throws Exception { - getDevice().executeShellCommand(String.format("cp /dev/block/by-name/%s /data/local/tmp/efs_test/%s.img", name, name)); + RunAndCheckAdbCmd(String.format("cp /dev/block/by-name/%s /data/local/tmp/efs_test/%s.img", name, name)); // The device was mounted r/w. To get a clean image, we run fsck, and then mount to allow mount time fixes to happen. // We can then dump and mount read only to ensure the contents should be the same. - getDevice().executeShellCommand(String.format("fsck.f2fs -f /data/local/tmp/efs_test/%s.img", name, name)); - CommandResult r = getDevice().executeShellV2Command(String.format("mount /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - assertEquals(r.getExitCode().intValue(), 0); - r = getDevice().executeShellV2Command("umount /data/local/tmp/efs_test/mnt"); - assertEquals(r.getExitCode().intValue(), 0); + RunAndCheckAdbCmd(String.format("fsck.f2fs -f /data/local/tmp/efs_test/%s.img", name)); + RunAndCheckAdbCmd(String.format("mount /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); + RunAndCheckAdbCmd("umount /data/local/tmp/efs_test/mnt"); - r = getDevice().executeShellV2Command(String.format("dump.f2fs -rfPLo /data/local/tmp/efs_test/dump /data/local/tmp/efs_test/%s.img", name)); - assertEquals(r.getExitCode().intValue(), 0); - r = getDevice().executeShellV2Command(String.format("mount -r /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - assertEquals(r.getExitCode().intValue(), 0); + RunAndCheckAdbCmd(String.format("dump.f2fs -rfPLo /data/local/tmp/efs_test/dump /data/local/tmp/efs_test/%s.img", name)); + RunAndCheckAdbCmd(String.format("mount -r /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - r = getDevice().executeShellV2Command("diff -rq --no-dereference /data/local/tmp/efs_test/mnt /data/local/tmp/efs_test/dump"); - assertEquals(r.getExitCode().intValue(), 0); + CommandResult r = RunAndCheckAdbCmd("diff -rq --no-dereference /data/local/tmp/efs_test/mnt /data/local/tmp/efs_test/dump"); assertEquals(r.getStdout(), ""); // Remove timestamps because ls on device does not support --time-style. This is AWKward. @@ -86,11 +88,9 @@ public class CopyEfsTest extends BaseHostJUnit4Test { // So we can check for -> in the second to last spot to determine what position the timestamp ends at // Remove totals because on disk block usage may change depending on filesystem String ls_cmd = "cd /data/local/tmp/efs_test/%s;ls -AlnR . | awk {'if (NF>3 && $(NF-1) == \"->\") end=3; else end=1; for(i=6;i<=NF-end && i>0;i++)$i=\"\";if ($1 != \"total\"){print $0}'}"; - String mnt_ls = getDevice().executeShellCommand(String.format(ls_cmd, "mnt")); - assertEquals(getDevice().executeShellCommand("echo $?"), "0\n"); - String dump_ls = getDevice().executeShellCommand(String.format(ls_cmd, "dump")); - assertEquals(getDevice().executeShellCommand("echo $?"), "0\n"); - assertEquals(mnt_ls, dump_ls); + CommandResult mnt_ls = RunAndCheckAdbCmd(String.format(ls_cmd, "mnt")); + CommandResult dump_ls = RunAndCheckAdbCmd(String.format(ls_cmd, "dump")); + assertEquals(mnt_ls.getStdout(), dump_ls.getStdout()); getDevice().executeShellCommand("umount /data/local/tmp/efs_test/mnt"); getDevice().executeShellCommand("rm -rf /data/local/tmp/efs_test/dump/*"); From 32b6825bf1ba5f035dcd76ad5179ba47b3a097af Mon Sep 17 00:00:00 2001 From: Bill Yang Date: Tue, 22 Oct 2024 10:57:09 +0000 Subject: [PATCH 20/48] Set BOARD_LIBACRYL_G2D_HDR_PLUGIN for soong Set the full module path of libacryl_hdr_plugin and the include dir for lobacryl conversion to soong. It will take effect after aosp/3286932 and aosp/3287183 merged. Bug: 370414334 Test: lunch aosp_shiba-trunk_staging-userdebug ; m libacryl_hdr_plugin libacryl Change-Id: I253ce1254450385e83ecaa75acbee5e70df3a930 --- BoardConfig-common.mk | 2 ++ 1 file changed, 2 insertions(+) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index 5c3cc937..63c1317d 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -277,6 +277,8 @@ BOARD_USES_EXYNOS_AFBC_FEATURE := true BOARD_LIBACRYL_DEFAULT_COMPOSITOR := fimg2d_zuma BOARD_LIBACRYL_G2D_HDR_PLUGIN := libacryl_hdr_plugin +$(call soong_config_set,acryl,libacryl_g2d_hdr_plugin,//hardware/google/graphics/zuma/libacryl_plugins:libacryl_hdr_plugin) +$(call soong_config_set,acryl,libacryl_c_include,hardware/google/graphics/$(TARGET_BOARD_PLATFORM)/libcap) # HWCServices BOARD_USES_HWC_SERVICES := true From 2676f4bf004356534d08cefb7737530488beb9da Mon Sep 17 00:00:00 2001 From: Nick Kralevich Date: Thu, 10 Oct 2024 16:14:20 -0700 Subject: [PATCH 21/48] Enable MTE in -eng builds on zuma devices. MTE is a low overhead tool which enables detection of memory safety bugs in interactive workloads. See https://source.android.com/docs/security/test/memory-safety/arm-mte for background and information. This change enables MTE by default on -eng builds on zuma builds. Co-authored-by: Evgenii Stepanov Test: Device boots and no MTE crashes Test: sanitizer-status mte Bug: 316398899 Change-Id: Iff5ab9d7031d8b97bf762d85f6760a092631e121 --- BoardConfig-common.mk | 8 ++++++++ conf/init.eng.memtag.rc | 16 ++++++++++++++++ device-common.mk | 13 +++++++++++-- 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 conf/init.eng.memtag.rc diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index 27fde6e5..53d3d314 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -38,9 +38,17 @@ BOARD_KERNEL_CMDLINE += rcupdate.rcu_expedited=1 rcu_nocbs=all rcutree.enable_rc BOARD_KERNEL_CMDLINE += swiotlb=1024 BOARD_KERNEL_CMDLINE += cgroup.memory=nokmem BOARD_KERNEL_CMDLINE += sysctl.kernel.sched_pelt_multiplier=4 + ifeq (,$(filter %_fullmte,$(TARGET_PRODUCT))) +ifneq (,$(filter eng,$(TARGET_BUILD_VARIANT))) BOARD_KERNEL_CMDLINE += kasan=off +BOARD_KERNEL_CMDLINE += bootloader.pixel.MTE_FORCE_ON +ifeq ($(filter memtag_heap,$(SANITIZE_TARGET)),) +SANITIZE_TARGET := $(strip $(SANITIZE_TARGET) memtag_heap) endif +endif +endif + BOARD_BOOTCONFIG += androidboot.boot_devices=13200000.ufs TARGET_NO_BOOTLOADER := true diff --git a/conf/init.eng.memtag.rc b/conf/init.eng.memtag.rc new file mode 100644 index 00000000..19071f55 --- /dev/null +++ b/conf/init.eng.memtag.rc @@ -0,0 +1,16 @@ +# MTE in -eng build: litle and mid cores in Sync mode +# Big core in Asymm mode to work around a performance issue (b/266613799) +on init + # Per-core mode overrides. + # Little Cores: sync + write /sys/devices/system/cpu/cpu0/mte_tcf_preferred sync + write /sys/devices/system/cpu/cpu1/mte_tcf_preferred sync + write /sys/devices/system/cpu/cpu2/mte_tcf_preferred sync + write /sys/devices/system/cpu/cpu3/mte_tcf_preferred sync + # Mid Cores: sync + write /sys/devices/system/cpu/cpu4/mte_tcf_preferred sync + write /sys/devices/system/cpu/cpu5/mte_tcf_preferred sync + write /sys/devices/system/cpu/cpu6/mte_tcf_preferred sync + write /sys/devices/system/cpu/cpu7/mte_tcf_preferred sync + # Big Core: asymm + write /sys/devices/system/cpu/cpu8/mte_tcf_preferred asymm diff --git a/device-common.mk b/device-common.mk index f3e33959..41978abb 100644 --- a/device-common.mk +++ b/device-common.mk @@ -49,9 +49,10 @@ PRODUCT_PRODUCT_PROPERTIES += \ ro.preventative_fsck = 1 # Indicate that the bootloader supports the MTE developer option switch -# (MISC_MEMTAG_MODE_MEMTAG_ONCE), with the exception of _fullmte products that -# force enable MTE. +# (MISC_MEMTAG_MODE_MEMTAG_ONCE), with the exception of _fullmte products and +# eng products that force enable MTE ifeq (,$(filter %_fullmte,$(TARGET_PRODUCT))) +ifeq (,$(filter eng,$(TARGET_BUILD_VARIANT))) PRODUCT_PRODUCT_PROPERTIES += ro.arm64.memtag.bootctl_supported=1 # N.B. persist properties in product Makefiles aren't actually persisted to the data # partition, so they will actually go away if we remove them here, or if the user @@ -61,3 +62,11 @@ PRODUCT_PRODUCT_PROPERTIES += persist.arm64.memtag.app.com.google.android.blueto PRODUCT_PRODUCT_PROPERTIES += persist.arm64.memtag.app.com.android.nfc=off PRODUCT_PRODUCT_PROPERTIES += persist.arm64.memtag.system_server=off endif +endif + +ifeq (,$(filter %_fullmte,$(TARGET_PRODUCT))) +ifneq (,$(filter eng,$(TARGET_BUILD_VARIANT))) +PRODUCT_COPY_FILES += \ + device/google/zuma/conf/init.eng.memtag.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.eng.memtag.rc +endif +endif From d0bdf1d61bc2e525c8902bfa4c057a8ee1462001 Mon Sep 17 00:00:00 2001 From: Roy Luo Date: Tue, 29 Oct 2024 21:24:15 +0000 Subject: [PATCH 22/48] Revert^3 "Enable usb state update via udc sysfs" 13756199db371c79ddce88ec860c4dc7d5caff25 Bug: 339241080 Change-Id: Id040eb4fd0ff7f70a9f7872f383fbc37fc0742ea --- overlay/frameworks/base/core/res/res/values/config.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml index 780a9c19..916e45e4 100644 --- a/overlay/frameworks/base/core/res/res/values/config.xml +++ b/overlay/frameworks/base/core/res/res/values/config.xml @@ -321,7 +321,4 @@ 100% - - - true From 082fc23cbdfc460a07e80f06f1c95adafd9544b9 Mon Sep 17 00:00:00 2001 From: chenkris Date: Fri, 25 Oct 2024 05:14:35 +0000 Subject: [PATCH 23/48] Add IGoodixFingerprintDaemon aidl interface Flag: EXEMPT NDK Bug: 370671685 Test: authenticate fingerprint. Change-Id: I3612ab313a2b9d330da3d39f09073f3ff9eebcd6 --- device_framework_matrix_product.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/device_framework_matrix_product.xml b/device_framework_matrix_product.xml index 879f614f..5abc3633 100644 --- a/device_framework_matrix_product.xml +++ b/device_framework_matrix_product.xml @@ -135,6 +135,14 @@ default + + vendor.goodix.hardware.biometrics.fingerprint + 1 + + IGoodixFingerprintDaemon + default + + vendor.google.google_battery 2-3 From 0ca2ed53c576b436668de6b8c1465a486e95c3c4 Mon Sep 17 00:00:00 2001 From: "Priyanka Advani (xWF)" Date: Wed, 30 Oct 2024 16:32:55 +0000 Subject: [PATCH 24/48] Revert "Add IGoodixFingerprintDaemon aidl interface" Revert submission 30066446-goodix-ext-service-aidl Reason for revert: Droidmonitor created revert due to b/376465180. Will be verifying through ABTD before submission. Reverted changes: /q/submissionid:30066446-goodix-ext-service-aidl Change-Id: I25cf72f9acbfcce57182aeb8f95a5711af9899b4 --- device_framework_matrix_product.xml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/device_framework_matrix_product.xml b/device_framework_matrix_product.xml index 5abc3633..879f614f 100644 --- a/device_framework_matrix_product.xml +++ b/device_framework_matrix_product.xml @@ -135,14 +135,6 @@ default - - vendor.goodix.hardware.biometrics.fingerprint - 1 - - IGoodixFingerprintDaemon - default - - vendor.google.google_battery 2-3 From 42abd953a826e67913f3aafa5a68caaa2788cc7b Mon Sep 17 00:00:00 2001 From: Daniel Rosenberg Date: Wed, 30 Oct 2024 21:54:56 +0000 Subject: [PATCH 25/48] Revert "Add detailed error log to efs test" This reverts commit b7cc9557634095e1a52d5262771b4614f9407847. Reason for revert: Breaks CopyEfsTest Change-Id: I2522ceeda3f4e77c1102c50a6c0110aca814a4d8 Bug: 376164007 --- .../src/com/android/test/CopyEfsTest.java | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/CopyEfsTest/src/com/android/test/CopyEfsTest.java b/CopyEfsTest/src/com/android/test/CopyEfsTest.java index ed65e367..9314174d 100644 --- a/CopyEfsTest/src/com/android/test/CopyEfsTest.java +++ b/CopyEfsTest/src/com/android/test/CopyEfsTest.java @@ -24,7 +24,6 @@ import org.junit.After; import android.platform.test.annotations.AppModeFull; -import com.android.tradefed.device.DeviceNotAvailableException; import com.android.tradefed.testtype.DeviceJUnit4ClassRunner; import com.android.tradefed.testtype.junit4.BaseHostJUnit4Test; import com.android.tradefed.testtype.junit4.DeviceTestRunOptions; @@ -60,25 +59,24 @@ public class CopyEfsTest extends BaseHostJUnit4Test { testDumpF2FS("persist"); } - private CommandResult RunAndCheckAdbCmd(String cmd) throws DeviceNotAvailableException { - CommandResult r = getDevice().executeShellV2Command(cmd); - assertEquals("Failed to run " + cmd, r.getExitCode(), Integer.valueOf(0)); - return r; - } - private void testDumpF2FS(String name) throws Exception { - RunAndCheckAdbCmd(String.format("cp /dev/block/by-name/%s /data/local/tmp/efs_test/%s.img", name, name)); + getDevice().executeShellCommand(String.format("cp /dev/block/by-name/%s /data/local/tmp/efs_test/%s.img", name, name)); // The device was mounted r/w. To get a clean image, we run fsck, and then mount to allow mount time fixes to happen. // We can then dump and mount read only to ensure the contents should be the same. - RunAndCheckAdbCmd(String.format("fsck.f2fs -f /data/local/tmp/efs_test/%s.img", name)); - RunAndCheckAdbCmd(String.format("mount /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - RunAndCheckAdbCmd("umount /data/local/tmp/efs_test/mnt"); + getDevice().executeShellCommand(String.format("fsck.f2fs -f /data/local/tmp/efs_test/%s.img", name, name)); + CommandResult r = getDevice().executeShellV2Command(String.format("mount /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); + assertEquals(r.getExitCode().intValue(), 0); + r = getDevice().executeShellV2Command("umount /data/local/tmp/efs_test/mnt"); + assertEquals(r.getExitCode().intValue(), 0); - RunAndCheckAdbCmd(String.format("dump.f2fs -rfPLo /data/local/tmp/efs_test/dump /data/local/tmp/efs_test/%s.img", name)); - RunAndCheckAdbCmd(String.format("mount -r /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); + r = getDevice().executeShellV2Command(String.format("dump.f2fs -rfPLo /data/local/tmp/efs_test/dump /data/local/tmp/efs_test/%s.img", name)); + assertEquals(r.getExitCode().intValue(), 0); + r = getDevice().executeShellV2Command(String.format("mount -r /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); + assertEquals(r.getExitCode().intValue(), 0); - CommandResult r = RunAndCheckAdbCmd("diff -rq --no-dereference /data/local/tmp/efs_test/mnt /data/local/tmp/efs_test/dump"); + r = getDevice().executeShellV2Command("diff -rq --no-dereference /data/local/tmp/efs_test/mnt /data/local/tmp/efs_test/dump"); + assertEquals(r.getExitCode().intValue(), 0); assertEquals(r.getStdout(), ""); // Remove timestamps because ls on device does not support --time-style. This is AWKward. @@ -88,9 +86,11 @@ public class CopyEfsTest extends BaseHostJUnit4Test { // So we can check for -> in the second to last spot to determine what position the timestamp ends at // Remove totals because on disk block usage may change depending on filesystem String ls_cmd = "cd /data/local/tmp/efs_test/%s;ls -AlnR . | awk {'if (NF>3 && $(NF-1) == \"->\") end=3; else end=1; for(i=6;i<=NF-end && i>0;i++)$i=\"\";if ($1 != \"total\"){print $0}'}"; - CommandResult mnt_ls = RunAndCheckAdbCmd(String.format(ls_cmd, "mnt")); - CommandResult dump_ls = RunAndCheckAdbCmd(String.format(ls_cmd, "dump")); - assertEquals(mnt_ls.getStdout(), dump_ls.getStdout()); + String mnt_ls = getDevice().executeShellCommand(String.format(ls_cmd, "mnt")); + assertEquals(getDevice().executeShellCommand("echo $?"), "0\n"); + String dump_ls = getDevice().executeShellCommand(String.format(ls_cmd, "dump")); + assertEquals(getDevice().executeShellCommand("echo $?"), "0\n"); + assertEquals(mnt_ls, dump_ls); getDevice().executeShellCommand("umount /data/local/tmp/efs_test/mnt"); getDevice().executeShellCommand("rm -rf /data/local/tmp/efs_test/dump/*"); From 887376945639002d648c274fb262ba3800c522bb Mon Sep 17 00:00:00 2001 From: Daniel Rosenberg Date: Wed, 30 Oct 2024 18:37:30 -0700 Subject: [PATCH 26/48] Reland "Add detailed error log to efs test" Corrected order of Assert Equals, and moved awk parsing into the java code. executeShellV2Command does not handle single quoted awk strings well. Flag: TEST_ONLY Bug: 376164007 Test: atest CopyEfsTest Change-Id: Idea19467ec2f08b1365a2389a1dd3b1db8d429e4 --- .../src/com/android/test/CopyEfsTest.java | 73 +++++++++++++------ 1 file changed, 49 insertions(+), 24 deletions(-) diff --git a/CopyEfsTest/src/com/android/test/CopyEfsTest.java b/CopyEfsTest/src/com/android/test/CopyEfsTest.java index 9314174d..cd22457b 100644 --- a/CopyEfsTest/src/com/android/test/CopyEfsTest.java +++ b/CopyEfsTest/src/com/android/test/CopyEfsTest.java @@ -24,6 +24,7 @@ import org.junit.After; import android.platform.test.annotations.AppModeFull; +import com.android.tradefed.device.DeviceNotAvailableException; import com.android.tradefed.testtype.DeviceJUnit4ClassRunner; import com.android.tradefed.testtype.junit4.BaseHostJUnit4Test; import com.android.tradefed.testtype.junit4.DeviceTestRunOptions; @@ -59,38 +60,62 @@ public class CopyEfsTest extends BaseHostJUnit4Test { testDumpF2FS("persist"); } + private CommandResult RunAndCheckAdbCmd(String cmd) throws DeviceNotAvailableException { + CommandResult r = getDevice().executeShellV2Command(cmd); + assertEquals("Failed to run " + cmd, Integer.valueOf(0), r.getExitCode()); + return r; + } + + // Remove timestamps because ls on device does not support --time-style. + // Format is [permissions] [links] [uid] [gid] [size] time [name/symlink] + // time may vary greatly in formatting + // symlinks will be of the form a -> b + // So we can check for -> in the second to last spot to determine what position the timestamp ends at + // Remove totals because on disk block usage may change depending on filesystem + private String removeTimestamps(String input) { + StringBuilder output = new StringBuilder(); + for (String line : input.split("\n")) { + String[] tokens = line.split("(?")) + name_offset = 3; + for (int i=0; i= 5 && i < tokens.length - name_offset) + continue; + if (i != 0) + output.append(" "); + output.append(tokens[i]); + } + output.append("\n"); + } + return output.toString(); + } + private void testDumpF2FS(String name) throws Exception { - getDevice().executeShellCommand(String.format("cp /dev/block/by-name/%s /data/local/tmp/efs_test/%s.img", name, name)); + RunAndCheckAdbCmd(String.format("cp /dev/block/by-name/%s /data/local/tmp/efs_test/%s.img", name, name)); // The device was mounted r/w. To get a clean image, we run fsck, and then mount to allow mount time fixes to happen. // We can then dump and mount read only to ensure the contents should be the same. - getDevice().executeShellCommand(String.format("fsck.f2fs -f /data/local/tmp/efs_test/%s.img", name, name)); - CommandResult r = getDevice().executeShellV2Command(String.format("mount /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - assertEquals(r.getExitCode().intValue(), 0); - r = getDevice().executeShellV2Command("umount /data/local/tmp/efs_test/mnt"); - assertEquals(r.getExitCode().intValue(), 0); + RunAndCheckAdbCmd(String.format("fsck.f2fs -f /data/local/tmp/efs_test/%s.img", name)); + RunAndCheckAdbCmd(String.format("mount /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); + RunAndCheckAdbCmd("umount /data/local/tmp/efs_test/mnt"); - r = getDevice().executeShellV2Command(String.format("dump.f2fs -rfPLo /data/local/tmp/efs_test/dump /data/local/tmp/efs_test/%s.img", name)); - assertEquals(r.getExitCode().intValue(), 0); - r = getDevice().executeShellV2Command(String.format("mount -r /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - assertEquals(r.getExitCode().intValue(), 0); + RunAndCheckAdbCmd(String.format("dump.f2fs -rfPLo /data/local/tmp/efs_test/dump /data/local/tmp/efs_test/%s.img", name)); + RunAndCheckAdbCmd(String.format("mount -r /data/local/tmp/efs_test/%s.img /data/local/tmp/efs_test/mnt", name)); - r = getDevice().executeShellV2Command("diff -rq --no-dereference /data/local/tmp/efs_test/mnt /data/local/tmp/efs_test/dump"); - assertEquals(r.getExitCode().intValue(), 0); + CommandResult r = RunAndCheckAdbCmd("diff -rq --no-dereference /data/local/tmp/efs_test/mnt /data/local/tmp/efs_test/dump"); assertEquals(r.getStdout(), ""); - // Remove timestamps because ls on device does not support --time-style. This is AWKward. - // Format is [permissions] [links] [uid] [gid] [size] time [name/symlink] - // time may have different numbers of blocks - // symlinks will be of the form a -> b - // So we can check for -> in the second to last spot to determine what position the timestamp ends at - // Remove totals because on disk block usage may change depending on filesystem - String ls_cmd = "cd /data/local/tmp/efs_test/%s;ls -AlnR . | awk {'if (NF>3 && $(NF-1) == \"->\") end=3; else end=1; for(i=6;i<=NF-end && i>0;i++)$i=\"\";if ($1 != \"total\"){print $0}'}"; - String mnt_ls = getDevice().executeShellCommand(String.format(ls_cmd, "mnt")); - assertEquals(getDevice().executeShellCommand("echo $?"), "0\n"); - String dump_ls = getDevice().executeShellCommand(String.format(ls_cmd, "dump")); - assertEquals(getDevice().executeShellCommand("echo $?"), "0\n"); - assertEquals(mnt_ls, dump_ls); + String ls_cmd = "cd /data/local/tmp/efs_test/%s;ls -AlnR ."; + CommandResult mnt_ls = RunAndCheckAdbCmd(String.format(ls_cmd, "mnt")); + CommandResult dump_ls = RunAndCheckAdbCmd(String.format(ls_cmd, "dump")); + assertEquals(removeTimestamps(mnt_ls.getStdout()), removeTimestamps(dump_ls.getStdout())); getDevice().executeShellCommand("umount /data/local/tmp/efs_test/mnt"); getDevice().executeShellCommand("rm -rf /data/local/tmp/efs_test/dump/*"); From cc52939a8a661e75be95a00015e6fc4ce7044a37 Mon Sep 17 00:00:00 2001 From: Allen Jiang Date: Tue, 5 Nov 2024 00:08:43 +0000 Subject: [PATCH 27/48] bcl: fix ocp_gpu_lvl in init.zuma.rc Bug: 377376692 Flag: EXEMPT bugfix Test: Manually Change-Id: I9fcf505572cced516628bdaf34bfde23fa950b8c Signed-off-by: Allen Jiang --- conf/init.zuma.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index 4899054e..59a7dda7 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -981,7 +981,7 @@ on property:vendor.thermal.link_ready=1 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/soft_ocp_gpu_lvl 9000 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/soft_ocp_tpu_lvl 8500 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_cpu2_lvl 12000 - write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_gpu_lvl 12000 + write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_gpu_lvl 9000 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_tpu_lvl 12000 write /sys/devices/virtual/pmic/mitigation/clock_div/tpu_clk_div 0x1 write /sys/devices/virtual/pmic/mitigation/clock_div/gpu_clk_div 0x1 From ca66ae1b2a33137dd8598bcc0d903008b51d28ac Mon Sep 17 00:00:00 2001 From: Herbert Xue Date: Wed, 6 Nov 2024 10:33:21 +0800 Subject: [PATCH 28/48] Move video_codec soong config variables into board config Flag: EXEMPT bugfix Bug: 370663515 Test: m libExynosC2OSAL Change-Id: I76847c362ab1b257b90c610c84b00221c2a4ce84 --- BoardConfig-common.mk | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index e6161d6f..cbc26cc2 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -213,6 +213,12 @@ BOARD_USE_BLOB_ALLOCATOR := false BOARD_SUPPORT_MFC_ENC_BT2020 := true BOARD_SUPPORT_FLEXIBLE_P010 := true BOARD_SUPPORT_MFC_VERSION := 1660 +$(call soong_config_set,video_codec,target_soc_name,$(TARGET_SOC_NAME)) +$(call soong_config_set_bool,video_codec,board_use_codec2_hidl_1_2,$(BOARD_USE_CODEC2_HIDL_1_2)) +$(call soong_config_set_bool,video_codec,board_support_mfc_enc_bt2020,$(BOARD_SUPPORT_MFC_ENC_BT2020)) +$(call soong_config_set_bool,video_codec,board_support_flexible_p010,$(BOARD_SUPPORT_FLEXIBLE_P010)) +$(call soong_config_set_bool,video_codec,board_use_codec2_aidl,$(if $(BOARD_USE_CODEC2_AIDL),true,false)) +$(call soong_config_set,video_codec,board_support_mfc_version,$(BOARD_SUPPORT_MFC_VERSION)) ######################## BOARD_SUPER_PARTITION_SIZE := 8531214336 From bc4963632b5e3695a24bccbdb61893dec79be15e Mon Sep 17 00:00:00 2001 From: Spade Lee Date: Thu, 7 Nov 2024 17:28:33 +0000 Subject: [PATCH 29/48] dump_power: zuma: correct dump path - add pca9468 logbuffer - move fg registers dump from debugfs to sysfs - remove dual fg path - remove max77779fg path - remove maxfg history path - remove unused ln8411 path Bug: 377895720 Flag: EXEMPT bugfix Change-Id: I6aab8119e029ccc45f5da827a119249b07aed8dd Signed-off-by: Spade Lee --- conf/init.zuma.rc | 1 + dumpstate/dump_power.cpp | 54 +++------------------------------------- 2 files changed, 4 insertions(+), 51 deletions(-) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index 59a7dda7..10b8ccf2 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -531,6 +531,7 @@ on early-boot chown system system /dev/logbuffer_tcpm chown system system /dev/logbuffer_usbpd chown system system /dev/logbuffer_wireless + chown system system /dev/logbuffer_pca9468 chown system system /dev/logbuffer_dc_mains chown system system /dev/logbuffer_cpm chown system system /dev/logbuffer_wc68 diff --git a/dumpstate/dump_power.cpp b/dumpstate/dump_power.cpp index f56e5047..8caa8095 100644 --- a/dumpstate/dump_power.cpp +++ b/dumpstate/dump_power.cpp @@ -206,36 +206,12 @@ void dumpMaxFg() { {"maxfg_monitor logbuffer", "/dev/logbuffer_maxfg_monitor"}, }; - const char *maxfgFlip [][2] = { - {"Power supply property maxfg_base", "/sys/class/power_supply/maxfg_base/uevent"}, - {"Power supply property maxfg_flip", "/sys/class/power_supply/maxfg_flip/uevent"}, - {"maxfg_base registers", "/sys/class/power_supply/maxfg_base/registers_dump"}, - {"maxfg_secondary registers", "/sys/class/power_supply/maxfg_secondary/registers_dump"}, - {"m5_state", "/sys/class/power_supply/maxfg_base/m5_model_state"}, - {"maxfg_base", "/dev/logbuffer_maxfg_base"}, - {"maxfg_flip", "/dev/logbuffer_maxfg_flip"}, - {"maxfg_base", "/dev/logbuffer_maxfg_base_monitor"}, - {"maxfg_flip", "/dev/logbuffer_maxfg_flip_monitor"}, - }; - - const char *maxfgHistoryName = "Maxim FG History"; - const char *maxfgHistoryDir = "/dev/maxfg_history"; - std::string content; - if (isValidDir(maxfgLoc)) { for (const auto &row : maxfg) { dumpFileContent(row[0], row[1]); } - } else { - for (const auto &row : maxfgFlip) { - dumpFileContent(row[0], row[1]); - } - } - - if (isValidFile(maxfgHistoryDir)) { - dumpFileContent(maxfgHistoryName, maxfgHistoryDir); } } @@ -306,8 +282,9 @@ void dumpTcpc() { void dumpPdEngine() { const char* pdEngine [][2] { {"Logbuffer TCPC", "/dev/logbuffer_usbpd"}, - {"PPS-google_cpm", "/dev/logbuffer_cpm"}, - {"PPS-dc", "/dev/logbuffer_dc_mains"}, + {"PPS-google_cpm logbuffer", "/dev/logbuffer_cpm"}, + {"PPS-pca9468 logbuffer", "/dev/logbuffer_pca9468"}, + {"PPS-dc_mains logbuffer", "/dev/logbuffer_dc_mains"}, }; for (const auto &row : pdEngine) { @@ -333,15 +310,6 @@ void dumpWc68() { } } -void dumpLn8411() { - const char* ln8411Title = "LN8411"; - const char* ln8411File = "/dev/logbuffer_ln8411"; - - if (isValidFile(ln8411File)) { - dumpFileContent(ln8411Title, ln8411File); - } -} - void dumpBatteryHealth() { const char* batteryHealth [][2] { {"Battery Health", "/sys/class/power_supply/battery/health_index_stats"}, @@ -480,7 +448,6 @@ void dumpChgUserDebug() { const std::string debugfs = "/d/"; const char *maxFgDir = "/d/maxfg"; const char *maxFgStrMatch = "maxfg"; - const char *maxFg77779StrMatch = "max77779fg"; const char *chgTblName = "Charging table dump"; const char *chgTblDir = "/d/google_battery/chg_raw_profile"; @@ -488,16 +455,6 @@ void dumpChgUserDebug() { "fg_model", "algo_ver", "model_ok", - "registers", - "nv_registers", - }; - - const char *max77779FgInfo [] { - "fg_model", - "algo_ver", - "model_ok", - "registers", - "debug_registers", }; if (isUserBuild()) @@ -509,10 +466,6 @@ void dumpChgUserDebug() { for (auto & directory : maxFgInfo) { printValuesOfDirectory(directory, debugfs, maxFgStrMatch); } - } else { - for (auto & directory : max77779FgInfo) { - printValuesOfDirectory(directory, debugfs, maxFg77779StrMatch); - } } } @@ -980,7 +933,6 @@ int main() { dumpPdEngine(); dumpEusbRepeater(); dumpWc68(); - dumpLn8411(); dumpBatteryHealth(); dumpBatteryDefend(); dumpChg(); From 2047505a62d59b143d3460f8dd84821ece25d524 Mon Sep 17 00:00:00 2001 From: Herbert Xue Date: Fri, 8 Nov 2024 15:11:48 +0800 Subject: [PATCH 30/48] Set soong config variable "board_use_dec_sw_csc" for libExynosVideoCodec Flag: EXEMPT bugfix Bug: 375522783 Test: m libExynosVideoCodec Change-Id: Ida44710eb53376d12f3e26b8bf55b26ade49cd07 --- BoardConfig-common.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index cbc26cc2..41a32626 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -215,6 +215,7 @@ BOARD_SUPPORT_FLEXIBLE_P010 := true BOARD_SUPPORT_MFC_VERSION := 1660 $(call soong_config_set,video_codec,target_soc_name,$(TARGET_SOC_NAME)) $(call soong_config_set_bool,video_codec,board_use_codec2_hidl_1_2,$(BOARD_USE_CODEC2_HIDL_1_2)) +$(call soong_config_set_bool,video_codec,board_use_dec_sw_csc,$(BOARD_USE_DEC_SW_CSC)) $(call soong_config_set_bool,video_codec,board_support_mfc_enc_bt2020,$(BOARD_SUPPORT_MFC_ENC_BT2020)) $(call soong_config_set_bool,video_codec,board_support_flexible_p010,$(BOARD_SUPPORT_FLEXIBLE_P010)) $(call soong_config_set_bool,video_codec,board_use_codec2_aidl,$(if $(BOARD_USE_CODEC2_AIDL),true,false)) From d827c45f63ce24bd5da694dcb4fe21303f6a3071 Mon Sep 17 00:00:00 2001 From: Herbert Xue Date: Tue, 19 Nov 2024 15:09:27 +0800 Subject: [PATCH 31/48] Set soong config variables for libExynosC2H263Dec and libExynosC2H263Enc Flag: EXEMPT bugfix Bug: 375111251 Test: m libExynosC2H263Dec libExynosC2H263Enc Change-Id: I7926d494df871bda7e7572a4743b4b04343e8b7e --- BoardConfig-common.mk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index 41a32626..e2e323cf 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -215,7 +215,11 @@ BOARD_SUPPORT_FLEXIBLE_P010 := true BOARD_SUPPORT_MFC_VERSION := 1660 $(call soong_config_set,video_codec,target_soc_name,$(TARGET_SOC_NAME)) $(call soong_config_set_bool,video_codec,board_use_codec2_hidl_1_2,$(BOARD_USE_CODEC2_HIDL_1_2)) +$(call soong_config_set_bool,video_codec,board_use_csc_filter,$(BOARD_USE_CSC_FILTER)) $(call soong_config_set_bool,video_codec,board_use_dec_sw_csc,$(BOARD_USE_DEC_SW_CSC)) +$(call soong_config_set_bool,video_codec,board_use_enc_sw_csc,$(BOARD_USE_ENC_SW_CSC)) +$(call soong_config_set_bool,video_codec,board_support_mfc_enc_rgb,$(BOARD_SUPPORT_MFC_ENC_RGB)) +$(call soong_config_set_bool,video_codec,board_use_blob_allocator,$(BOARD_USE_BLOB_ALLOCATOR)) $(call soong_config_set_bool,video_codec,board_support_mfc_enc_bt2020,$(BOARD_SUPPORT_MFC_ENC_BT2020)) $(call soong_config_set_bool,video_codec,board_support_flexible_p010,$(BOARD_SUPPORT_FLEXIBLE_P010)) $(call soong_config_set_bool,video_codec,board_use_codec2_aidl,$(if $(BOARD_USE_CODEC2_AIDL),true,false)) From 43c6cf5adaddc7f5431593375aa492ea7d20c923 Mon Sep 17 00:00:00 2001 From: kellyhung Date: Tue, 19 Nov 2024 08:21:24 +0000 Subject: [PATCH 32/48] Add soong config use_google_qns in zuma Bug: 360757079 Test: Presubmits Flag: EXEMPT bugfix Change-Id: Ic3dcfbbeb62f5c152f0d43c9182e98a5b2bc74f0 --- device.mk | 3 +++ 1 file changed, 3 insertions(+) diff --git a/device.mk b/device.mk index b35a89c9..aa83ffa3 100644 --- a/device.mk +++ b/device.mk @@ -233,6 +233,9 @@ endif # Use for GRIL USES_LASSEN_MODEM := true $(call soong_config_set, vendor_ril_google_feature, use_lassen_modem, true) +ifneq ($(BOARD_WITHOUT_RADIO),true) +$(call soong_config_set_bool,grilservice,use_google_qns,true) +endif ifeq ($(USES_GOOGLE_DIALER_CARRIER_SETTINGS),true) USE_GOOGLE_DIALER := true From 74ccf54701d6535f3ba0ed5d852e94fa11a2a2ec Mon Sep 17 00:00:00 2001 From: Roy Luo Date: Thu, 21 Nov 2024 22:37:56 +0000 Subject: [PATCH 33/48] Enable usb state update via udc sysfs Bug: 339241080 Test: tested on Shiba Flag: android.hardware.usb.flags.enable_udc_sysfs_usb_state_update Change-Id: I1e741ab5e857dd706346967773eb0e17550eaaba --- overlay/frameworks/base/core/res/res/values/config.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml index 916e45e4..780a9c19 100644 --- a/overlay/frameworks/base/core/res/res/values/config.xml +++ b/overlay/frameworks/base/core/res/res/values/config.xml @@ -321,4 +321,7 @@ 100% + + + true From 2908e979a6950bbd0467ae9b0a1194867ef903fd Mon Sep 17 00:00:00 2001 From: Kelvin Zhang Date: Wed, 20 Nov 2024 14:02:36 -0800 Subject: [PATCH 34/48] Allow metadata to be formatted as ext4 This does not convert /metadata to ext4, the default is still f2fs. EXT4 would only be used if we are on 16KB mode Flag: EXEMPT bugfix Bug: 379759696 Change-Id: I91c114f476b6894361523a5bc8b66930df9f49a5 --- conf/f2fs/fstab.zuma.f2fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/f2fs/fstab.zuma.f2fs b/conf/f2fs/fstab.zuma.f2fs index 47682dee..b5892d14 100644 --- a/conf/f2fs/fstab.zuma.f2fs +++ b/conf/f2fs/fstab.zuma.f2fs @@ -7,4 +7,4 @@ /dev/block/platform/13200000.ufs/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,reserve_root=32768,resgid=1065,fsync_mode=nobarrier,compress_extension=apk,compress_extension=so,compress_extension=vdex,compress_extension=odex,@inlinecrypt@,atgc,checkpoint_merge,compress_cache latemount,wait,check,quota,formattable,sysfs_path=/dev/sys/block/bootdevice,checkpoint=fs,reservedsize=128M,fscompress,readahead_size_kb=128,@fileencryption@,@metadata_encryption@,keydirectory=/metadata/vold/metadata_encryption,device=zoned:/dev/block/by-name/zoned_device /dev/block/platform/13200000.ufs/by-name/userdata /data ext4 noatime,nosuid,nodev,@inlinecrypt@ latemount,wait,check,quota,formattable,reservedsize=128M,readahead_size_kb=128,@fileencryption@,@metadata_encryption@,keydirectory=/metadata/vold/metadata_encryption /dev/block/platform/13200000.ufs/by-name/metadata /metadata f2fs noatime,nosuid,nodev,sync wait,check,formattable,first_stage_mount -/dev/block/platform/13200000.ufs/by-name/metadata /metadata ext4 noatime,nosuid,nodev,data=journal,commit=1 wait,check,first_stage_mount,metadata_csum +/dev/block/platform/13200000.ufs/by-name/metadata /metadata ext4 noatime,nosuid,nodev,data=journal,commit=1 wait,check,formattable,first_stage_mount,metadata_csum From 1f92d2a96e9bdfc4b483d1bcfffebddd7ca8babe Mon Sep 17 00:00:00 2001 From: Bill Yang Date: Thu, 21 Nov 2024 00:58:50 +0000 Subject: [PATCH 35/48] Add hardware/google/graphics/zuma/libhwc2.1 to PRODUCT_SOONG_NAMESPACES For zumapro it shares the same libacryl_plugins in zuma but for libexynosdisplay it still has different version between zuma and zumapro. In ag/30508311 it already split hardware/google/graphics/zuma/libhwc2.1 to it's own soong_namespace which need to add it to product config for zuma. Bug: 357500180 Test: lunch aosp_husky-trunk_staging-userdebug; \ m libexynosdisplay Flag: EXEMPT refactor Change-Id: I8adc95085067456aa2a29822e89f9777ece241f3 --- device.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/device.mk b/device.mk index b35a89c9..6fb35b18 100644 --- a/device.mk +++ b/device.mk @@ -75,6 +75,7 @@ PRODUCT_SOONG_NAMESPACES += \ hardware/google/gchips/gralloc4 \ hardware/google/graphics/common \ hardware/google/graphics/zuma \ + hardware/google/graphics/zuma/libhwc2.1 \ hardware/google/interfaces \ hardware/google/pixel \ device/google/zuma \ From d1cf23e6f7f195581a04e6ce52d586c6c6d58cb7 Mon Sep 17 00:00:00 2001 From: Nelson Li Date: Wed, 27 Nov 2024 06:27:58 +0000 Subject: [PATCH 36/48] Change TARGET_RECOVERY_UI_LIB to use fully qualified names in zuma Since the TARGET_RECOVERY_UI_LIB for each device is not exactly the same, and most of the modules in it contain `soong_namespace{}` to avoid conflicts between different devices, after converting `librecovery_ui_ext` from Android.mk to Android.bp, it needs to be changed to a `fully qualified name` in order to correctly use the corresponding module. Flag: EXEMPT refactor Bug: 339143524 Test: m -j librecovery_ui_ext Change-Id: I2912cbc905ff0ee716c293021c29061e3b6d3dca --- BoardConfig-common.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index e2e323cf..52e1378a 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -72,7 +72,7 @@ TARGET_RECOVERY_FSTAB_GENRULE := gen_fstab.zuma-sw-encrypt TARGET_RECOVERY_PIXEL_FORMAT := ABGR_8888 TARGET_RECOVERY_UI_MARGIN_HEIGHT := 165 TARGET_RECOVERY_UI_LIB := \ - librecovery_ui_pixel \ + //hardware/google/pixel/recovery:librecovery_ui_pixel \ libfstab AB_OTA_UPDATER := true From ff7717d54cca2903c9ce3672928275e58293fe1e Mon Sep 17 00:00:00 2001 From: Will Song Date: Wed, 27 Nov 2024 02:23:45 -0800 Subject: [PATCH 37/48] init: zuma: move sched rate limit to late init Since pixel performance has a shared configuration, we need to move override values into late init. Bug: 381100494 Test: Boot Flag: EXEMPT bug fix Change-Id: I20d38e481d43d1068a6faebec298446929812ffb --- conf/init.zuma.rc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index 10b8ccf2..527b8211 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -150,14 +150,11 @@ on init # governor setting write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor sched_pixel write /sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/up_rate_limit_us 500 - write /sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/down_rate_limit_us 5000 write /sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/down_rate_limit_scale_pow 2 write /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor sched_pixel write /sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/up_rate_limit_us 500 - write /sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us 20000 write /sys/devices/system/cpu/cpu8/cpufreq/scaling_governor sched_pixel write /sys/devices/system/cpu/cpu8/cpufreq/sched_pixel/up_rate_limit_us 500 - write /sys/devices/system/cpu/cpu8/cpufreq/sched_pixel/down_rate_limit_us 20000 # memlat cpuidle awareness setting @@ -374,6 +371,11 @@ on late-fs # Mount RW partitions which need run fsck mount_all --late +on late-init + write /sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/down_rate_limit_us 5000 + write /sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us 20000 + write /sys/devices/system/cpu/cpu8/cpufreq/sched_pixel/down_rate_limit_us 20000 + on post-fs-data # Modem temperature driver chown radio system /sys/devices/platform/cp-tm1/cp_temp From a8a6c8ff283bf8b38f4a9531fb6ed9faed974e16 Mon Sep 17 00:00:00 2001 From: Juan Yescas Date: Tue, 3 Dec 2024 04:41:56 +0000 Subject: [PATCH 38/48] 16kb: zuma: Filter out unnecessary modules from 16k mode The 16k mode does not use these modules. Bug: 378293897 Bug: 379704287 Change-Id: I237fd9cf7ca2f7972fafa08a3df65c0472e1ef03 Test: Built husky-trunk_staging target and tested 4kb and 16kb mode. Flag: EXEMPT bugfix --- BoardConfig-16k-common.mk | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/BoardConfig-16k-common.mk b/BoardConfig-16k-common.mk index d636e9ad..adf2b338 100644 --- a/BoardConfig-16k-common.mk +++ b/BoardConfig-16k-common.mk @@ -31,8 +31,18 @@ BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_dlkm.module BOARD_KERNEL_MODULES_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(TARGET_KERNEL_DIR_16K)/$(notdir $(module))) BOARD_PREBUILT_DTBOIMAGE_16KB := $(TARGET_KERNEL_DIR_16K)/dtbo.img -# Zuma targets use exynos-bcm_dbg.ko module instead of bcm_dbg.ko. +# The 16kb mode does not use these modules. +BOARD_KERNEL_MODULES_16K := $(filter-out %/aoc_unit_test_dev.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/bcm_dbg.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/gnssif.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/gnss_spi.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/goodix_brl_touch.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/mali_kutf.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/mali_kutf_clk_rate_trace_test_portal.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/rt6160_regulator.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/sec_touch.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/sscoredump_sample_test.ko,$(BOARD_KERNEL_MODULES_16K)) +BOARD_KERNEL_MODULES_16K := $(filter-out %/sscoredump_test.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/zram.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_LOAD_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(notdir $(module))) From e9866ccdbfa68a9283718321bc6e500075e59bfe Mon Sep 17 00:00:00 2001 From: Chaohui Wang Date: Tue, 3 Dec 2024 17:30:34 +0800 Subject: [PATCH 39/48] Clean up unnecessary data_connection_5g_plus overlay This string is not device specific, and already set at, frameworks/base/packages/SettingsLib/res/values-mcc311-mnc480/strings.xml frameworks/base/packages/SettingsLib/res/values-mcc310-mnc004/strings.xml Bug: 377907543 Flag: EXEMPT clean up Test: m Change-Id: I3bd290c8839ac510a0b11c70a7aaa55d58591964 --- .../res/values-mcc310-mnc004/strings.xml | 22 ------------------- .../res/values-mcc311-mnc480/strings.xml | 22 ------------------- 2 files changed, 44 deletions(-) delete mode 100644 overlay/frameworks/base/packages/SettingsLib/res/values-mcc310-mnc004/strings.xml delete mode 100644 overlay/frameworks/base/packages/SettingsLib/res/values-mcc311-mnc480/strings.xml diff --git a/overlay/frameworks/base/packages/SettingsLib/res/values-mcc310-mnc004/strings.xml b/overlay/frameworks/base/packages/SettingsLib/res/values-mcc310-mnc004/strings.xml deleted file mode 100644 index f8ed0c01..00000000 --- a/overlay/frameworks/base/packages/SettingsLib/res/values-mcc310-mnc004/strings.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - 5G UW - diff --git a/overlay/frameworks/base/packages/SettingsLib/res/values-mcc311-mnc480/strings.xml b/overlay/frameworks/base/packages/SettingsLib/res/values-mcc311-mnc480/strings.xml deleted file mode 100644 index f8ed0c01..00000000 --- a/overlay/frameworks/base/packages/SettingsLib/res/values-mcc311-mnc480/strings.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - 5G UW - From 7463e548bfd02feedfc6f0aa68920c8e50212615 Mon Sep 17 00:00:00 2001 From: Nick Kralevich Date: Mon, 2 Dec 2024 16:47:23 -0800 Subject: [PATCH 40/48] Fix kasan logic The command line "kasan=off" should be unconditionally set when we're compiling for a normal (non-_fullmte) build. The current logic sets "kasan=off" for a normal ENG build only, which is insufficent. Test: _fullmte userdebug/eng: "sanitizer-status mte" shows MTE enabled. Test: _fullmte userdebug/eng: "kasan=off" IS NOT present in /proc/cmdline Test: !_fullmte userdebug: "sanitizer-status mte" shows MTE disabled. Test: !_fullmte eng: "sanitizer-status mte" shows MTE enabled Test: !_fullmte userdebug/eng: "kasan=off" IS present in /proc/cmdline Change-Id: Idd61747156daa135e919ce71fd63bfab1f4d9239 Bug: 381940217 Flag: EXEMPT bugfix --- BoardConfig-common.mk | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index e2e323cf..a1ff9d9a 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -39,9 +39,15 @@ BOARD_KERNEL_CMDLINE += swiotlb=1024 BOARD_KERNEL_CMDLINE += cgroup.memory=nokmem BOARD_KERNEL_CMDLINE += sysctl.kernel.sched_pelt_multiplier=4 +# Normal (non-_fullmte) builds should disable kasan ifeq (,$(filter %_fullmte,$(TARGET_PRODUCT))) -ifneq (,$(filter eng,$(TARGET_BUILD_VARIANT))) BOARD_KERNEL_CMDLINE += kasan=off +endif + +# Enable a limited subset of MTE for "normal" (non-_fullmte) eng builds. +# Don't touch any settings for _fullmte builds. They are set somewhere else. +ifeq (,$(filter %_fullmte,$(TARGET_PRODUCT))) +ifeq ($(TARGET_BUILD_VARIANT),eng) BOARD_KERNEL_CMDLINE += bootloader.pixel.MTE_FORCE_ON ifeq ($(filter memtag_heap,$(SANITIZE_TARGET)),) SANITIZE_TARGET := $(strip $(SANITIZE_TARGET) memtag_heap) From 2620d19ec0aba77824b3f396f154ec8e8a568c0d Mon Sep 17 00:00:00 2001 From: Nelson Li Date: Wed, 27 Nov 2024 06:27:58 +0000 Subject: [PATCH 41/48] Change TARGET_RECOVERY_UI_LIB to use fully qualified names in zuma Since the TARGET_RECOVERY_UI_LIB for each device is not exactly the same, and most of the modules in it contain `soong_namespace{}` to avoid conflicts between different devices, after converting `librecovery_ui_ext` from Android.mk to Android.bp, it needs to be changed to a `fully qualified name` in order to correctly use the corresponding module. Flag: EXEMPT refactor Bug: 339143524 Test: m -j librecovery_ui_ext Merged-In: I2912cbc905ff0ee716c293021c29061e3b6d3dca Change-Id: I2912cbc905ff0ee716c293021c29061e3b6d3dca --- BoardConfig-common.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk index 63c1317d..3d550c02 100644 --- a/BoardConfig-common.mk +++ b/BoardConfig-common.mk @@ -64,7 +64,7 @@ TARGET_RECOVERY_FSTAB_GENRULE := gen_fstab.zuma-sw-encrypt TARGET_RECOVERY_PIXEL_FORMAT := ABGR_8888 TARGET_RECOVERY_UI_MARGIN_HEIGHT := 165 TARGET_RECOVERY_UI_LIB := \ - librecovery_ui_pixel \ + //hardware/google/pixel/recovery:librecovery_ui_pixel \ libfstab AB_OTA_UPDATER := true From f130ff4e49241858340967428f6b9509eb99e654 Mon Sep 17 00:00:00 2001 From: Daniel Zheng Date: Thu, 5 Dec 2024 14:50:09 -0800 Subject: [PATCH 42/48] update health HAL dependency Bug: 381926253 Test: th Change-Id: I1938e9f53a1ceec8f351cca10c97285a4b9588ed --- health/android.hardware.health-service.zuma.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/health/android.hardware.health-service.zuma.xml b/health/android.hardware.health-service.zuma.xml index 2acaabac..8ddfbdaa 100644 --- a/health/android.hardware.health-service.zuma.xml +++ b/health/android.hardware.health-service.zuma.xml @@ -1,7 +1,7 @@ android.hardware.health - 3 + 4 IHealth/default From 9cc872da8f7ab5deaf18d8bd5f00ae3e466e34c3 Mon Sep 17 00:00:00 2001 From: Rick Yiu Date: Thu, 5 Dec 2024 08:53:11 +0000 Subject: [PATCH 43/48] Add sched qos support Add task profiles and set permissions. Bug: 355612114 Flag: NONE init rc file does not support flag Test: build pass Change-Id: I4b285a95b5a9d3934a5b95ba57424a89a98f9b2a --- conf/init.zuma.rc | 77 ++++++++++++++ task_profiles.json | 254 ++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 314 insertions(+), 17 deletions(-) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index 527b8211..ab6086ef 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -102,6 +102,83 @@ on init start vendor.keymaster-4-0 + # Change permission of sched qos nodes + chown system system /proc/vendor_sched/sched_qos/adpf_set + chown system system /proc/vendor_sched/sched_qos/adpf_clear + chown system system /proc/vendor_sched/sched_qos/auto_uclamp_max_set + chown system system /proc/vendor_sched/sched_qos/auto_uclamp_max_clear + chown system system /proc/vendor_sched/sched_qos/boost_prio_set + chown system system /proc/vendor_sched/sched_qos/boost_prio_clear + chown system system /proc/vendor_sched/sched_qos/preempt_wakeup_set + chown system system /proc/vendor_sched/sched_qos/preempt_wakeup_clear + chown system system /proc/vendor_sched/sched_qos/prefer_fit_set + chown system system /proc/vendor_sched/sched_qos/prefer_fit_clear + chown system system /proc/vendor_sched/sched_qos/prefer_high_cap_set + chown system system /proc/vendor_sched/sched_qos/prefer_high_cap_clear + chown system system /proc/vendor_sched/sched_qos/prefer_idle_set + chown system system /proc/vendor_sched/sched_qos/prefer_idle_clear + chown system system /proc/vendor_sched/sched_qos/rampup_multiplier_set + chown system system /proc/vendor_sched/sched_qos/rampup_multiplier_clear + + chmod 0220 /proc/vendor_sched/sched_qos/adpf_set + chmod 0220 /proc/vendor_sched/sched_qos/adpf_clear + chmod 0220 /proc/vendor_sched/sched_qos/auto_uclamp_max_set + chmod 0220 /proc/vendor_sched/sched_qos/auto_uclamp_max_clear + chmod 0220 /proc/vendor_sched/sched_qos/boost_prio_set + chmod 0220 /proc/vendor_sched/sched_qos/boost_prio_clear + chmod 0220 /proc/vendor_sched/sched_qos/preempt_wakeup_set + chmod 0220 /proc/vendor_sched/sched_qos/preempt_wakeup_clear + chmod 0220 /proc/vendor_sched/sched_qos/prefer_fit_set + chmod 0220 /proc/vendor_sched/sched_qos/prefer_fit_clear + chmod 0220 /proc/vendor_sched/sched_qos/prefer_high_cap_set + chmod 0220 /proc/vendor_sched/sched_qos/prefer_high_cap_clear + chmod 0220 /proc/vendor_sched/sched_qos/prefer_idle_set + chmod 0220 /proc/vendor_sched/sched_qos/prefer_idle_clear + chmod 0220 /proc/vendor_sched/sched_qos/rampup_multiplier_set + chmod 0220 /proc/vendor_sched/sched_qos/rampup_multiplier_clear + + # Enable sched_qos for some groups + write /proc/vendor_sched/groups/ta/qos_adpf_enable 1 + write /proc/vendor_sched/groups/ta/qos_auto_uclamp_max_enable 1 + write /proc/vendor_sched/groups/ta/qos_boost_prio_enable 1 + write /proc/vendor_sched/groups/ta/qos_preempt_wakeup_enable 1 + write /proc/vendor_sched/groups/ta/qos_prefer_fit_enable 1 + write /proc/vendor_sched/groups/ta/qos_prefer_high_cap_enable 1 + write /proc/vendor_sched/groups/ta/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/ta/qos_rampup_multiplier_enable 1 + write /proc/vendor_sched/groups/fg/qos_adpf_enable 1 + write /proc/vendor_sched/groups/fg/qos_auto_uclamp_max_enable 1 + write /proc/vendor_sched/groups/fg/qos_boost_prio_enable 1 + write /proc/vendor_sched/groups/fg/qos_preempt_wakeup_enable 1 + write /proc/vendor_sched/groups/fg/qos_prefer_fit_enable 1 + write /proc/vendor_sched/groups/fg/qos_prefer_high_cap_enable 1 + write /proc/vendor_sched/groups/fg/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/fg/qos_rampup_multiplier_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_adpf_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_auto_uclamp_max_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_boost_prio_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_preempt_wakeup_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_prefer_fit_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_prefer_high_cap_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_rampup_multiplier_enable 1 + write /proc/vendor_sched/groups/cam/qos_adpf_enable 1 + write /proc/vendor_sched/groups/cam/qos_auto_uclamp_max_enable 1 + write /proc/vendor_sched/groups/cam/qos_prefer_fit_enable 1 + write /proc/vendor_sched/groups/cam/qos_prefer_high_cap_enable 1 + write /proc/vendor_sched/groups/cam/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/cam/qos_rampup_multiplier_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_adpf_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_auto_uclamp_max_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_prefer_fit_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_prefer_high_cap_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_rampup_multiplier_enable 1 + write /proc/vendor_sched/groups/rt/qos_adpf_enable 1 + write /proc/vendor_sched/groups/rt/qos_rampup_multiplier_enable 1 + write /proc/vendor_sched/groups/sf/qos_adpf_enable 1 + write /proc/vendor_sched/groups/sf/qos_rampup_multiplier_enable 1 + # ZRAM setup write /proc/sys/vm/page-cluster 0 diff --git a/task_profiles.json b/task_profiles.json index 47cada84..6b9b1ee3 100644 --- a/task_profiles.json +++ b/task_profiles.json @@ -15,21 +15,6 @@ } ] }, - { - "Name": "PreferIdle", - "Actions": [ - { - "Name": "WriteFile", - "Params": - { - "FilePath": "/proc/vendor_sched/prefer_idle_set", - "ProcFilePath": "/proc/vendor_sched/prefer_idle_set", - "Value": "", - "LogFailures": "false" - } - } - ] - }, { "Name": "CameraServicePerformance", "Actions": [ @@ -174,6 +159,21 @@ } ] }, + { + "Name": "HighPerformanceWI", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/groups/fg_wi/set_task_group", + "ProcFilePath": "/proc/vendor_sched/groups/fg_wi/set_proc_group", + "Value": "", + "LogFailures": "false" + } + } + ] + }, { "Name": "RealtimePerformance", "Actions": [ @@ -265,6 +265,202 @@ } ] }, + { + "Name": "AdpfSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/adpf_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "AdpfClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/adpf_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "BoostPrioSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/boost_prio_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "BoostPrioClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/boost_prio_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreemptWakeupSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/preempt_wakeup_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreemptWakeupClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/preempt_wakeup_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreferFitSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/prefer_fit_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreferFitClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/prefer_fit_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreferIdleSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/prefer_idle_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreferIdleClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/prefer_idle_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "AutoUclampMaxSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/auto_uclamp_max_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "AutoUclampMaxClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/auto_uclamp_max_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreferHighCapSet", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/prefer_high_cap_set", + "Value": "", + "LogFailures": "false" + } + } + ] + }, + { + "Name": "PreferHighCapClear", + "Actions": [ + { + "Name": "WriteFile", + "Params": + { + "FilePath": "/proc/vendor_sched/sched_qos/prefer_high_cap_clear", + "Value": "", + "LogFailures": "false" + } + } + ] + }, { "Name": "ResetUclampGrp", "Actions": [ @@ -302,11 +498,35 @@ }, { "Name": "OtaProfiles", - "Profiles": [ "OtaPerformance", "ProcessCapacityNormal", "LowIoPriority", "TimerSlackHigh" ] + "Profiles": [ "OtaPerformance", "ServiceCapacityLow", "LowIoPriority", "TimerSlackHigh" ] + }, + { + "Name": "SCHED_QOS_SENSITIVE_EXTREME_SET", + "Profiles": [ "AdpfSet", "PreferIdleSet", "PreferFitSet", "BoostPrioSet", "PreemptWakeupSet" ] + }, + { + "Name": "SCHED_QOS_SENSITIVE_EXTREME_CLEAR", + "Profiles": [ "AdpfClear", "PreferIdleClear", "PreferFitClear", "BoostPrioClear", "PreemptWakeupClear" ] + }, + { + "Name": "SCHED_QOS_SENSITIVE_STANDARD_SET", + "Profiles": [ "AdpfSet", "PreferIdleSet", "PreferFitSet" ] + }, + { + "Name": "SCHED_QOS_SENSITIVE_STANDARD_CLEAR", + "Profiles": [ "AdpfClear", "PreferIdleClear", "PreferFitClear" ] + }, + { + "Name": "SCHED_QOS_POWER_EFFICIENCY_SET", + "Profiles": [ "AutoUclampMaxSet" ] + }, + { + "Name": "SCHED_QOS_POWER_EFFICIENCY_CLEAR", + "Profiles": [ "AutoUclampMaxClear" ] }, { "Name": "InputPolicy", - "Profiles": [ "MaxPerformance", "ResetUclampGrp", "PreferIdle" ] + "Profiles": [ "MaxPerformance", "SCHED_QOS_SENSITIVE_EXTREME_SET" ] } ] } From b6c6a96ce173cdaa4a25dac49f26292b87792dda Mon Sep 17 00:00:00 2001 From: Eileen Lai Date: Sat, 7 Dec 2024 17:06:11 +0000 Subject: [PATCH 44/48] modem_svc: use modem_svc_sit version sepolicy For solving sepolicy conflicts for different AP version, modem_svc_sit will support devices from gs101 to zuma_pro. Bug: 372400955 Change-Id: Icef24314461008651230779358b253429c277b76 Flag: NONE local testing only --- device.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device.mk b/device.mk index 82ef5ea6..75405efd 100644 --- a/device.mk +++ b/device.mk @@ -1023,7 +1023,7 @@ ifneq ($(BOARD_WITHOUT_RADIO),true) SHARED_MODEM_PLATFORM_VENDOR := lassen # Shared Modem Platform -include device/google/gs-common/modem/shared_modem_platform/shared_modem_platform.mk +include device/google/gs-common/modem/modem_svc_sit/shared_modem_platform.mk # modem_ml_svc_sit daemon PRODUCT_PACKAGES += modem_ml_svc_sit From a192558eb53e1b81f8e2f644317f8db40a5bbbbc Mon Sep 17 00:00:00 2001 From: Daniel Lowe Date: Thu, 5 Dec 2024 19:19:49 +0000 Subject: [PATCH 45/48] [Pixel VPN] Apply reviewed default permissions Pregrantting below permissions: READ_PHONE_STATE Flag: EXEMPT add permission pregranted in b/337725984 Bug: 373686360 Test: presubmit, manual install on test device. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a0b5342effe86fdfa65d76a2881dd46da9f19e82) Merged-In: If6c3dfb1a29451d7b11a3ff10ec18b4c412056ed Change-Id: If6c3dfb1a29451d7b11a3ff10ec18b4c412056ed --- default-permissions.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/default-permissions.xml b/default-permissions.xml index 0afb6702..27364cae 100644 --- a/default-permissions.xml +++ b/default-permissions.xml @@ -174,5 +174,9 @@ + + + From 413efc24971330e04f4d28348aa3696550b07cd7 Mon Sep 17 00:00:00 2001 From: Jack Wu Date: Fri, 20 Dec 2024 17:43:54 +0800 Subject: [PATCH 46/48] dump_power: add battery caretaker dump into bugreport logging for AACR(+H), AAFV, AACT, AACC and AACP Version Bug: 384737509 Test: adb bugreport Flag: EXEMPT bugfix Signed-off-by: Jack Wu (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:0c88c7620ae837df1078e29e48b467e7d1274072) Merged-In: I9d36e6fcb25ee9f12b4fd2962207b1f4b592c2b3 Change-Id: I9d36e6fcb25ee9f12b4fd2962207b1f4b592c2b3 --- dumpstate/dump_power.cpp | 54 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 53 insertions(+), 1 deletion(-) diff --git a/dumpstate/dump_power.cpp b/dumpstate/dump_power.cpp index 8caa8095..e4734c9e 100644 --- a/dumpstate/dump_power.cpp +++ b/dumpstate/dump_power.cpp @@ -329,7 +329,7 @@ void dumpBatteryHealth() { } void dumpBatteryDefend() { - const char* defendConfig [][4] { + const char* defendConfig [][3] { {"TRICKLE-DEFEND Config", "/sys/devices/platform/google,battery/power_supply/battery/", "bd_"}, {"DWELL-DEFEND Config", "/sys/devices/platform/google,charger/", "charge_s"}, @@ -374,6 +374,57 @@ void dumpBatteryDefend() { } } +void dumpBatteryCaretaker() { + const char* aacpConfig [][3] { + {"AACP Version", + "/sys/devices/platform/google,battery/power_supply/battery/", "aacp_"}, + {"AACR Config", + "/sys/devices/platform/google,battery/power_supply/battery/", "aacr_"}, + {"AAFV Config", + "/sys/devices/platform/google,battery/power_supply/battery/", "aafv_"}, + {"AACT Config", + "/sys/devices/platform/google,battery/power_supply/battery/", "aact_"}, + {"AACC", + "/sys/devices/platform/google,battery/power_supply/battery/", "aacc"}, + }; + + std::vector files; + struct dirent *entry; + std::string content; + std::string fileLocation; + + for (auto &config : aacpConfig) { + DIR *dir = opendir(config[1]); + if (dir == NULL) + continue; + + printTitle(config[0]); + while ((entry = readdir(dir)) != NULL) { + if (std::string(entry->d_name).find(config[2]) != std::string::npos && + strncmp(config[2], entry->d_name, strlen(config[2])) == 0) { + files.push_back(entry->d_name); + } + } + closedir(dir); + + sort(files.begin(), files.end()); + + for (auto &file : files) { + fileLocation = std::string(config[1]) + std::string(file); + if (!android::base::ReadFileToString(fileLocation, &content) || content.empty()) { + content = "\n"; + } + + printf("%s: %s", file.c_str(), content.c_str()); + + if (content.back() != '\n') + printf("\n"); + } + + files.clear(); + } +} + void printValuesOfDirectory(const char *directory, std::string debugfs, const char *strMatch) { std::vector files; auto info = directory; @@ -935,6 +986,7 @@ int main() { dumpWc68(); dumpBatteryHealth(); dumpBatteryDefend(); + dumpBatteryCaretaker(); dumpChg(); dumpChgUserDebug(); dumpBatteryEeprom(); From 0824da9d67d7ad7a725ffe3d7037e7203a843dc7 Mon Sep 17 00:00:00 2001 From: Carter Hsu Date: Fri, 10 Jan 2025 09:44:23 +0800 Subject: [PATCH 47/48] audio: fix headtracking permission for spatializer offload playback Bug: 381405995 Test: manual Flag: EXEMPT bugfix Signed-off-by: Carter Hsu (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:26cc2347cd28ea8bf3527cfa30f86bd3b73b2805) Merged-In: I08d52b7f4988e9cdeb38f1d0fbbbf1baa54268ed Change-Id: I08d52b7f4988e9cdeb38f1d0fbbbf1baa54268ed --- conf/ueventd.zuma.rc | 1 + 1 file changed, 1 insertion(+) diff --git a/conf/ueventd.zuma.rc b/conf/ueventd.zuma.rc index e1e330d8..741b20b1 100644 --- a/conf/ueventd.zuma.rc +++ b/conf/ueventd.zuma.rc @@ -97,6 +97,7 @@ /dev/acd-mel_processor 0660 system audio /dev/amcs 0660 system audio /dev/acd-audio_rtp_* 0660 system radio +/dev/acd-mc_headpos 0660 system audio # Secure MEM driver /dev/s5p-smem 0660 drm drmrpc From 650bdd046cc9a8f858c0c2d7aaf1af83f93982c2 Mon Sep 17 00:00:00 2001 From: Vilas Bhat Date: Wed, 8 Jan 2025 18:05:59 +0000 Subject: [PATCH 48/48] 16KB: zuma: Do not filter out goodix_brl_touch.ko for 16KB mode Filtering out this module broke touchscreen functionality for Pixel 8 devices in 16 KB mode. Bug: 388515914 Flag: EXEMPT bugfix Test: Boot to 16KB mode using 16KB dev option and verify touchscreen functionality. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:2b06657f62b42f81a914b59c331d017f919181fa) Merged-In: I8ba72c8eabb5522873025cf9d80aa03a53fb8cfb Change-Id: I8ba72c8eabb5522873025cf9d80aa03a53fb8cfb --- BoardConfig-16k-common.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/BoardConfig-16k-common.mk b/BoardConfig-16k-common.mk index adf2b338..ef54bbbf 100644 --- a/BoardConfig-16k-common.mk +++ b/BoardConfig-16k-common.mk @@ -36,7 +36,6 @@ BOARD_KERNEL_MODULES_16K := $(filter-out %/aoc_unit_test_dev.ko,$(BOARD_KERNEL_M BOARD_KERNEL_MODULES_16K := $(filter-out %/bcm_dbg.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/gnssif.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/gnss_spi.ko,$(BOARD_KERNEL_MODULES_16K)) -BOARD_KERNEL_MODULES_16K := $(filter-out %/goodix_brl_touch.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/mali_kutf.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/mali_kutf_clk_rate_trace_test_portal.ko,$(BOARD_KERNEL_MODULES_16K)) BOARD_KERNEL_MODULES_16K := $(filter-out %/rt6160_regulator.ko,$(BOARD_KERNEL_MODULES_16K))