diff --git a/bluejay/BoardConfig.mk b/bluejay/BoardConfig.mk
index 09f98be..714c9c3 100644
--- a/bluejay/BoardConfig.mk
+++ b/bluejay/BoardConfig.mk
@@ -23,6 +23,8 @@ endif
RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_BLUEJAY_RADIO_DIR)
ifneq (,$(filter AP1%,$(RELEASE_PLATFORM_VERSION)))
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/24Q1
+else ifneq (,$(filter AP2%,$(RELEASE_PLATFORM_VERSION)))
+RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/24Q2
else
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/trunk
endif
diff --git a/bluejay/rro_overlays/NfcOverlay/Android.bp b/bluejay/rro_overlays/NfcOverlay/Android.bp
new file mode 100644
index 0000000..c38f6c9
--- /dev/null
+++ b/bluejay/rro_overlays/NfcOverlay/Android.bp
@@ -0,0 +1,9 @@
+package {
+ default_applicable_licenses: ["device_google_bluejay_license"],
+}
+
+runtime_resource_overlay {
+ name: "NfcOverlayBluejay",
+ sdk_version: "current",
+ product_specific: true
+}
diff --git a/bluejay/rro_overlays/NfcOverlay/AndroidManifest.xml b/bluejay/rro_overlays/NfcOverlay/AndroidManifest.xml
new file mode 100644
index 0000000..5241aa4
--- /dev/null
+++ b/bluejay/rro_overlays/NfcOverlay/AndroidManifest.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
diff --git a/bluejay/rro_overlays/NfcOverlay/OWNERS b/bluejay/rro_overlays/NfcOverlay/OWNERS
new file mode 100644
index 0000000..35e9713
--- /dev/null
+++ b/bluejay/rro_overlays/NfcOverlay/OWNERS
@@ -0,0 +1,2 @@
+# Bug component: 48448
+include platform/packages/apps/Nfc:/OWNERS
diff --git a/bluejay/rro_overlays/NfcOverlay/res/values/config.xml b/bluejay/rro_overlays/NfcOverlay/res/values/config.xml
new file mode 100644
index 0000000..5610991
--- /dev/null
+++ b/bluejay/rro_overlays/NfcOverlay/res/values/config.xml
@@ -0,0 +1,35 @@
+
+
+
+ false
+
+ - GB62Z
+ - G1AZG
+ - GX7AS
+ - GB17L
+
+ true
+
+ 70
+ 150
+ false
+
+ - 36
+
+
+ - 83
+
+
diff --git a/device-bluejay.mk b/device-bluejay.mk
index 71d9983..da89a1e 100644
--- a/device-bluejay.mk
+++ b/device-bluejay.mk
@@ -42,6 +42,8 @@ include device/google/gs-common/touch/stm/stm11.mk
GOODIX_CONFIG_BUILD_VERSION := g7_trusty
ifneq (,$(filter AP1%,$(RELEASE_PLATFORM_VERSION)))
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts/firmware/fingerprint/24Q1
+else ifneq (,$(filter AP2%,$(RELEASE_PLATFORM_VERSION)))
+PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts/firmware/fingerprint/24Q2
else
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts/firmware/fingerprint/trunk
endif
@@ -109,9 +111,10 @@ PRODUCT_COPY_FILES += \
device/google/bluejay/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
PRODUCT_PACKAGES += \
- NfcNci \
+ $(RELEASE_PACKAGE_NFC_STACK) \
Tag \
- android.hardware.nfc-service.st
+ android.hardware.nfc-service.st \
+ NfcOverlayBluejay
# SecureElement
PRODUCT_PACKAGES += \
@@ -132,7 +135,7 @@ PRODUCT_SOONG_NAMESPACES += \
# Increment the SVN for any official public releases
PRODUCT_VENDOR_PROPERTIES += \
- ro.vendor.build.svn=53
+ ro.vendor.build.svn=54
# DCK properties based on target
PRODUCT_PROPERTY_OVERRIDES += \
@@ -143,6 +146,8 @@ PRODUCT_PROPERTY_OVERRIDES += \
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts
ifneq (,$(filter AP1%,$(RELEASE_PLATFORM_VERSION)))
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts/trusty/24Q1
+else ifneq (,$(filter AP2%,$(RELEASE_PLATFORM_VERSION)))
+PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts/trusty/24Q2
else
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts/trusty/trunk
endif
diff --git a/powerhint.json b/powerhint.json
index eb913e8..6dc9ebc 100644
--- a/powerhint.json
+++ b/powerhint.json
@@ -46,6 +46,16 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "CPULittleClusterDownRateLimitUs",
+ "Path": "/sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/down_rate_limit_us",
+ "Values": [
+ "5000",
+ "500"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
+ },
{
"Name": "CPUMidClusterMaxFreq",
"Path": "/sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq",
@@ -73,6 +83,16 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "CPUMidClusterDownRateLimitUs",
+ "Path": "/sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us",
+ "Values": [
+ "20000",
+ "3000"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
+ },
{
"Name": "CPUBigClusterMaxFreq",
"Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq",
@@ -100,6 +120,16 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "CPUBigClusterDownRateLimitUs",
+ "Path": "/sys/devices/system/cpu/cpu6/cpufreq/sched_pixel/down_rate_limit_us",
+ "Values": [
+ "20000",
+ "3000"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
+ },
{
"Name": "GPUMinFreq",
"Path": "/sys/devices/platform/1c500000.mali/hint_min_freq",
@@ -135,11 +165,22 @@
"Path": "/proc/vendor_sched/dvfs_headroom",
"Values": [
"1280",
+ "1100",
"1100 1078 1024"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
+ {
+ "Name": "CPUTaperedDVFSHeadroomEnable",
+ "Path": "/proc/vendor_sched/tapered_dvfs_headroom_enable",
+ "Values": [
+ "0",
+ "1"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
+ },
{
"Name": "MIFTargetLoad",
"Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
@@ -547,6 +588,36 @@
"Duration": 5000,
"Value": "1"
},
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "CPUDVFSHeadroom",
+ "Duration": 5000,
+ "Value": "1280"
+ },
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "CPUTaperedDVFSHeadroomEnable",
+ "Duration": 5000,
+ "Value": "0"
+ },
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "CPULittleClusterDownRateLimitUs",
+ "Duration": 5000,
+ "Value": "5000"
+ },
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "CPUMidClusterDownRateLimitUs",
+ "Duration": 5000,
+ "Value": "20000"
+ },
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "CPUBigClusterDownRateLimitUs",
+ "Duration": 5000,
+ "Value": "20000"
+ },
{
"PowerHint": "LAUNCH",
"Node": "CPUBigClusterMaxFreq",
@@ -1537,6 +1608,36 @@
"Duration": 0,
"Value": "400000"
},
+ {
+ "PowerHint": "GAME",
+ "Node": "CPUDVFSHeadroom",
+ "Duration": 0,
+ "Value": "1100"
+ },
+ {
+ "PowerHint": "GAME",
+ "Node": "CPUTaperedDVFSHeadroomEnable",
+ "Duration": 0,
+ "Value": "1"
+ },
+ {
+ "PowerHint": "GAME",
+ "Node": "CPULittleClusterDownRateLimitUs",
+ "Duration": 0,
+ "Value": "500"
+ },
+ {
+ "PowerHint": "GAME",
+ "Node": "CPUMidClusterDownRateLimitUs",
+ "Duration": 0,
+ "Value": "3000"
+ },
+ {
+ "PowerHint": "GAME",
+ "Node": "CPUBigClusterDownRateLimitUs",
+ "Duration": 0,
+ "Value": "3000"
+ },
{
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT",
"Node": "PMU_POLL",