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
17SHIPPING_API_LEVEL := 34
18
19ifdef RELEASE_GOOGLE_RIPCURRENTPRO_RADIO_DIR
20RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_RIPCURRENTPRO_RADIO_DIR)
21endif
22ifdef RELEASE_GOOGLE_RIPCURRENTPRO_RADIOCFG_DIR
23RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_RIPCURRENTPRO_RADIOCFG_DIR)
24endif
25RELEASE_GOOGLE_BOOTLOADER_RIPCURRENTPRO_DIR ?= 24D1# Keep this for pdk TODO: b/327119000
26RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/$(RELEASE_GOOGLE_BOOTLOADER_RIPCURRENTPRO_DIR)
27$(call soong_config_set,caimito_bootloader,prebuilt_dir,$(RELEASE_GOOGLE_BOOTLOADER_RIPCURRENTPRO_DIR))
28
29ifdef RELEASE_KERNEL_RIPCURRENTPRO_DIR
30TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_RIPCURRENTPRO_DIR)
31TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_RIPCURRENTPRO_DIR)/kernel-headers
32else
33TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24D1
34TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24D1/kernel-headers
35endif
36
37USE_SWIFTSHADER := false
38BOARD_USES_SWIFTSHADER := false
39
40$(call inherit-product-if-exists, vendor/google_devices/caimito/prebuilts/device-vendor-ripcurrentpro.mk)
41$(call inherit-product-if-exists, vendor/google_devices/zumapro/prebuilts/device-vendor.mk)
42$(call inherit-product-if-exists, vendor/google_devices/zumapro/proprietary/device-vendor.mk)
43$(call inherit-product-if-exists, vendor/google_devices/caimito/proprietary/ripcurrentpro/device-vendor-ripcurrentpro.mk)
44$(call inherit-product-if-exists, vendor/qorvo/uwb/qm35-hal/Device.mk)
45
46include device/google/caimito/audio/ripcurrentpro/audio-tables.mk
47include device/google/zumapro/device-shipping-common.mk
48include device/google/gs-common/bcmbt/bluetooth.mk
49include device/google/gs-common/touch/stm/stm20.mk
50include device/google/caimito/fingerprint/ultrasonic_udfps.mk
51include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk
52
53# go/lyric-soong-variables
54$(call soong_config_set,lyric,camera_hardware,ripcurrentpro)
55$(call soong_config_set,lyric,tuning_product,ripcurrentpro)
56$(warning target_device set to zuma on zumapro target)
57$(call soong_config_set,google3a_config,target_device,ripcurrent)
58
59# display
60DEVICE_PACKAGE_OVERLAYS += device/google/caimito/ripcurrentpro/overlay
61
62# Init files
63PRODUCT_COPY_FILES += \
64	device/google/caimito/conf/init.ripcurrentpro.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.ripcurrentpro.rc
65
66# Recovery files
67PRODUCT_COPY_FILES += \
68        device/google/caimito/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.ripcurrentpro.rc
69
70# NFC
71PRODUCT_COPY_FILES += \
72	frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
73	frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
74	frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
75	frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
76	frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
77	device/google/caimito/nfc/libnfc-hal-st-disable.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
78	device/google/caimito/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st-enable.conf \
79	device/google/caimito/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
80
81PRODUCT_PACKAGES += \
82	$(RELEASE_PACKAGE_NFC_STACK) \
83	Tag \
84	android.hardware.nfc-service.st
85
86# SecureElement
87PRODUCT_PACKAGES += \
88	android.hardware.secure_element-service.thales
89
90PRODUCT_COPY_FILES += \
91	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
92	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
93	device/google/caimito/nfc/libse-gto-hal-disable.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
94
95# Bluetooth HAL
96PRODUCT_COPY_FILES += \
97	device/google/caimito/bluetooth/bt_vendor_overlay_ripcurrentpro.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
98PRODUCT_PROPERTY_OVERRIDES += \
99    ro.bluetooth.a2dp_offload.supported=true \
100    persist.bluetooth.a2dp_offload.disabled=false \
101    persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-opus
102
103# POF
104PRODUCT_PRODUCT_PROPERTIES += \
105    ro.bluetooth.finder.supported=true
106
107# Spatial Audio
108PRODUCT_PACKAGES += \
109	libspatialaudio
110
111# declare use of spatial audio
112PRODUCT_PROPERTY_OVERRIDES += \
113       ro.audio.spatializer_enabled=true
114
115# Bluetooth hci_inject test tool
116PRODUCT_PACKAGES_DEBUG += \
117    hci_inject
118
119# Bluetooth OPUS codec
120PRODUCT_PRODUCT_PROPERTIES += \
121    persist.bluetooth.opus.enabled=true
122
123# Bluetooth SAR test tool
124PRODUCT_PACKAGES_DEBUG += \
125    sar_test
126
127# Bluetooth EWP test tool
128PRODUCT_PACKAGES_DEBUG += \
129    ewp_tool
130
131# Bluetooth AAC VBR
132PRODUCT_PRODUCT_PROPERTIES += \
133    persist.bluetooth.a2dp_aac.vbr_supported=true
134
135# Override BQR mask to enable LE Audio Choppy report, remove BTRT logging
136ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
137PRODUCT_PRODUCT_PROPERTIES += \
138    persist.bluetooth.bqr.event_mask=262238
139else
140PRODUCT_PRODUCT_PROPERTIES += \
141    persist.bluetooth.bqr.event_mask=94
142endif
143
144# default BDADDR for EVB only
145PRODUCT_PROPERTY_OVERRIDES += \
146	ro.vendor.bluetooth.evb_bdaddr="22:22:22:33:44:55"
147
148# Spatial Audio
149PRODUCT_PACKAGES += \
150	libspatialaudio \
151	librondo
152
153# Bluetooth LE Audio
154PRODUCT_PRODUCT_PROPERTIES += \
155	ro.bluetooth.leaudio_switcher.supported=true \
156	bluetooth.profile.bap.unicast.client.enabled=true \
157	bluetooth.profile.csip.set_coordinator.enabled=true \
158	bluetooth.profile.hap.client.enabled=true \
159	bluetooth.profile.mcp.server.enabled=true \
160	bluetooth.profile.ccp.server.enabled=true \
161	bluetooth.profile.vcp.controller.enabled=true
162
163ifeq ($(RELEASE_PIXEL_BROADCAST_ENABLED), true)
164PRODUCT_PRODUCT_PROPERTIES += \
165	bluetooth.profile.bap.broadcast.assist.enabled=true \
166	bluetooth.profile.bap.broadcast.source.enabled=true
167endif
168
169# Bluetooth LE Audio enable hardware offloading
170PRODUCT_PRODUCT_PROPERTIES += \
171	ro.bluetooth.leaudio_offload.supported=true \
172	persist.bluetooth.leaudio_offload.disabled=false \
173
174# Bluetooth LE Auido offload capabilities setting
175PRODUCT_COPY_FILES += \
176	device/google/caimito/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
177
178# Keymaster HAL
179#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected]
180
181# Gatekeeper HAL
182#LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= [email protected]
183
184
185# Gatekeeper
186# PRODUCT_PACKAGES += \
187# 	[email protected]
188
189# Keymint replaces Keymaster
190# PRODUCT_PACKAGES += \
191# 	android.hardware.security.keymint-service
192
193# Keymaster
194#PRODUCT_PACKAGES += \
195#	[email protected] \
196#	[email protected]
197
198#PRODUCT_PACKAGES += [email protected]
199#PRODUCT_PACKAGES += [email protected]
200#LOCAL_KEYMASTER_PRODUCT_PACKAGE := [email protected]
201#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected]
202
203# PRODUCT_PROPERTY_OVERRIDES += \
204# 	ro.hardware.keystore_desede=true \
205# 	ro.hardware.keystore=software \
206# 	ro.hardware.gatekeeper=software
207
208# PowerStats HAL
209PRODUCT_SOONG_NAMESPACES += \
210    device/google/caimito/powerstats/ripcurrentpro
211
212# WiFi Overlay
213PRODUCT_PACKAGES += \
214    WifiOverlay2024
215
216# Trusty liboemcrypto.so
217PRODUCT_SOONG_NAMESPACES += vendor/google_devices/caimito/prebuilts
218
219# Location
220PRODUCT_SOONG_NAMESPACES += device/google/caimito/location/ripcurrentpro
221$(call soong_config_set, gpssdk, buildtype, $(TARGET_BUILD_VARIANT))
222PRODUCT_PACKAGES += gps.cfg
223# For GPS property
224PRODUCT_VENDOR_PROPERTIES += ro.vendor.gps.pps.enabled=true
225
226PRODUCT_VENDOR_PROPERTIES += \
227	persist.device_config.configuration.disable_rescue_party=true
228
229PRODUCT_VENDOR_PROPERTIES += \
230    persist.vendor.udfps.als_feed_forward_supported=true \
231    persist.vendor.udfps.lhbm_controlled_in_hal_supported=true
232
233# Vibrator HAL
234$(call soong_config_set,haptics,kernel_ver,v$(subst .,_,$(TARGET_LINUX_KERNEL_VERSION)))
235ACTUATOR_MODEL := luxshare_ict_081545
236PRODUCT_VENDOR_PROPERTIES += \
237    ro.vendor.vibrator.hal.chirp.enabled=1 \
238    ro.vendor.vibrator.hal.device.mass=0.222 \
239    ro.vendor.vibrator.hal.loc.coeff=2.8
240
241# PKVM Memory Reclaim
242PRODUCT_VENDOR_PROPERTIES += \
243    hypervisor.memory_reclaim.supported=1
244
245# Thread HAL
246PRODUCT_PACKAGES += \
247   com.google.caimito.hardware.threadnetwork
248
249# Enable APF by default
250PRODUCT_VENDOR_PROPERTIES += \
251    vendor.powerhal.apf_disabled=false \
252    vendor.powerhal.apf_enabled=true
253