diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk
index e8f2f7c..099c238 100644
--- a/BoardConfig-common.mk
+++ b/BoardConfig-common.mk
@@ -150,8 +150,6 @@ endif
#display_unit_test
ifeq ($(USES_DEVICE_GOOGLE_ZUMAPRO),true)
-# TODO(b/272725898): Needs to check with owner later
-$(warning display_unit_test set to zuma on zumapro target)
$(call soong_config_set,display_unit_test,soc,zuma)
endif
@@ -280,8 +278,6 @@ HWC_SUPPORT_COLOR_TRANSFORM := true
BOARD_USES_EXYNOS_AFBC_FEATURE := true
#BOARD_USES_HDRUI_GLES_CONVERSION := true
-# TODO(b/272725898): Needs to check with owner later
-$(warning BOARD_LIBACRYL_DEFAULT_COMPOSITOR set to zuma on zumapro target)
BOARD_LIBACRYL_DEFAULT_COMPOSITOR := fimg2d_zuma
BOARD_LIBACRYL_G2D_HDR_PLUGIN := libacryl_hdr_plugin
diff --git a/conf/init.zumapro.board.rc b/conf/init.zumapro.board.rc
index dcee57a..9923903 100644
--- a/conf/init.zumapro.board.rc
+++ b/conf/init.zumapro.board.rc
@@ -294,26 +294,6 @@ on post-fs-data
# Video data
mkdir /data/vendor/media 0700 mediacodec mediacodec
-on post-fs-data
- # GPS
- mkdir /data/vendor/gps 0771 system system
- chown system system /data/vendor/gps
- rm /data/vendor/gps/gps_started
- rm /data/vendor/gps/glonass_started
- rm /data/vendor/gps/beidou_started
- rm /data/vendor/gps/smd_started
- rm /data/vendor/gps/sv_cno.info
-
- chown gps system /sys/devices/platform/111e0000.spi/spi_master/spi21/spi21.0/nstandby
- chmod 0664 /dev/ttyBCM
- chown gps system /dev/ttyBCM
- chmod 0664 /dev/bbd_control
- chown gps system /dev/bbd_control
- chmod 0664 /dev/bbd_patch
- chown gps system /dev/bbd_patch
- chmod 0664 /dev/bbd_sensor
- chown gps system /dev/bbd_sensor
-
on early-boot
# Wait for insmod_sh to finish all common modules
wait_for_prop vendor.common.modules.ready 1
diff --git a/default-permissions.xml b/default-permissions.xml
index fc00a30..2d04542 100644
--- a/default-permissions.xml
+++ b/default-permissions.xml
@@ -59,7 +59,6 @@
-
@@ -67,9 +66,6 @@
-
-
-
diff --git a/device.mk b/device.mk
index ad85c55..3389983 100644
--- a/device.mk
+++ b/device.mk
@@ -42,6 +42,8 @@ include device/google/gs-common/misc_writer/misc_writer.mk
include device/google/gs-common/gyotaku_app/gyotaku.mk
include device/google/gs-common/bootctrl/bootctrl_aidl.mk
include device/google/gs-common/betterbug/betterbug.mk
+include device/google/gs-common/recorder/recorder.mk
+include device/google/gs-common/fingerprint/fingerprint.mk
include device/google/zumapro/dumpstate/item.mk
@@ -66,8 +68,6 @@ ifeq ($(USE_PIXEL_GRALLOC),true)
PRODUCT_SOONG_NAMESPACES += hardware/google/gchips/GrallocHAL
endif
-# TODO(b/272725898): Needs to check with owner later
-$(warning hardware/google/graphics/zuma set to zuma on zumapro target)
PRODUCT_SOONG_NAMESPACES += \
hardware/google/av \
hardware/google/gchips \
@@ -217,12 +217,84 @@ PRODUCT_PROPERTY_OVERRIDES += \
persist.sys.hdcp_checking=always
USE_LASSEN_OEMHOOK := true
+ifneq ($(BOARD_WITHOUT_RADIO),true)
# The "power-anomaly-sitril" is added into PRODUCT_SOONG_NAMESPACES when
# $(USE_LASSEN_OEMHOOK) is true and $(BOARD_WITHOUT_RADIO) is not true.
-ifneq ($(BOARD_WITHOUT_RADIO),true)
- PRODUCT_SOONG_NAMESPACES += vendor/google/tools/power-anomaly-sitril
+PRODUCT_SOONG_NAMESPACES += vendor/google/tools/power-anomaly-sitril
+
+$(call inherit-product-if-exists, vendor/samsung_slsi/telephony/$(BOARD_USES_SHARED_VENDOR_TELEPHONY)/common/device-vendor.mk)
+
+# modem_ml_svc_sit daemon
+PRODUCT_PACKAGES += modem_ml_svc_sit
+
+ifeq (,$(filter aosp_%,$(TARGET_PRODUCT)))
+# Modem ML TFLite service.
+PRODUCT_PACKAGES += modemml-tflite-service \
+ libtensorflowlite_jni
+
+# Allow TFLite service modules to be installed to the system partition
+PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
+ system/etc/vintf/manifest/modemml_tflite_service.xml \
+ system/framework/modemml-tflite-service.jar \
+ system/framework/oat/arm64/modemml-tflite-service.odex \
+ system/framework/oat/arm64/modemml-tflite-service.vdex \
+ system/lib64/libtensorflowlite_jni.so
+
+PRODUCT_SYSTEM_SERVER_JARS += modemml-tflite-service
endif
+# modem ML models configs
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+PRODUCT_COPY_FILES += \
+ device/google/zumapro/modem_ml/modem_ml_nnapi_models_userdebug.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_models.conf \
+ device/google/zumapro/modem_ml/modem_ml_tflite_models_userdebug.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_tflite_models.conf
+else
+PRODUCT_COPY_FILES += \
+ device/google/zumapro/modem_ml/modem_ml_nnapi_models_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_models.conf \
+ device/google/zumapro/modem_ml/modem_ml_tflite_models_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_tflite_models.conf
+endif
+
+# modem logging binary/configs
+PRODUCT_PACKAGES += modem_logging_control
+
+# libeomservice_proxy binary/configs
+PRODUCT_PACKAGES += liboemservice_proxy_default
+
+# modem logging configs
+PRODUCT_PACKAGES += \
+ logging.conf \
+ default.cfg \
+ default.nprf \
+ default_metrics.xml \
+ Pixel_stability.cfg \
+ Pixel_stability.nprf \
+ extensive_logging.conf
+
+# Vendor modem extensive logging default property
+PRODUCT_PROPERTY_OVERRIDES += \
+ persist.vendor.modem.extensive_logging_enabled=false
+
+# Pixel Logger
+include hardware/google/pixel/PixelLogger/PixelLogger.mk
+
+# RIL extension service
+ifeq (,$(filter aosp_% factory_%,$(TARGET_PRODUCT)))
+include device/google/gs-common/pixel_ril/ril.mk
+endif
+
+# Use Lassen specifc Shared Modem Platform
+SHARED_MODEM_PLATFORM_VENDOR := lassen
+
+else # ifneq ($(BOARD_WITHOUT_RADIO),true)
+
+# Pixel Logger
+BOARD_SEPOLICY_DIRS += hardware/google/pixel-sepolicy/logger_app
+
+endif # ifneq ($(BOARD_WITHOUT_RADIO),true)
+
+# Shared Modem Platform
+include device/google/gs-common/modem/shared_modem_platform/shared_modem_platform.mk
+
# Use for GRIL
USES_LASSEN_MODEM := true
USE_WHI_GRIL_RECOVERY := true
@@ -230,6 +302,8 @@ USE_WHI_GRIL_RECOVERY := true
ifeq ($(USES_GOOGLE_DIALER_CARRIER_SETTINGS),true)
USE_GOOGLE_DIALER := true
USE_GOOGLE_CARRIER_SETTINGS := true
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.vendor.uses_google_dialer_carrier_settings=1
endif
ifeq ($(USES_GOOGLE_PREBUILT_MODEM_SVC),true)
@@ -777,8 +851,6 @@ PRODUCT_PACKAGES += wpa_supplicant.conf
WIFI_PRIV_CMD_UPDATE_MBO_CELL_STATUS := enabled
-WIFI_BRCM_OPEN_SOURCE_MULTI_AKM := enabled
-
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_PACKAGES += wpa_cli
PRODUCT_PACKAGES += hostapd_cli
@@ -862,8 +934,6 @@ PRODUCT_SOONG_NAMESPACES += \
PRODUCT_PACKAGES += \
trusty_metricsd
-# TODO(b/272725898): Needs to check with owner later
-$(warning displaycolor_platform set to zuma on zumapro target)
$(call soong_config_set,google_displaycolor,displaycolor_platform,zuma)
PRODUCT_PACKAGES += \
android.hardware.composer.hwc3-service.pixel \
@@ -956,10 +1026,6 @@ USE_EARLY_SEND_DEVICE_INFO := true
#$(call inherit-product, vendor/google_devices/telephony/common/device-vendor.mk)
#$(call inherit-product, vendor/google_devices/zumapro/proprietary/device-vendor.mk)
-ifneq ($(BOARD_WITHOUT_RADIO),true)
-$(call inherit-product-if-exists, vendor/samsung_slsi/telephony/$(BOARD_USES_SHARED_VENDOR_TELEPHONY)/common/device-vendor.mk)
-endif
-
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit_only.mk)
#$(call inherit-product, hardware/google_devices/exynos5/exynos5.mk)
#$(call inherit-product-if-exists, hardware/google_devices/zumapro/zumapro.mk)
@@ -974,56 +1040,6 @@ PRODUCT_COPY_FILES += \
device/google/zumapro/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml \
frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \
-ifneq ($(BOARD_WITHOUT_RADIO),true)
-# modem_ml_svc_sit daemon
-PRODUCT_PACKAGES += modem_ml_svc_sit
-
-# Modem ML TFLite service.
-PRODUCT_PACKAGES += modemml-tflite-service \
- libtensorflowlite_jni
-
-# Allow TFLite service modules to be installed to the system partition
-PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
- system/etc/vintf/manifest/modemml_tflite_service.xml \
- system/framework/modemml-tflite-service.jar \
- system/framework/oat/arm64/modemml-tflite-service.odex \
- system/framework/oat/arm64/modemml-tflite-service.vdex \
- system/lib64/libtensorflowlite_jni.so
-
-PRODUCT_SYSTEM_SERVER_JARS += modemml-tflite-service
-
-# modem ML models configs
-ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
-PRODUCT_COPY_FILES += \
- device/google/zumapro/modem_ml/modem_ml_nnapi_models_userdebug.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_models.conf \
- device/google/zumapro/modem_ml/modem_ml_tflite_models_userdebug.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_tflite_models.conf
-else
-PRODUCT_COPY_FILES += \
- device/google/zumapro/modem_ml/modem_ml_nnapi_models_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_models.conf \
- device/google/zumapro/modem_ml/modem_ml_tflite_models_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem_ml_tflite_models.conf
-endif
-
-# modem logging binary/configs
-PRODUCT_PACKAGES += modem_logging_control
-
-# libeomservice_proxy binary/configs
-PRODUCT_PACKAGES += liboemservice_proxy_default
-
-# modem logging configs
-PRODUCT_PACKAGES += \
- logging.conf \
- default.cfg \
- default.nprf \
- default_metrics.xml \
- Pixel_stability.cfg \
- Pixel_stability.nprf \
- extensive_logging.conf
-
-# Vendor modem extensive logging default property
-PRODUCT_PROPERTY_OVERRIDES += \
- persist.vendor.modem.extensive_logging_enabled=false
-endif
-
# Vibrator Diag
PRODUCT_PACKAGES_DEBUG += \
diag-vibrator \
@@ -1161,13 +1177,6 @@ PRODUCT_PROPERTY_OVERRIDES += \
# Project
include hardware/google/pixel/common/pixel-common-device.mk
-# Pixel Logger
-ifneq ($(BOARD_WITHOUT_RADIO),true)
-include hardware/google/pixel/PixelLogger/PixelLogger.mk
-else
-BOARD_SEPOLICY_DIRS += hardware/google/pixel-sepolicy/logger_app
-endif
-
# RadioExt Version
USES_RADIOEXT_V1_7 = true
@@ -1200,13 +1209,6 @@ include hardware/google/pixel/HardwareInfo/HardwareInfo.mk
# UFS: the script is used to select the corresponding firmware to run FFU.
PRODUCT_PACKAGES_DEBUG += ufs_firmware_update.sh
-ifneq ($(BOARD_WITHOUT_RADIO),true)
-# RIL extension service
-ifeq (,$(filter aosp_% factory_%,$(TARGET_PRODUCT)))
-include device/google/gs-common/pixel_ril/ril.mk
-endif
-endif
-
SUPPORT_VENDOR_SATELLITE_SERVICE := true
# Telephony satellite geofence data file
@@ -1231,7 +1233,3 @@ PRODUCT_PROPERTY_OVERRIDES += \
# since it can't be overridden from /vendor.
PRODUCT_PRODUCT_PROPERTIES += \
dumpstate.strict_run=false
-
-# Shared Modem Platform
-SHARED_MODEM_PLATFORM_VENDOR := lassen
-include device/google/gs-common/modem/shared_modem_platform/shared_modem_platform.mk
diff --git a/device_framework_matrix_product.xml b/device_framework_matrix_product.xml
index 2aa37e9..59d5bf9 100644
--- a/device_framework_matrix_product.xml
+++ b/device_framework_matrix_product.xml
@@ -114,7 +114,7 @@
com.google.hardware.pixel.display
- 11-12
+ 12
IDisplay
default
diff --git a/dumpstate/dump_power.cpp b/dumpstate/dump_power.cpp
index e8989f0..a5b4253 100644
--- a/dumpstate/dump_power.cpp
+++ b/dumpstate/dump_power.cpp
@@ -776,6 +776,11 @@ void dumpMitigationDirs() {
};
const int eraseCnt[] = {6, 6, 4, 0};
const bool useTitleRow[] = {true, true, true, false};
+ const char *vimon_name = "vimon_buff";
+ const char delimiter = '\n';
+ const int vimon_len = strlen(vimon_name);
+ const double VIMON_VMULT = 7.8122e-5;
+ const double VIMON_IMULT = 7.8125e-4;
std::vector files;
std::string content;
@@ -783,6 +788,9 @@ void dumpMitigationDirs() {
std::string source;
std::string subModuleName;
std::string readout;
+ char *endptr;
+
+ bool vimon_found = false;
for (int i = 0; i < paramCount; i++) {
printTitle(titles[i]);
@@ -800,11 +808,40 @@ void dumpMitigationDirs() {
readout = android::base::Trim(content);
+ if (strncmp(file.c_str(), vimon_name, vimon_len) == 0)
+ vimon_found = true;
+
subModuleName = std::string(file);
subModuleName.erase(subModuleName.find(paramSuffix[i]), eraseCnt[i]);
if (useTitleRow[i]) {
printf("%s \t%s\n", subModuleName.c_str(), readout.c_str());
+ } else if (vimon_found) {
+
+ std::vector tokens;
+ std::istringstream tokenStream(readout);
+ std::string token;
+
+ while (std::getline(tokenStream, token, delimiter)) {
+ tokens.push_back(token);
+ }
+
+ bool oddEntry = true;
+ for (auto &hexval : tokens) {
+ int val = strtol(hexval.c_str(), &endptr, 16);
+ if (*endptr != '\0') {
+ printf("invalid vimon readout\n");
+ break;
+ }
+ if (oddEntry) {
+ int vbatt = int(1000 * (val * VIMON_VMULT));
+ printf("vimon vbatt: %d ", vbatt);
+ } else {
+ int ibatt = int(1000 * (val * VIMON_IMULT));
+ printf("ibatt: %d\n", ibatt);
+ }
+ oddEntry = !oddEntry;
+ }
} else {
printf("%s=%s\n", subModuleName.c_str(), readout.c_str());
}
diff --git a/pixelstats/service.cpp b/pixelstats/service.cpp
index dac4a48..e76a4d6 100644
--- a/pixelstats/service.cpp
+++ b/pixelstats/service.cpp
@@ -130,7 +130,8 @@ const struct SysfsCollector::SysfsPaths sysfs_paths = {
"/sys/devices/platform/exynos-drm/primary-panel/error_count_unknown",
"/sys/devices/platform/exynos-drm/secondary-panel/error_count_te",
"/sys/devices/platform/exynos-drm/secondary-panel/error_count_unknown",
- }
+ },
+ .SpeakerVersionPath = "/sys/devices/platform/audiometrics/speaker_version"
};
const struct UeventListener::UeventPaths ueventPaths = {
diff --git a/usb/usb/Android.bp b/usb/usb/Android.bp
index e70985c..20ba592 100644
--- a/usb/usb/Android.bp
+++ b/usb/usb/Android.bp
@@ -55,6 +55,7 @@ cc_binary {
"libbinder_ndk",
"libprotobuf-cpp-lite",
"server_configurable_flags",
+ "libaconfig_storage_read_api_cc",
],
static_libs: [
"libpixelusb-aidl",
diff --git a/usb/usb/Usb.cpp b/usb/usb/Usb.cpp
index 4bdd5ed..d8afb80 100644
--- a/usb/usb/Usb.cpp
+++ b/usb/usb/Usb.cpp
@@ -672,6 +672,11 @@ ScopedAStatus Usb::switchRole(const string& in_portName, const PortRole& in_role
fp = fopen(filename.c_str(), "w");
if (fp != NULL) {
int ret = fputs(convertRoletoString(in_role).c_str(), fp);
+ if (ret == EAGAIN) {
+ ALOGI("role switch busy, retry in %d ms", ROLE_SWAP_RETRY_MS);
+ std::this_thread::sleep_for(std::chrono::milliseconds(ROLE_SWAP_RETRY_MS));
+ ret = fputs(convertRoletoString(in_role).c_str(), fp);
+ }
fclose(fp);
if ((ret != EOF) && ReadFileToString(filename, &written)) {
written = Trim(written);
diff --git a/usb/usb/Usb.h b/usb/usb/Usb.h
index 96af846..8f0c3a0 100644
--- a/usb/usb/Usb.h
+++ b/usb/usb/Usb.h
@@ -80,6 +80,7 @@ constexpr char kGadgetName[] = "11210000.dwc3";
#define DISPLAYPORT_IRQ_HPD_COUNT_CHECK 3
#define DISPLAYPORT_POLL_WAIT_MS 100
+#define ROLE_SWAP_RETRY_MS 700
#define SVID_DISPLAYPORT "ff01"
#define SVID_THUNDERBOLT "8087"