1#
2# Copyright (C) 2019 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# Enable Setup Wizard. This overrides the setting in emulator_vendor.mk
17PRODUCT_SYSTEM_EXT_PROPERTIES += \
18    ro.setupwizard.mode?=OPTIONAL
19
20ifeq (,$(ENABLE_REAR_VIEW_CAMERA_SAMPLE))
21ENABLE_REAR_VIEW_CAMERA_SAMPLE:=true
22endif
23
24PRODUCT_PACKAGE_OVERLAYS := device/generic/car/emulator/overlay
25
26$(call inherit-product, device/generic/car/common/car.mk)
27# This overrides device/generic/car/common/car.mk
28$(call inherit-product, device/generic/car/emulator/audio/car_emulator_audio.mk)
29$(call inherit-product, device/generic/car/emulator/rotary/car_rotary.mk)
30
31ifeq (,$(ENABLE_CAR_USB_PASSTHROUGH))
32ENABLE_CAR_USB_PASSTHROUGH := false
33endif
34
35ifeq (true,$(ENABLE_CAR_USB_PASSTHROUGH))
36# Enables USB related passthrough
37$(call inherit-product, device/generic/car/emulator/usbpt/car_usbpt.mk)
38
39TARGET_PRODUCT_PROP := device/generic/car/emulator/usbpt/bluetooth/bluetooth.prop
40endif
41
42# EVS
43# By default, we enable EvsManager, a sample EVS app, and a mock EVS HAL implementation.
44# If you want to use your own EVS HAL implementation, please set ENABLE_MOCK_EVSHAL as false
45# and add your HAL implementation to the product.  Please also check init.evs.rc and see how
46# you can configure EvsManager to use your EVS HAL implementation.  Similarly, please set
47# ENABLE_SAMPLE_EVS_APP as false if you want to use your own EVS app configuration or own EVS
48# app implementation.
49ENABLE_EVS_SAMPLE ?= false
50ENABLE_EVS_SERVICE ?= true
51ENABLE_MOCK_EVSHAL ?= true
52ENABLE_CAREVSSERVICE_SAMPLE ?= false
53ENABLE_SAMPLE_EVS_APP ?= false
54ENABLE_CARTELEMETRY_SERVICE ?= false
55ifeq ($(ENABLE_MOCK_EVSHAL), true)
56CUSTOMIZE_EVS_SERVICE_PARAMETER := true
57endif  # ENABLE_MOCK_EVSHAL
58$(call inherit-product, device/generic/car/emulator/evs/evs.mk)
59
60ifeq ($(EMULATOR_DYNAMIC_MULTIDISPLAY_CONFIG),true)
61# This section configures multi-display without hardcoding the
62# displays on hwservicemanager.
63$(call inherit-product, device/generic/car/emulator/multi-display-dynamic/multi-display-dynamic.mk)
64else # EMULATOR_DYNAMIC_MULTIDISPLAY_CONFIG
65ifeq (true,$(BUILD_EMULATOR_CLUSTER_DISPLAY))
66$(call inherit-product, device/generic/car/emulator/cluster/cluster-hwservicemanager.mk)
67endif # BUILD_EMULATOR_CLUSTER_DISPLAY
68endif # EMULATOR_DYNAMIC_MULTIDISPLAY_CONFIG
69
70PRODUCT_PACKAGES += CarServiceOverlayEmulatorMedia
71
72PRODUCT_PRODUCT_PROPERTIES += \
73    ro.carwatchdog.vhal_healthcheck.interval=10 \
74    ro.carwatchdog.client_healthcheck.interval=20 \
75
76# Drive Mode RROs
77PRODUCT_PACKAGES += \
78    DriveModeEcoRRO \
79    DriveModeSportRRO \
80    DriveModeOnRRO \
81
82# Enable socket for qemu VHAL
83BOARD_SEPOLICY_DIRS += device/generic/car/emulator/sepolicy
84