1# 2# Copyright 2016 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 17PRODUCT_HARDWARE := bramble 18 19ifeq ($(TARGET_PREBUILT_KERNEL),) 20 ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 21 LOCAL_KERNEL := device/google/redbull-kernel/Image.lz4 22 else 23 LOCAL_KERNEL := device/google/redbull-kernel/vintf/Image.lz4 24 endif 25else 26 LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL) 27endif 28 29PRODUCT_VENDOR_KERNEL_HEADERS := device/google/redbull-kernel/sm7250/kernel-headers 30 31include device/google/redbull/device-common.mk 32 33$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/compression_with_xor.mk) 34 35# LOCAL_PATH is device/google/redbull before this 36LOCAL_PATH := device/google/bramble 37 38PRODUCT_SOONG_NAMESPACES += \ 39 device/google/bramble 40 41DEVICE_PACKAGE_OVERLAYS += device/google/bramble/bramble/overlay 42 43# Audio XMLs for bramble 44 45PRODUCT_COPY_FILES += \ 46 $(LOCAL_PATH)/audio/mixer_paths_bolero_snd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_bolero_snd.xml \ 47 $(LOCAL_PATH)/audio/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \ 48 $(LOCAL_PATH)/audio/audio_platform_info_bolero_snd.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_bolero_snd.xml \ 49 $(LOCAL_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ 50 $(LOCAL_PATH)/audio/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \ 51 $(LOCAL_PATH)/audio/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \ 52 $(LOCAL_PATH)/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ 53 frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration_7_0.xml \ 54 frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration_7_0.xml \ 55 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml \ 56 frameworks/av/services/audiopolicy/config/hearing_aid_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/hearing_aid_audio_policy_configuration_7_0.xml \ 57 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ 58 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ 59 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ 60 device/google/bramble/displayconfig/display_id_4630946475097398401.xml:$(TARGET_COPY_OUT_VENDOR)/etc/displayconfig/display_id_4630946475097398401.xml 61 62# Audio ACDB data 63ifeq ($(wildcard vendor/google_cei/factory/prebuilt/ftm.mk),) 64PRODUCT_COPY_FILES += \ 65 $(LOCAL_PATH)/audio/acdbdata/Bluetooth_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/Bluetooth_cal.acdb \ 66 $(LOCAL_PATH)/audio/acdbdata/General_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/General_cal.acdb \ 67 $(LOCAL_PATH)/audio/acdbdata/Global_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/Global_cal.acdb \ 68 $(LOCAL_PATH)/audio/acdbdata/Handset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/Handset_cal.acdb \ 69 $(LOCAL_PATH)/audio/acdbdata/Hdmi_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/Hdmi_cal.acdb \ 70 $(LOCAL_PATH)/audio/acdbdata/Headset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/Headset_cal.acdb \ 71 $(LOCAL_PATH)/audio/acdbdata/Speaker_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/Speaker_cal.acdb \ 72 $(LOCAL_PATH)/audio/acdbdata/adsp_avs_config.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/adsp_avs_config.acdb 73 74# Audio ACDB workspace files for QACT 75ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 76PRODUCT_COPY_FILES += \ 77 $(LOCAL_PATH)/audio/acdbdata/workspaceFile.qwsp:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/workspaceFile.qwsp 78endif 79endif 80 81# B5 CS35L41 SPEAKER AMP 82PRODUCT_COPY_FILES += \ 83 $(LOCAL_PATH)/audio/cs35l41/cs35l41-dsp1-spk-cali.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-dsp1-spk-cali.bin \ 84 $(LOCAL_PATH)/audio/cs35l41/cs35l41-dsp1-spk-cali.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-dsp1-spk-cali.wmfw \ 85 $(LOCAL_PATH)/audio/cs35l41/R-cs35l41-dsp1-spk-cali.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/R-cs35l41-dsp1-spk-cali.bin \ 86 $(LOCAL_PATH)/audio/cs35l41/cs35l41-dsp1-spk-prot.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-dsp1-spk-prot.bin \ 87 $(LOCAL_PATH)/audio/cs35l41/cs35l41-dsp1-spk-prot.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-dsp1-spk-prot.wmfw \ 88 $(LOCAL_PATH)/audio/cs35l41/R-cs35l41-dsp1-spk-prot.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/R-cs35l41-dsp1-spk-prot.bin \ 89 $(LOCAL_PATH)/audio/cs35l41/cs35l41-dsp1-spk-diag.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-dsp1-spk-diag.bin \ 90 $(LOCAL_PATH)/audio/cs35l41/cs35l41-dsp1-spk-diag.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-dsp1-spk-diag.wmfw \ 91 $(LOCAL_PATH)/audio/cs35l41/R-cs35l41-dsp1-spk-diag.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/R-cs35l41-dsp1-spk-diag.bin 92 93# B5M CS35L41 SPEAKER AMP 94PRODUCT_COPY_FILES += \ 95 $(LOCAL_PATH)/audio/cs35l41/B5mmW/cs35l41-mmW-dsp1-spk-cali.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-mmW-dsp1-spk-cali.bin \ 96 $(LOCAL_PATH)/audio/cs35l41/B5mmW/cs35l41-mmW-dsp1-spk-cali.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-mmW-dsp1-spk-cali.wmfw \ 97 $(LOCAL_PATH)/audio/cs35l41/B5mmW/R-cs35l41-mmW-dsp1-spk-cali.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/R-cs35l41-mmW-dsp1-spk-cali.bin \ 98 $(LOCAL_PATH)/audio/cs35l41/B5mmW/cs35l41-mmW-dsp1-spk-prot.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-mmW-dsp1-spk-prot.bin \ 99 $(LOCAL_PATH)/audio/cs35l41/B5mmW/cs35l41-mmW-dsp1-spk-prot.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-mmW-dsp1-spk-prot.wmfw \ 100 $(LOCAL_PATH)/audio/cs35l41/B5mmW/R-cs35l41-mmW-dsp1-spk-prot.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/R-cs35l41-mmW-dsp1-spk-prot.bin \ 101 $(LOCAL_PATH)/audio/cs35l41/B5mmW/cs35l41-mmW-dsp1-spk-diag.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-mmW-dsp1-spk-diag.bin \ 102 $(LOCAL_PATH)/audio/cs35l41/B5mmW/cs35l41-mmW-dsp1-spk-diag.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs35l41-mmW-dsp1-spk-diag.wmfw \ 103 $(LOCAL_PATH)/audio/cs35l41/B5mmW/R-cs35l41-mmW-dsp1-spk-diag.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/R-cs35l41-mmW-dsp1-spk-diag.bin 104 105# Audio CS35L41 speaker calibration tool 106PRODUCT_PACKAGES_DEBUG += \ 107 crus_sp_cal 108 109ifeq ($(wildcard vendor/google_devices/bramble/proprietary/device-vendor-bramble.mk),) 110 BUILD_WITHOUT_VENDOR := true 111endif 112 113# USB HAL 114PRODUCT_PACKAGES += \ 115 android.hardware.usb-service.bramble 116PRODUCT_PACKAGES += \ 117 android.hardware.usb.gadget-service.bramble 118 119# Vibrator HAL 120PRODUCT_PACKAGES += \ 121 android.hardware.vibrator-service.bramble 122 123# DRV2624 Haptics Waveform 124PRODUCT_COPY_FILES += \ 125 device/google/bramble/vibrator/drv2624/drv2624.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/drv2624.bin 126 127# Vibrator HAL 128PRODUCT_PRODUCT_PROPERTIES +=\ 129 ro.vendor.vibrator.hal.config.dynamic=1 \ 130 ro.vendor.vibrator.hal.click.duration=7 \ 131 ro.vendor.vibrator.hal.tick.duration=7 \ 132 ro.vendor.vibrator.hal.heavyclick.duration=7 \ 133 ro.vendor.vibrator.hal.short.voltage=161 \ 134 ro.vendor.vibrator.hal.long.voltage=161 \ 135 ro.vendor.vibrator.hal.long.frequency.shift=10 \ 136 ro.vendor.vibrator.hal.steady.shape=1 \ 137 ro.vendor.vibrator.hal.lptrigger=0 138 139# Dumpstate HAL 140PRODUCT_PACKAGES += \ 141 android.hardware.dumpstate@1.1-service.bramble 142 143#per device 144PRODUCT_COPY_FILES += \ 145 $(LOCAL_PATH)/bramble/init.bramble.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.bramble.rc 146 147# insmod files 148PRODUCT_COPY_FILES += \ 149 $(LOCAL_PATH)/init.insmod.bramble.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/init.insmod.bramble.cfg 150 151# Recovery 152PRODUCT_COPY_FILES += \ 153 $(LOCAL_PATH)/init.recovery.device.rc:recovery/root/init.recovery.bramble.rc 154 155PRODUCT_PACKAGES += \ 156 sensors.$(PRODUCT_HARDWARE) \ 157 158# Thermal HAL config 159PRODUCT_COPY_FILES += \ 160 $(LOCAL_PATH)/thermal_info_config_$(PRODUCT_HARDWARE).json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ 161 162# GPS ANTENNA_INFO configuration file 163#PRODUCT_COPY_FILES += \ 164# $(LOCAL_PATH)/gnss_antenna_info.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss_antenna_info.conf 165 166# Audio effects 167PRODUCT_PACKAGES += \ 168 libqcomvoiceprocessingdescriptors 169 170# Fingerprint HIDL 171include device/google/bramble/fingerprint.mk 172 173# NFC 174PRODUCT_COPY_FILES += \ 175 device/google/bramble/nfc/libnfc-hal-st-G6QU3.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st-G6QU3.conf 176 177# Bluetooth Tx power caps for bramble 178PRODUCT_COPY_FILES += \ 179 $(LOCAL_PATH)/bluetooth_power_limits_bramble_ROW.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ 180 $(LOCAL_PATH)/bluetooth_power_limits_bramble_us.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv \ 181 $(LOCAL_PATH)/bluetooth_power_limits_bramble_eu.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \ 182 $(LOCAL_PATH)/bluetooth_power_limits_bramble_jp.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \ 183 $(LOCAL_PATH)/bluetooth_power_limits_bramble_mmwave_ROW.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G6QU3.csv \ 184 $(LOCAL_PATH)/bluetooth_power_limits_bramble_mmwave_ROW.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G6QU3_US.csv \ 185 $(LOCAL_PATH)/bluetooth_power_limits_bramble_mmwave_ROW.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G6QU3_EU.csv \ 186 $(LOCAL_PATH)/bluetooth_power_limits_bramble_mmwave_ROW.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G6QU3_JP.csv 187 188# SKU specific RROs 189PRODUCT_PACKAGES += \ 190 SettingsOverlayG025H \ 191 FrameworkOverlayG6QU3 \ 192 SettingsOverlayG025I \ 193 SettingsOverlayG6QU3 \ 194 SettingsOverlayG025E 195 196# Keyboard bottom padding in dp for portrait mode 197PRODUCT_PRODUCT_PROPERTIES += ro.com.google.ime.kb_pad_port_b=10 198 199# Set support hide display cutout feature 200PRODUCT_PRODUCT_PROPERTIES += \ 201 ro.support_hide_display_cutout=true 202 203PRODUCT_PACKAGES += \ 204 NoCutoutOverlay \ 205 AvoidAppsInCutoutOverlay 206