diff --git a/AndroidProducts.mk b/AndroidProducts.mk
index 400797a..6520817 100644
--- a/AndroidProducts.mk
+++ b/AndroidProducts.mk
@@ -19,10 +19,6 @@ PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/redroid_arm64.mk \
COMMON_LUNCH_CHOICES := \
- redroid_x86_64-eng \
redroid_x86_64-userdebug \
- redroid_x86_64-user \
- redroid_arm64-eng \
redroid_arm64-userdebug \
- redroid_arm64-user
diff --git a/gpu_config.sh b/gpu_config.sh
index a227f0f..83cd630 100755
--- a/gpu_config.sh
+++ b/gpu_config.sh
@@ -59,6 +59,7 @@ gpu_setup_host() {
setprop qemu.gles.vendor mesa
setprop ro.hardware.gralloc gbm
+ setprop ro.kernel.redroid.fps 30
}
gpu_setup_guest() {
diff --git a/manifest.xml b/manifest.xml
index 4601082..4612f08 100644
--- a/manifest.xml
+++ b/manifest.xml
@@ -17,6 +17,15 @@
default
+
+ android.hardware.configstore
+ hwbinder
+ 1.0
+
+ ISurfaceFlingerConfigs
+ default
+
+
android.hardware.drm
hwbinder
@@ -32,6 +41,15 @@
@1.2::ICryptoFactory/clearkey
@1.2::IDrmFactory/clearkey
+
+ android.hardware.gatekeeper
+ hwbinder
+ 1.0
+
+ IGatekeeper
+ default
+
+
android.hardware.graphics.allocator
hwbinder
@@ -59,6 +77,15 @@
default
+
+ android.hardware.health
+ hwbinder
+ 2.0
+
+ IHealth
+ default
+
+
android.hardware.keymaster
hwbinder
@@ -81,5 +108,4 @@
default
-
diff --git a/phone-xhdpi-6144-dalvik-heap.mk b/phone-xhdpi-6144-dalvik-heap.mk
new file mode 100644
index 0000000..2bacc4a
--- /dev/null
+++ b/phone-xhdpi-6144-dalvik-heap.mk
@@ -0,0 +1,25 @@
+#
+# Copyright 2019 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# Provides overrides to configure the Dalvik heap for a 6GB phone
+
+PRODUCT_PROPERTY_OVERRIDES += \
+ dalvik.vm.heapstartsize=16m \
+ dalvik.vm.heapgrowthlimit=256m \
+ dalvik.vm.heapsize=512m \
+ dalvik.vm.heaptargetutilization=0.5 \
+ dalvik.vm.heapminfree=8m \
+ dalvik.vm.heapmaxfree=32m
diff --git a/redroid.mk b/redroid.mk
index 8899635..c653490 100644
--- a/redroid.mk
+++ b/redroid.mk
@@ -12,7 +12,30 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-$(call inherit-product-if-exists, product.mk)
+#$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
+
+# no kernel involved
+PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false
+
+PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
+
+PRODUCT_BUILD_CACHE_IMAGE := false
+PRODUCT_BUILD_ODM_IMAGE := false
+PRODUCT_BUILD_PRODUCT_IMAGE := false
+PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE := false
+PRODUCT_BUILD_RAMDISK_IMAGE := false
+PRODUCT_BUILD_SUPER_PARTITION := false
+PRODUCT_BUILD_SYSTEM_OTHER_IMAGE := false
+PRODUCT_BUILD_USERDATA_IMAGE := false
+PRODUCT_BUILD_VBMETA_IMAGE := false
+PRODUCT_BUILD_VENDOR_IMAGE := true
+ifeq ($(BUILD_VENDOR_ONLY), true)
+PRODUCT_BUILD_SYSTEM_IMAGE := false
+else
+PRODUCT_BUILD_SYSTEM_IMAGE := true
+endif
+
+PRODUCT_SHIPPING_API_LEVEL := 29
PRODUCT_SOONG_NAMESPACES += external/mesa3d
@@ -37,8 +60,9 @@ PRODUCT_PACKAGES += \
libEGL_swiftshader \
libGLESv1_CM_swiftshader \
libGLESv2_swiftshader \
- libGLES_mesa \
vulkan.pastel \
+ libGLES_mesa \
+ vulkan.radv \
ipconfigstore \
PRODUCT_PROPERTY_OVERRIDES += \
@@ -56,7 +80,7 @@ PRODUCT_PACKAGES += \
android.hardware.wifi@1.0-service
PRODUCT_COPY_FILES += \
- frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
+ frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
# required HIDL
@@ -65,6 +89,7 @@ PRODUCT_PACKAGES += \
android.hardware.audio@2.0-service \
android.hardware.audio@4.0-impl \
android.hardware.audio.effect@4.0-impl \
+ android.hardware.configstore@1.1-service \
android.hardware.drm@1.0-service \
android.hardware.drm@1.0-impl \
android.hardware.drm@1.2-service.clearkey \
@@ -95,11 +120,12 @@ PRODUCT_COPY_FILES += \
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
frameworks/av/services/audiopolicy/config/surround_sound_configuration_5_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/surround_sound_configuration_5_0.xml \
- frameworks/native/data/etc/android.hardware.ethernet.xml:/system/etc/permissions/android.hardware.ethernet.xml \
- $(LOCAL_PATH)/init.redroid.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.redroid.rc \
+ frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
$(LOCAL_PATH)/gpu_config.sh:$(TARGET_COPY_OUT_VENDOR)/bin/gpu_config.sh \
+ $(LOCAL_PATH)/init.redroid.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.redroid.rc \
-# Extend heap size we use for dalvik/art runtime
-$(call inherit-product, frameworks/native/build/tablet-7in-hdpi-1024-dalvik-heap.mk)
+$(call inherit-product, device/redroid/phone-xhdpi-6144-dalvik-heap.mk)
+
+$(call inherit-product-if-exists, product.mk)
diff --git a/redroid_arm64/BoardConfig.mk b/redroid_arm64/BoardConfig.mk
index 4dba214..634c5a9 100644
--- a/redroid_arm64/BoardConfig.mk
+++ b/redroid_arm64/BoardConfig.mk
@@ -1,16 +1,24 @@
-include device/generic/arm64/BoardConfig.mk
+# arm64 emulator specific definitions
+TARGET_ARCH := arm64
+TARGET_ARCH_VARIANT := armv8-a
+TARGET_CPU_VARIANT := generic
+TARGET_CPU_ABI := arm64-v8a
-# want all fonts
-SMALLER_FONT_FOOTPRINT := false
-MINIMAL_FONT_FOOTPRINT := false
+TARGET_2ND_ARCH := arm
+TARGET_2ND_CPU_ABI := armeabi-v7a
+TARGET_2ND_CPU_ABI2 := armeabi
+TARGET_2ND_ARCH_VARIANT := armv7-a-neon
+TARGET_2ND_CPU_VARIANT := generic
-# use seperate vendor partition
-TARGET_COPY_OUT_VENDOR := vendor
+include build/make/target/board/BoardConfigGsiCommon.mk
+
+TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true
+
+BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
+BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 16777216
+BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 16777216
BOARD_GPU_DRIVERS := virgl radeonsi
DEVICE_MANIFEST_FILE := device/redroid/manifest.xml
-PRODUCT_ENFORCE_VINTF_MANIFEST := true
-# ~ 1.3G
-BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1388314624
diff --git a/redroid_x86_64/BoardConfig.mk b/redroid_x86_64/BoardConfig.mk
index 3d6dba0..1fa016c 100755
--- a/redroid_x86_64/BoardConfig.mk
+++ b/redroid_x86_64/BoardConfig.mk
@@ -1,13 +1,20 @@
-include device/generic/x86_64/BoardConfig.mk
+TARGET_CPU_ABI := x86_64
+TARGET_ARCH := x86_64
+TARGET_ARCH_VARIANT := x86_64
-# want all fonts
-SMALLER_FONT_FOOTPRINT := false
-MINIMAL_FONT_FOOTPRINT := false
+TARGET_2ND_CPU_ABI := x86
+TARGET_2ND_ARCH := x86
+TARGET_2ND_ARCH_VARIANT := x86_64
-# use seperate vendor partition
-TARGET_COPY_OUT_VENDOR := vendor
+include build/make/target/board/BoardConfigGsiCommon.mk
+
+TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true
+
+BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
+BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 16777216
+BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 16777216
BOARD_GPU_DRIVERS := i915 i965 r300g r600g virgl iris radeonsi
DEVICE_MANIFEST_FILE := device/redroid/manifest.xml
-PRODUCT_ENFORCE_VINTF_MANIFEST := true
+
diff --git a/redroid_x86_64/device.mk b/redroid_x86_64/device.mk
index 9ce92c0..e967bb8 100644
--- a/redroid_x86_64/device.mk
+++ b/redroid_x86_64/device.mk
@@ -1,3 +1,3 @@
PRODUCT_PACKAGES += \
- vulkan.intel \
+ vulkan.intel \
diff --git a/vendorsetup.sh b/vendorsetup.sh
new file mode 100755
index 0000000..45691f6
--- /dev/null
+++ b/vendorsetup.sh
@@ -0,0 +1,2 @@
+# use hacked LLVM
+export LLVM_PREBUILTS_VERSION="clang-r353983c"