1# 2# Copyright (C) 2021 The Android Open-Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17TARGET_KERNEL_DIR ?= device/google/bluejay-kernel 18TARGET_BOARD_KERNEL_HEADERS := device/google/bluejay-kernel/kernel-headers 19 20$(call inherit-product-if-exists, vendor/google_devices/bluejay/prebuilts/device-vendor-bluejay.mk) 21$(call inherit-product-if-exists, vendor/google_devices/gs101/prebuilts/device-vendor.mk) 22$(call inherit-product-if-exists, vendor/google_devices/gs101/proprietary/device-vendor.mk) 23$(call inherit-product-if-exists, vendor/google_devices/bluejay/proprietary/device-vendor.mk) 24$(call inherit-product-if-exists, vendor/google_devices/bluejay/proprietary/bluejay/device-vendor-bluejay.mk) 25$(call inherit-product-if-exists, vendor/google_devices/bluejay/proprietary/WallpapersBluejay.mk) 26 27GOODIX_CONFIG_BUILD_VERSION := g7_trusty 28DEVICE_PACKAGE_OVERLAYS += device/google/bluejay/bluejay/overlay 29 30include device/google/gs101/fingerprint/extension/fingerprint.extension.mk 31include device/google/bluejay-sepolicy/bluejay-sepolicy.mk 32include device/google/bluejay/audio/bluejay/audio-tables.mk 33include device/google/gs101/device-shipping-common.mk 34include device/google/gs101/fingerprint/udfps_common.mk 35include device/google/gs101/telephony/pktrouter.mk 36include hardware/google/pixel/vibrator/cs40l26/device.mk 37include device/google/gs-common/bcmbt/bluetooth.mk 38include device/google/gs-common/touch/stm/stm11.mk 39 40ifeq ($(filter factory_bluejay, $(TARGET_PRODUCT)),) 41include device/google/gs101/fingerprint/udfps_shipping.mk 42else 43include device/google/gs101/fingerprint/udfps_factory.mk 44endif 45 46# go/lyric-soong-variables 47$(call soong_config_set,lyric,camera_hardware,bluejay) 48$(call soong_config_set,lyric,tuning_product,bluejay) 49$(call soong_config_set,google3a_config,target_device,bluejay) 50 51# Init files 52PRODUCT_COPY_FILES += \ 53 device/google/bluejay/conf/init.blueport.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.blueport.rc \ 54 device/google/bluejay/conf/init.bluejay.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.bluejay.rc 55 56# Recovery files 57PRODUCT_COPY_FILES += \ 58 device/google/gs101/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.bluejay.rc 59 60# insmod files 61PRODUCT_COPY_FILES += \ 62 device/google/bluejay/init.insmod.bluejay.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/init.insmod.bluejay.cfg 63 64# Thermal Config 65PRODUCT_COPY_FILES += \ 66 device/google/bluejay/thermal_info_config_bluejay.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ 67 device/google/bluejay/thermal_info_config_charge_bluejay.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_charge.json 68 69# Power HAL config 70PRODUCT_COPY_FILES += \ 71 device/google/bluejay/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json 72 73# Camera 74PRODUCT_COPY_FILES += \ 75 device/google/bluejay/media_profiles_bluejay.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml 76 77PRODUCT_PROPERTY_OVERRIDES += \ 78 persist.vendor.camera.extended_launch_boost=1 \ 79 persist.vendor.camera.raise_buf_allocation_priority=1 \ 80 persist.vendor.camera.fixed_fps_range_boost=1 81 82# Display Config 83PRODUCT_COPY_FILES += \ 84 device/google/bluejay/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb \ 85 device/google/bluejay/display_golden_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_cal0.pb 86 87# Media Performance Class 12 88PRODUCT_PROPERTY_OVERRIDES += ro.odm.build.media_performance_class=31 89 90# NFC 91PRODUCT_COPY_FILES += \ 92 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \ 93 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \ 94 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ 95 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ 96 frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \ 97 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \ 98 device/google/bluejay/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \ 99 device/google/bluejay/nfc/libnfc-hal-st-GB17L.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st-GB17L.conf \ 100 device/google/bluejay/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf 101 102PRODUCT_PACKAGES += \ 103 NfcNci \ 104 Tag \ 105 android.hardware.nfc-service.st 106 107# SecureElement 108PRODUCT_PACKAGES += \ 109 android.hardware.secure_element@1.2-service-gto 110 111PRODUCT_COPY_FILES += \ 112 frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ 113 frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ 114 device/google/bluejay/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf 115 116DEVICE_MANIFEST_FILE += \ 117 device/google/bluejay/nfc/manifest_se_bluejay.xml 118 119# PowerStats HAL 120PRODUCT_SOONG_NAMESPACES += \ 121 device/google/bluejay/powerstats/bluejay \ 122 device/google/bluejay 123 124# Increment the SVN for any official public releases 125PRODUCT_VENDOR_PROPERTIES += \ 126 ro.vendor.build.svn=53 127 128# DCK properties based on target 129PRODUCT_PROPERTY_OVERRIDES += \ 130 ro.gms.dck.eligible_wcc=2 \ 131 ro.gms.dck.se_capability=1 132 133# Trusty liboemcrypto.so 134PRODUCT_SOONG_NAMESPACES += vendor/google_devices/bluejay/prebuilts 135 136# Display 137PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1 138PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_idle_timer_ms=0 139 140# Bluetooth Hal Extension test tools 141PRODUCT_PACKAGES_DEBUG += \ 142 sar_test \ 143 hci_inject 144 145# Config of primary display frames to reach LHBM peak brightness 146PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.primarydisplay.lhbm.frames_to_reach_peak_brightness=2 147 148# Bluetooth Tx power caps for bluejay 149PRODUCT_COPY_FILES += \ 150 $(LOCAL_PATH)/bluetooth_power_limits.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ 151 $(LOCAL_PATH)/bluetooth_power_limits_GB17L_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \ 152 $(LOCAL_PATH)/bluetooth_power_limits_GX7AS_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_CA.csv \ 153 $(LOCAL_PATH)/bluetooth_power_limits_GB62Z_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GB62Z_US.csv \ 154 $(LOCAL_PATH)/bluetooth_power_limits_GX7AS_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GX7AS_US.csv \ 155 $(LOCAL_PATH)/bluetooth_power_limits_G1AZG_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G1AZG_EU.csv \ 156 $(LOCAL_PATH)/bluetooth_power_limits_GB62Z_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GB62Z_EU.csv 157 158# Bluetooth 159PRODUCT_PRODUCT_PROPERTIES += \ 160 persist.bluetooth.a2dp_aac.vbr_supported=true \ 161 persist.bluetooth.firmware.selection=BCM.hcd 162 163# Set zram size 164PRODUCT_VENDOR_PROPERTIES += \ 165 vendor.zram.size=3g 166 167# Enable camera 1080P 60FPS binning mode 168PRODUCT_VENDOR_PROPERTIES += \ 169 persist.vendor.camera.1080P_60fps_binning=true 170 171# Enable camera exif model/make reporting 172PRODUCT_VENDOR_PROPERTIES += \ 173 persist.vendor.camera.exif_reveal_make_model=true 174 175# Disable rear light sensor probing explicitly 176PRODUCT_VENDOR_PROPERTIES += \ 177 persist.vendor.camera.rls_supported=false 178 179# Fingerprint antispoof property 180PRODUCT_PRODUCT_PROPERTIES +=\ 181 persist.vendor.fingerprint.disable.fake.override=none 182 183# Fingerprint als feed forward 184PRODUCT_VENDOR_PROPERTIES += \ 185 persist.vendor.udfps.als_feed_forward_supported=true \ 186 persist.vendor.udfps.lhbm_controlled_in_hal_supported=true 187 188# Fingerprint MAX auth latency 189PRODUCT_VENDOR_PROPERTIES += \ 190 vendor.gf.debug.timer.threshold=1,400,400,400,600,600,600 191 192# Hide cutout overlays 193PRODUCT_PACKAGES += \ 194 NoCutoutOverlay \ 195 AvoidAppsInCutoutOverlay 196 197# SKU specific RROs 198PRODUCT_PACKAGES += \ 199 SettingsOverlayGB17L \ 200 SettingsOverlayG1AZG \ 201 SettingsOverlayGB62Z \ 202 SettingsOverlayGX7AS 203 204# Set support hide display cutout feature 205PRODUCT_PRODUCT_PROPERTIES += \ 206 ro.support_hide_display_cutout=true 207 208# Set support one-handed mode 209PRODUCT_PRODUCT_PROPERTIES += \ 210 ro.support_one_handed_mode=true 211 212# GPS xml 213ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 214 PRODUCT_COPY_FILES += \ 215 device/google/bluejay/gps.xml.b3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml 216else 217 PRODUCT_COPY_FILES += \ 218 device/google/bluejay/gps_user.xml.b3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml 219endif 220 221# This device is shipped with 32 (Android S V2) 222PRODUCT_SHIPPING_API_LEVEL := 32 223 224# Vibrator HAL 225ADAPTIVE_HAPTICS_FEATURE := adaptive_haptics_v1 226PRODUCT_VENDOR_PROPERTIES += \ 227 ro.vendor.vibrator.hal.supported_primitives=243 \ 228 ro.vendor.vibrator.hal.f0.comp.enabled=0 \ 229 ro.vendor.vibrator.hal.redc.comp.enabled=0 \ 230 persist.vendor.vibrator.hal.context.enable=false \ 231 persist.vendor.vibrator.hal.context.scale=40 \ 232 persist.vendor.vibrator.hal.context.fade=true \ 233 persist.vendor.vibrator.hal.context.cooldowntime=1600 \ 234 persist.vendor.vibrator.hal.context.settlingtime=5000 235 236# Device features 237PRODUCT_COPY_FILES += \ 238 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml 239 240# Keyboard bottom padding in dp for portrait mode and height ratio 241PRODUCT_PRODUCT_PROPERTIES += \ 242 ro.com.google.ime.kb_pad_port_b=6.4 \ 243 244PRODUCT_PRODUCT_PROPERTIES ?= \ 245 ro.com.google.ime.height_ratio=1.05 246 247# UFS: the script is used to select the corresponding firmware to run FFU. 248PRODUCT_PACKAGES += ufs_firmware_update.sh 249 250# Enable DeviceAsWebcam support 251PRODUCT_VENDOR_PROPERTIES += \ 252 ro.usb.uvc.enabled=true 253 254# Quick Start device-specific settings 255PRODUCT_PRODUCT_PROPERTIES += \ 256 ro.quick_start.oem_id=00e0 \ 257 ro.quick_start.device_id=bluejay 258