1# 2# Copyright (C) 2020 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/raviole-kernel 18TARGET_BOARD_KERNEL_HEADERS := device/google/raviole-kernel/kernel-headers 19 20$(call inherit-product-if-exists, vendor/google_devices/raviole/prebuilts/device-vendor-raven.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/raven/proprietary/device-vendor.mk) 24$(call inherit-product-if-exists, vendor/google_devices/raviole/proprietary/raven/device-vendor-raven.mk) 25$(call inherit-product-if-exists, vendor/google/camera/devices/raviole/raven/device-vendor.mk) 26$(call inherit-product-if-exists, vendor/google_devices/raviole/proprietary/WallpapersRaven.mk) 27 28GOODIX_CONFIG_BUILD_VERSION := g6_trusty 29DEVICE_PACKAGE_OVERLAYS += device/google/raviole/raven/overlay 30 31include device/google/raviole/audio/raven/audio-tables.mk 32include device/google/gs101/device-shipping-common.mk 33include device/google/gs101/fingerprint/udfps_common.mk 34include device/google/gs101/telephony/pktrouter.mk 35include device/google/gs-common/bcmbt/bluetooth.mk 36include device/google/gs-common/touch/lsi/lsi.mk 37 38 39ifeq ($(filter factory_raven, $(TARGET_PRODUCT)),) 40include device/google/gs101/fingerprint/udfps_shipping.mk 41else 42include device/google/gs101/fingerprint/udfps_factory.mk 43endif 44 45ifeq ($(filter factory_raven, $(TARGET_PRODUCT)),) 46include device/google/raviole/uwb/uwb_calibration.mk 47endif 48 49include hardware/google/pixel/vibrator/cs40l25/device.mk 50 51# go/lyric-soong-variables 52$(call soong_config_set,lyric,camera_hardware,raven) 53$(call soong_config_set,lyric,tuning_product,raven) 54$(call soong_config_set,google3a_config,target_device,raven) 55 56PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.support_kernel_idle_timer=true 57PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.enable_frame_rate_override=true 58 59# Init files 60PRODUCT_COPY_FILES += \ 61 device/google/raviole/conf/init.raviole.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.raviole.rc \ 62 device/google/raviole/conf/init.raven.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.raven.rc 63 64# Recovery files 65PRODUCT_COPY_FILES += \ 66 device/google/gs101/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.raven.rc 67 68# insmod files 69PRODUCT_COPY_FILES += \ 70 device/google/raviole/init.insmod.raven.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/init.insmod.raven.cfg 71 72# Thermal Config 73PRODUCT_COPY_FILES += \ 74 device/google/raviole/thermal_info_config_raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ 75 device/google/raviole/thermal_info_config_charge_raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_charge.json 76 77# Power HAL config 78PRODUCT_COPY_FILES += \ 79 device/google/raviole/powerhint-raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json 80 81PRODUCT_PACKAGES += \ 82 UwbOverlayR4 83 84# Bluetooth 85PRODUCT_PRODUCT_PROPERTIES += \ 86 persist.bluetooth.a2dp_aac.vbr_supported=true \ 87 persist.bluetooth.firmware.selection=BCM.hcd 88 89# Bluetooth Tx power caps for raven 90PRODUCT_COPY_FILES += \ 91 device/google/raviole/bluetooth_power_limits_raven.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ 92 device/google/raviole/bluetooth_power_limits_raven_us.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv \ 93 device/google/raviole/bluetooth_power_limits_raven_eu.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \ 94 device/google/raviole/bluetooth_power_limits_raven_jp.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv 95 96# Bluetooth HAL 97PRODUCT_COPY_FILES += \ 98 device/google/raviole/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf 99 100# Bluetooth Hal Extension test tools 101PRODUCT_PACKAGES_DEBUG += \ 102 sar_test \ 103 hci_inject 104 105# userdebug specific 106ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 107# Bluetooth LE Audio Hardware offload 108PRODUCT_PRODUCT_PROPERTIES += \ 109 ro.bluetooth.leaudio_offload.supported=true \ 110 persist.bluetooth.leaudio_offload.disabled=true \ 111 persist.bluetooth.le_audio_test=false 112endif 113 114# MIPI Coex Configs 115PRODUCT_COPY_FILES += \ 116 device/google/raviole/radio/raven_camera_rear_tele_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_rear_tele_mipi_coex_table.csv 117 118# Camera 119PRODUCT_COPY_FILES += \ 120 device/google/raviole/media_profiles_raven.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml 121 122# Display Config 123PRODUCT_COPY_FILES += \ 124 device/google/raviole/raven/display_golden_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_cal0.pb \ 125 device/google/raviole/raven/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb 126 127#config of display brightness dimming 128PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.0.brightness.dimming.usage=1 129 130# NFC 131PRODUCT_COPY_FILES += \ 132 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \ 133 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \ 134 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ 135 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ 136 frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \ 137 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \ 138 device/google/raviole/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \ 139 device/google/raviole/nfc/libnfc-nci-raven.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf 140 141PRODUCT_PACKAGES += \ 142 NfcNci \ 143 Tag \ 144 android.hardware.nfc-service.st 145 146# SecureElement 147PRODUCT_PACKAGES += \ 148 android.hardware.secure_element@1.2-service-gto \ 149 android.hardware.secure_element@1.2-service-gto-ese2 150 151PRODUCT_COPY_FILES += \ 152 frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ 153 frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ 154 device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \ 155 device/google/raviole/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf 156 157DEVICE_MANIFEST_FILE += \ 158 device/google/raviole/nfc/manifest_se.xml 159 160 161# Vibrator HAL 162PRODUCT_PRODUCT_PROPERTIES +=\ 163 ro.vendor.vibrator.hal.long.frequency.shift=15 \ 164 ro.vendor.vibrator.hal.device.mass=0.21 \ 165 ro.vendor.vibrator.hal.loc.coeff=2.5 166 167ACTUATOR_MODEL := luxshare_ict_081545 168 169# Display LBE 170PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1 171 172# Media Performance Class 12 173PRODUCT_PROPERTY_OVERRIDES += ro.odm.build.media_performance_class=31 174 175# PowerStats HAL 176PRODUCT_SOONG_NAMESPACES += \ 177 device/google/raviole/powerstats/raven \ 178 device/google/raviole 179 180 181# userdebug specific 182ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 183 PRODUCT_COPY_FILES += \ 184 device/google/gs101/init.hardware.wlc.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.wlc.rc 185endif 186 187# Increment the SVN for any official public releases 188PRODUCT_VENDOR_PROPERTIES += \ 189 ro.vendor.build.svn=74 190 191# Set support hide display cutout feature 192PRODUCT_PRODUCT_PROPERTIES += \ 193 ro.support_hide_display_cutout=true 194 195# Hide cutout overlays 196PRODUCT_PACKAGES += \ 197 NoCutoutOverlay \ 198 AvoidAppsInCutoutOverlay 199 200# Android DeviceAsWebcam specific overlay 201PRODUCT_PACKAGES += \ 202 DeviceAsWebcamRaven 203 204# Fingerprint antispoof property 205PRODUCT_PRODUCT_PROPERTIES +=\ 206 persist.vendor.fingerprint.disable.fake.override=none 207 208# Fingerprint HAL 209PRODUCT_VENDOR_PROPERTIES += \ 210 persist.vendor.udfps.lhbm_controlled_in_hal_supported=true \ 211 persist.vendor.udfps.als_feed_forward_supported=true 212 213 214# Keyboard side padding in dp for portrait mode 215PRODUCT_PRODUCT_PROPERTIES += ro.com.google.ime.kb_pad_port_r=11 216PRODUCT_PRODUCT_PROPERTIES += ro.com.google.ime.kb_pad_port_l=11 217 218# DCK properties based on target 219PRODUCT_PROPERTY_OVERRIDES += \ 220 ro.gms.dck.eligible_wcc=3 \ 221 ro.gms.dck.se_capability=1 222 223# SKU specific RROs 224PRODUCT_PACKAGES += \ 225 SettingsOverlayGF5KQ \ 226 SettingsOverlayGLU0G \ 227 SettingsOverlayG8V0U 228 229# Trusty liboemcrypto.so 230PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts 231 232# Set support one-handed mode 233PRODUCT_PRODUCT_PROPERTIES += \ 234 ro.support_one_handed_mode=true 235 236# Enable camera exif model/make reporting 237PRODUCT_VENDOR_PROPERTIES += \ 238 persist.vendor.camera.exif_reveal_make_model=true 239 240# tetheroffload HAL 241PRODUCT_PACKAGES += \ 242 vendor.samsung_slsi.hardware.tetheroffload@1.1-service 243 244# Override default distortion output gain according to UX experiments 245PRODUCT_PRODUCT_PROPERTIES += \ 246 vendor.audio.hapticgenerator.distortion.output.gain=0.5 247 248# RKPD 249PRODUCT_PRODUCT_PROPERTIES += \ 250 remote_provisioning.enable_rkpd=true \ 251 remote_provisioning.hostname=remoteprovisioning.googleapis.com \ 252 253# Set zram size 254PRODUCT_VENDOR_PROPERTIES += \ 255 vendor.zram.size=3g 256 257# This device is shipped with 31 (Android S) 258PRODUCT_SHIPPING_API_LEVEL := 31 259 260# declare use of spatial audio 261PRODUCT_PROPERTY_OVERRIDES += \ 262 ro.audio.spatializer_enabled=true 263 264# optimize spatializer effect 265PRODUCT_PROPERTY_OVERRIDES += \ 266 audio.spatializer.effect.util_clamp_min=300 267 268PRODUCT_PACKAGES += \ 269 libspatialaudio 270 271# Device features 272PRODUCT_COPY_FILES += \ 273 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml 274 275# Display RRS default Config 276PRODUCT_DEFAULT_PROPERTY_OVERRIDES += persist.vendor.display.primary.boot_config=1440x3120@120 277 278# Bluetooth OPUS codec 279PRODUCT_PRODUCT_PROPERTIES += \ 280 persist.bluetooth.opus.enabled=true 281 282# Location 283ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 284 PRODUCT_COPY_FILES += \ 285 device/google/raviole/location/gps.xml.raven:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml 286else 287 PRODUCT_COPY_FILES += \ 288 device/google/raviole/location/gps_user.xml.raven:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml 289endif 290 291# Enable DeviceAsWebcam support 292PRODUCT_VENDOR_PROPERTIES += \ 293 ro.usb.uvc.enabled=true 294# Quick Start device-specific settings 295PRODUCT_PRODUCT_PROPERTIES += \ 296 ro.quick_start.oem_id=00e0 \ 297 ro.quick_start.device_id=raven 298