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_RECOVERY_DEFAULT_ROTATION := ROTATION_LEFT
18
19TARGET_LINUX_KERNEL_VERSION := $(RELEASE_KERNEL_TANGORPRO_VERSION)
20# Keeps flexibility for kasan and ufs builds
21TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_TANGORPRO_DIR)
22TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_TANGORPRO_DIR)/kernel-headers
23
24BOARD_WITHOUT_RADIO := true
25
26$(call inherit-product-if-exists, vendor/google_devices/tangorpro/prebuilts/device-vendor-tangorpro.mk)
27$(call inherit-product-if-exists, vendor/google_devices/gs201/prebuilts/device-vendor.mk)
28$(call inherit-product-if-exists, vendor/google_devices/gs201/proprietary/device-vendor.mk)
29$(call inherit-product-if-exists, vendor/google_devices/tangorpro/proprietary/tangorpro/device-vendor-tangorpro.mk)
30$(call inherit-product-if-exists, vendor/google_devices/tangorpro/proprietary/WallpapersTangorpro.mk)
31$(call inherit-product-if-exists, vendor/google_devices/tangorpro/proprietary/device-vendor.mk)
32
33$(call inherit-product, device/google/tangorpro/uwb/uwb_calibration_country.mk)
34
35DEVICE_PACKAGE_OVERLAYS += device/google/tangorpro/tangorpro/overlay
36PRODUCT_SOONG_NAMESPACES += device/google/tangorpro
37PRODUCT_PACKAGES += \
38        UwbOverlayT6pro \
39        WifiOverlayT6pro
40
41# Disable camera flash and autofocus related xml with a disable flag.
42# This flag need to be set before device/google/gs201/device.mk
43DISABLE_CAMERA_FS_AF := true
44
45# Disable baro, prox, hifi sensor related xml with a disable flag.
46DISABLE_SENSOR_BARO_PROX_HIFI := true
47
48# Identify the device type.
49# This flag need to be set before device/google/gs201/device.mk
50# to have tablet COD setting
51USE_TABLET_BT_COD := true
52
53# Disable telephony euicc related xml with a disable flag.
54# This flag need to be set before device/google/gs201/device.mk
55DISABLE_TELEPHONY_EUICC := true
56
57include device/google/tangorpro/audio/tangorpro/audio-tables.mk
58include device/google/gs201/device-shipping-common.mk
59include device/google/gs-common/touch/gti/gti.mk
60include device/google/gs-common/touch/nvt/nvt.mk
61include device/google/gs-common/led/led.mk
62include device/google/gs-common/wlan/dump.mk
63
64# go/lyric-soong-variables
65$(call soong_config_set,lyric,camera_hardware,tangorpro)
66$(call soong_config_set,lyric,tuning_product,tangorpro)
67$(call soong_config_set,google3a_config,target_device,tangorpro)
68
69ifeq ($(filter factory_tangorpro, $(TARGET_PRODUCT)),)
70include device/google/tangorpro/uwb/uwb_calibration.mk
71endif
72
73# Preopt SystemUI
74PRODUCT_DEXPREOPT_SPEED_APPS += SystemUITitan  # For tablet
75
76# Touch files
77PRODUCT_COPY_FILES += \
78        device/google/tangorpro/NVTCapacitiveTouchScreen.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/NVTCapacitiveTouchScreen.idc \
79        device/google/tangorpro/NVTCapacitivePen.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/NVTCapacitivePen.idc \
80        device/google/tangorpro/USI_Stylus.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/USI_Stylus.idc
81
82# Init files
83PRODUCT_COPY_FILES += \
84	device/google/tangorpro/conf/init.tangorpro.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.tangorpro.rc
85
86# Recovery files
87PRODUCT_COPY_FILES += \
88        device/google/tangorpro/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.tangorpro.rc
89
90# insmod files
91PRODUCT_COPY_FILES += \
92	device/google/tangorpro/init.insmod.tangorpro.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/init.insmod.tangorpro.cfg
93
94# Camera
95PRODUCT_COPY_FILES += \
96	device/google/tangorpro/media_profiles_tangorpro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml
97
98# Thermal Config
99PRODUCT_COPY_FILES += \
100	device/google/tangorpro/thermal_info_config_tangorpro.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \
101	device/google/tangorpro/thermal_info_config_charge_tangorpro.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_charge.json \
102
103# Power HAL config
104PRODUCT_COPY_FILES += \
105	device/google/tangorpro/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
106
107# PowerStats HAL
108PRODUCT_SOONG_NAMESPACES += device/google/tangorpro/powerstats
109
110# Bluetooth HAL and Pixel extension
111include device/google/tangorpro/bluetooth/syna_default.mk
112
113# Spatial Audio
114PRODUCT_PACKAGES += \
115	libspatialaudio
116
117# optimize spatializer effect
118PRODUCT_PROPERTY_OVERRIDES += \
119	audio.spatializer.effect.util_clamp_min=300
120
121# declare use of spatial audio
122PRODUCT_PROPERTY_OVERRIDES += \
123	ro.audio.spatializer_enabled=true \
124	persist.vendor.audio.spatializer.speaker_enabled=true
125
126# Bluetooth OPUS codec
127PRODUCT_PRODUCT_PROPERTIES += \
128	persist.bluetooth.opus.enabled=true
129
130# Enable Bluetooth AutoOn feature
131PRODUCT_PRODUCT_PROPERTIES += \
132    bluetooth.server.automatic_turn_on=true
133
134# Keymaster HAL
135#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service
136
137# Gatekeeper HAL
138#LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= android.hardware.gatekeeper@1.0-service.software
139
140
141# Gatekeeper
142# PRODUCT_PACKAGES += \
143# 	android.hardware.gatekeeper@1.0-service.software
144
145# Keymint replaces Keymaster
146# PRODUCT_PACKAGES += \
147# 	android.hardware.security.keymint-service
148
149# Keymaster
150#PRODUCT_PACKAGES += \
151#	android.hardware.keymaster@4.0-impl \
152#	android.hardware.keymaster@4.0-service
153
154#PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.remote
155#PRODUCT_PACKAGES += android.hardware.keymaster@4.1-service.remote
156#LOCAL_KEYMASTER_PRODUCT_PACKAGE := android.hardware.keymaster@4.1-service
157#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service
158
159# PRODUCT_PROPERTY_OVERRIDES += \
160# 	ro.hardware.keystore_desede=true \
161# 	ro.hardware.keystore=software \
162# 	ro.hardware.gatekeeper=software
163
164# Fingerprint
165include device/google/gs101/fingerprint/fpc1540/sw42/fpc1540.mk
166FPC_MODULE_TYPE=1542_S
167$(call soong_config_set,fp_hal_feature,pixel_product, product_b)
168# Fingerprint config
169include device/google/tangorpro/fingerprint_config.mk
170
171# Trusty liboemcrypto.so
172PRODUCT_SOONG_NAMESPACES += vendor/google_devices/tangorpro/prebuilts
173
174# Wifi SAP Interface Name
175PRODUCT_PROPERTY_OVERRIDES += \
176    ro.vendor.wifi.sap.interface=wlan1
177
178# Assistant minimum volume
179PRODUCT_PROPERTY_OVERRIDES += \
180    ro.config.assistant_vol_min=1
181
182# Temporary override to synchronise changes in pa/ and ag/. See b/246793311 for context.
183PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.primary_display_orientation=ORIENTATION_0
184PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.ignore_hwc_physical_display_orientation=true
185
186# Set boot animation orientation and default display rotation to be landscape since Tangor
187# natural orientation is portrait. Id at the end corresponds to the display id on the device.
188# See b/246793311 for context.
189PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.bootanim.set_orientation_4619827677550801152=ORIENTATION_270
190
191# Display white balance
192PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
193        ro.surface_flinger.display_primary_red=0.5128,0.2413,0.0000 \
194        ro.surface_flinger.display_primary_green=0.2598,0.6764,0.0441 \
195        ro.surface_flinger.display_primary_blue=0.2057,0.0823,1.0832 \
196        ro.surface_flinger.display_primary_white=0.9783,1.0000,1.1273
197
198# Enable Telecom feature
199# b/227692870
200PRODUCT_COPY_FILES += \
201	frameworks/native/data/etc/android.software.telecom.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.telecom.xml
202
203# Trusty libbinder_trusty_paidl.so and libcast_auth.so
204PRODUCT_SOONG_NAMESPACES += \
205        vendor/google/trusty/common
206
207# Cast auth
208PRODUCT_COPY_FILES += \
209        device/google/tangorpro/cast_auth/tangor_ica.crt:$(TARGET_COPY_OUT_VENDOR)/etc/cert-chain.crt
210
211PRODUCT_PACKAGES += \
212        libcast_auth
213
214PRODUCT_PACKAGES_DEBUG += \
215        test_cast_auth
216
217# USI stylus test tool
218PRODUCT_PACKAGES_DEBUG += \
219        usi_test
220
221# Lights HAL
222PRODUCT_PACKAGES += \
223    android.hardware.lights-service.tangorpro
224
225# LED Golden Config
226PRODUCT_COPY_FILES += \
227        device/google/tangorpro/lights/led_golden_calibration_LUT_white_CG.txt:$(TARGET_COPY_OUT_VENDOR)/etc/led_golden_calibration_LUT_white_CG.txt \
228        device/google/tangorpro/lights/led_golden_calibration_LUT_black_CG.txt:$(TARGET_COPY_OUT_VENDOR)/etc/led_golden_calibration_LUT_black_CG.txt
229
230# Device features
231PRODUCT_COPY_FILES += \
232    frameworks/native/data/etc/tablet_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/tablet_core_hardware.xml
233
234# Display Config
235PRODUCT_COPY_FILES += \
236        device/google/tangorpro/tangorpro/display_golden_boe-ts110f5mlg0-rt4_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_boe-ts110f5mlg0-rt4_cal0.pb \
237        device/google/tangorpro/tangorpro/display_golden_csot-ppa957db2d-rt4_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_csot-ppa957db2d-rt4_cal0.pb
238
239# Enable HWC dynamic recomposition for display with index 0
240PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.dynamic_recomposition=1
241
242# Display LBE
243PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1
244
245# Display CABC
246PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.cabc.supported?=1
247
248# Set zram size
249PRODUCT_VENDOR_PROPERTIES += \
250    vendor.zram.size=3g
251
252# Increase thread priority for nodes stop
253PRODUCT_VENDOR_PROPERTIES += \
254    persist.vendor.camera.increase_thread_priority_nodes_stop=true \
255    persist.vendor.camera.debug.bypass_csi_link_crc_error=true
256
257# Trusty libbinder_trusty_paidl.so and libcast_auth.so
258PRODUCT_SOONG_NAMESPACES += \
259	vendor/lib64
260
261# CastKey Drm plugin modules
262PRODUCT_PACKAGES += \
263	android.hardware.drm-service.castkey
264
265# MIPI Coex Configs
266PRODUCT_COPY_FILES += \
267    device/google/tangorpro/radio/tangor_camera_front_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_mipi_coex_table.csv \
268    device/google/tangorpro/radio/tangor_camera_rear_main_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_rear_main_mipi_coex_table.csv
269
270# Cast ssid suffix go/gna-oem-device-support
271PRODUCT_PRODUCT_PROPERTIES += ro.odm.cast.ssid_suffix=ynn
272
273# Camera
274PRODUCT_PROPERTY_OVERRIDES += \
275    persist.vendor.camera.adjust_backend_min_freq_for_1p_front_video_1080p_30fps=1 \
276    persist.vendor.camera.bypass_sensor_binning_resolution_condition=1 \
277    persist.vendor.camera.extended_launch_boost=1 \
278    persist.vendor.camera.raise_buf_allocation_priority=1 \
279    camera.enable_landscape_to_portrait=true
280
281# Enable camera exif model/make reporting
282PRODUCT_VENDOR_PROPERTIES += \
283    persist.vendor.camera.exif_reveal_make_model=true
284
285# Audio
286PRODUCT_PROPERTY_OVERRIDES += \
287    ro.audio.multi_usb_mode=true
288
289# Audio package
290PRODUCT_PACKAGES += \
291    audio_apmg3_aoc
292
293PRODUCT_SOONG_NAMESPACES += device/google/tangorpro/audio/tangorpro/prebuilt/libspeechenhancer
294
295#Audio
296PRODUCT_PROPERTY_OVERRIDES += \
297    persist.vendor.audio.speech_enhancement.enable=1
298
299PRODUCT_PACKAGES += \
300    libspeechenhancer \
301    audio_speech_enhancer_aoc
302
303# SKU specific RROs
304PRODUCT_PACKAGES += \
305    SettingsOverlayGTU8P
306