1#
2# Copyright 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
17PRODUCT_SHIPPING_API_LEVEL := 29
18PRODUCT_USE_DYNAMIC_PARTITIONS := true
19PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false
20
21#
22# All components inherited here go to system image
23#
24$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
25$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_system.mk)
26
27#
28# All components inherited here go to system_ext image
29#
30$(call inherit-product, $(SRC_TARGET_DIR)/product/handheld_system_ext.mk)
31$(call inherit-product, $(SRC_TARGET_DIR)/product/telephony_system_ext.mk)
32
33#
34# All components inherited here go to product image
35#
36$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_product.mk)
37
38#
39# All components inherited here go to vendor image
40#
41$(call inherit-product, $(SRC_TARGET_DIR)/product/media_vendor.mk)
42$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
43
44PRODUCT_SOONG_NAMESPACES += device/generic/goldfish
45
46PRODUCT_PACKAGES += \
47    android.hardware.audio.service \
48    android.hardware.audio@6.0-impl:32 \
49    android.hardware.audio.effect@6.0-impl:32 \
50    audio.primary.default \
51    audio.r_submix.default \
52    android.hardware.drm@1.0-service \
53    android.hardware.drm@1.0-impl \
54    android.hardware.drm-service.clearkey \
55    android.hardware.gatekeeper@1.0-service.software \
56    android.hardware.graphics.allocator@2.0-service \
57    android.hardware.graphics.allocator@2.0-impl \
58    android.hardware.graphics.composer@2.1-service \
59    android.hardware.graphics.mapper@2.0-impl \
60    android.hardware.health@2.0-service \
61    android.hardware.neuralnetworks@1.3-service-sample-all \
62    android.hardware.neuralnetworks@1.3-service-sample-limited \
63    android.hardware.keymaster@4.0-service \
64    android.hardware.keymaster@4.0-impl \
65    gralloc.minigbm \
66    hwcomposer.drm_minigbm \
67    libEGL_angle \
68    libGLESv1_CM_angle \
69    libGLESv2_angle \
70    vulkan.pastel \
71
72PRODUCT_HOST_PACKAGES += bind_to_localhost
73
74PRODUCT_PACKAGE_OVERLAYS := device/generic/goldfish/fvpbase/overlay
75
76PRODUCT_NAME := fvp
77PRODUCT_DEVICE := fvpbase
78PRODUCT_BRAND := Android
79PRODUCT_MODEL := AOSP on FVP
80
81PRODUCT_COPY_FILES += \
82    frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
83    frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
84    frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
85    frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \
86    device/generic/goldfish/fvpbase/fstab.fvpbase:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.fvpbase \
87    device/generic/goldfish/fvpbase/fstab.qemu:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.qemu \
88    device/generic/goldfish/fvpbase/fstab.initrd:$(TARGET_COPY_OUT_RAMDISK)/fstab.fvpbase \
89    device/generic/goldfish/fvpbase/fstab.initrd:$(TARGET_COPY_OUT_RAMDISK)/fstab.qemu \
90    device/generic/goldfish/fvpbase/init.fvpbase.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.fvpbase.rc \
91    device/generic/goldfish/fvpbase/init.qemu.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.qemu.rc \
92    device/generic/goldfish/fvpbase/required_images:required_images \
93    device/generic/goldfish/fvpbase/ueventd.fvp.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
94    frameworks/av/services/audiopolicy/config/audio_policy_configuration_generic.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
95    frameworks/av/services/audiopolicy/config/primary_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml \
96    frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
97    frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
98    frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
99    frameworks/av/services/audiopolicy/config/surround_sound_configuration_5_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/surround_sound_configuration_5_0.xml \
100
101PRODUCT_BUILD_BOOT_IMAGE := true
102
103PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
104    qemu.hw.mainkeys=0 \
105    ro.hw_timeout_multiplier=50 \
106    debug.sf.nobootanimation=1 \
107    ro.hardware.egl=angle \
108    ro.hardware.vulkan=pastel \
109
110PRODUCT_REQUIRES_INSECURE_EXECMEM_FOR_SWIFTSHADER := true
111
112# It's almost always faster to dexopt on the host even in eng builds.
113WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY := false
114
115DEVICE_MANIFEST_FILE += device/generic/goldfish/fvpbase/manifest.xml
116
117# Use a multilib setup (see fvpbase/BoardConfig.mk).
118FVP_MULTILIB_BUILD := true
119
120