Merge "Generic AOSP system image for non-A/B arm devices" into oc-dev
am: 66d4710933
Change-Id: I9d264f8e5a08984813e95b168eba8599b23ea521
This commit is contained in:
commit
43c6e2b649
7 changed files with 358 additions and 1 deletions
71
target/board/generic_arm64_a/BoardConfig.mk
Normal file
71
target/board/generic_arm64_a/BoardConfig.mk
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2017 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.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Common boardconfig settings for generic AOSP products targetting mobile
|
||||||
|
# (phone/table) devices.
|
||||||
|
|
||||||
|
# Bootloader is not part of generic AOSP image
|
||||||
|
TARGET_NO_BOOTLOADER := true
|
||||||
|
|
||||||
|
# Kernel is also not part of generic AOSP image
|
||||||
|
TARGET_NO_KERNEL := true
|
||||||
|
|
||||||
|
# system.img is always ext4 with sparse option
|
||||||
|
TARGET_USERIMAGES_USE_EXT4 := true
|
||||||
|
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
|
||||||
|
TARGET_USES_MKE2FS := true
|
||||||
|
|
||||||
|
# Enable dex pre-opt to speed up initial boot
|
||||||
|
ifeq ($(HOST_OS),linux)
|
||||||
|
ifeq ($(WITH_DEXPREOPT),)
|
||||||
|
WITH_DEXPREOPT := true
|
||||||
|
WITH_DEXPREOPT_PIC := true
|
||||||
|
ifneq ($(TARGET_BUILD_VARIANT),user)
|
||||||
|
# Retain classes.dex in APK's for non-user builds
|
||||||
|
DEX_PREOPT_DEFAULT := nostripping
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Generic AOSP image always requires separate vendor.img
|
||||||
|
BOARD_USES_VENDORIMAGE := true
|
||||||
|
TARGET_COPY_OUT_VENDOR := vendor
|
||||||
|
|
||||||
|
# Generic AOSP image does NOT support HWC1
|
||||||
|
TARGET_USES_HWC2 := true
|
||||||
|
|
||||||
|
TARGET_ARCH := arm64
|
||||||
|
TARGET_ARCH_VARIANT := armv8-a
|
||||||
|
TARGET_CPU_ABI := arm64-v8a
|
||||||
|
TARGET_CPU_ABI2 :=
|
||||||
|
TARGET_CPU_VARIANT := generic
|
||||||
|
|
||||||
|
TARGET_2ND_ARCH := arm
|
||||||
|
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
|
||||||
|
TARGET_2ND_CPU_ABI := armeabi-v7a
|
||||||
|
TARGET_2ND_CPU_ABI2 := armeabi
|
||||||
|
TARGET_2ND_CPU_VARIANT := generic
|
||||||
|
|
||||||
|
TARGET_USES_64_BIT_BINDER := true
|
||||||
|
|
||||||
|
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612736 # 1.5 GB
|
||||||
|
|
||||||
|
# TODO(b/35790399): remove when b/35790399 is fixed.
|
||||||
|
BOARD_NAND_SPARE_SIZE := 0
|
||||||
|
BOARD_FLASH_BLOCK_SIZE := 512
|
||||||
|
|
||||||
|
BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
|
||||||
|
|
0
target/board/generic_arm64_a/system.prop
Normal file
0
target/board/generic_arm64_a/system.prop
Normal file
63
target/board/generic_arm_a/BoardConfig.mk
Normal file
63
target/board/generic_arm_a/BoardConfig.mk
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2017 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.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Common boardconfig settings for generic AOSP products targetting mobile
|
||||||
|
# (phone/table) devices.
|
||||||
|
|
||||||
|
# Bootloader is not part of generic AOSP image
|
||||||
|
TARGET_NO_BOOTLOADER := true
|
||||||
|
|
||||||
|
# Kernel is also not part of generic AOSP image
|
||||||
|
TARGET_NO_KERNEL := true
|
||||||
|
|
||||||
|
# system.img is always ext4 with sparse option
|
||||||
|
TARGET_USERIMAGES_USE_EXT4 := true
|
||||||
|
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
|
||||||
|
TARGET_USES_MKE2FS := true
|
||||||
|
|
||||||
|
# Enable dex pre-opt to speed up initial boot
|
||||||
|
ifeq ($(HOST_OS),linux)
|
||||||
|
ifeq ($(WITH_DEXPREOPT),)
|
||||||
|
WITH_DEXPREOPT := true
|
||||||
|
WITH_DEXPREOPT_PIC := true
|
||||||
|
ifneq ($(TARGET_BUILD_VARIANT),user)
|
||||||
|
# Retain classes.dex in APK's for non-user builds
|
||||||
|
DEX_PREOPT_DEFAULT := nostripping
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Generic AOSP image always requires separate vendor.img
|
||||||
|
BOARD_USES_VENDORIMAGE := true
|
||||||
|
TARGET_COPY_OUT_VENDOR := vendor
|
||||||
|
|
||||||
|
# Generic AOSP image does NOT support HWC1
|
||||||
|
TARGET_USES_HWC2 := true
|
||||||
|
|
||||||
|
TARGET_ARCH := arm
|
||||||
|
TARGET_ARCH_VARIANT := armv7-a-neon
|
||||||
|
TARGET_CPU_ABI := armeabi-v7a
|
||||||
|
TARGET_CPU_ABI2 := armeabi
|
||||||
|
TARGET_CPU_VARIANT := generic
|
||||||
|
|
||||||
|
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612736
|
||||||
|
|
||||||
|
# TODO(b/35790399): remove when b/35790399 is fixed.
|
||||||
|
BOARD_NAND_SPARE_SIZE := 0
|
||||||
|
BOARD_FLASH_BLOCK_SIZE := 512
|
||||||
|
|
||||||
|
BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
|
||||||
|
|
0
target/board/generic_arm_a/system.prop
Normal file
0
target/board/generic_arm_a/system.prop
Normal file
|
@ -42,7 +42,6 @@ PRODUCT_MAKEFILES := \
|
||||||
$(LOCAL_DIR)/aosp_mips.mk \
|
$(LOCAL_DIR)/aosp_mips.mk \
|
||||||
$(LOCAL_DIR)/full_mips.mk \
|
$(LOCAL_DIR)/full_mips.mk \
|
||||||
$(LOCAL_DIR)/aosp_arm64.mk \
|
$(LOCAL_DIR)/aosp_arm64.mk \
|
||||||
$(LOCAL_DIR)/aosp_arm64_ab.mk \
|
|
||||||
$(LOCAL_DIR)/aosp_mips64.mk \
|
$(LOCAL_DIR)/aosp_mips64.mk \
|
||||||
$(LOCAL_DIR)/aosp_x86_64.mk
|
$(LOCAL_DIR)/aosp_x86_64.mk
|
||||||
else
|
else
|
||||||
|
@ -52,6 +51,7 @@ PRODUCT_MAKEFILES := \
|
||||||
$(LOCAL_DIR)/generic_x86.mk \
|
$(LOCAL_DIR)/generic_x86.mk \
|
||||||
$(LOCAL_DIR)/generic_mips.mk \
|
$(LOCAL_DIR)/generic_mips.mk \
|
||||||
$(LOCAL_DIR)/aosp_arm.mk \
|
$(LOCAL_DIR)/aosp_arm.mk \
|
||||||
|
$(LOCAL_DIR)/aosp_arm_a.mk \
|
||||||
$(LOCAL_DIR)/full.mk \
|
$(LOCAL_DIR)/full.mk \
|
||||||
$(LOCAL_DIR)/aosp_x86.mk \
|
$(LOCAL_DIR)/aosp_x86.mk \
|
||||||
$(LOCAL_DIR)/aosp_x86_arm.mk \
|
$(LOCAL_DIR)/aosp_x86_arm.mk \
|
||||||
|
@ -59,6 +59,7 @@ PRODUCT_MAKEFILES := \
|
||||||
$(LOCAL_DIR)/aosp_mips.mk \
|
$(LOCAL_DIR)/aosp_mips.mk \
|
||||||
$(LOCAL_DIR)/full_mips.mk \
|
$(LOCAL_DIR)/full_mips.mk \
|
||||||
$(LOCAL_DIR)/aosp_arm64.mk \
|
$(LOCAL_DIR)/aosp_arm64.mk \
|
||||||
|
$(LOCAL_DIR)/aosp_arm64_a.mk \
|
||||||
$(LOCAL_DIR)/aosp_arm64_ab.mk \
|
$(LOCAL_DIR)/aosp_arm64_ab.mk \
|
||||||
$(LOCAL_DIR)/aosp_mips64.mk \
|
$(LOCAL_DIR)/aosp_mips64.mk \
|
||||||
$(LOCAL_DIR)/aosp_x86_64.mk \
|
$(LOCAL_DIR)/aosp_x86_64.mk \
|
||||||
|
|
111
target/product/aosp_arm64_a.mk
Normal file
111
target/product/aosp_arm64_a.mk
Normal file
|
@ -0,0 +1,111 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2017 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.
|
||||||
|
#
|
||||||
|
|
||||||
|
# PRODUCT_PROPERTY_OVERRIDES cannot be used here because sysprops will be at
|
||||||
|
# /vendor/[build|default].prop when build split is on. In order to have sysprops
|
||||||
|
# on the generic system image, place them in build/make/target/board/generic_arm_nonab/
|
||||||
|
# system.prop.
|
||||||
|
|
||||||
|
PRODUCT_COPY_FILES := \
|
||||||
|
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml
|
||||||
|
|
||||||
|
#split selinux policy
|
||||||
|
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||||
|
|
||||||
|
# Some of HAL interface libraries are automatically added by the dependencies from
|
||||||
|
# the framework. However, we list them all here to make it explicit and prevent
|
||||||
|
# possible mistake.
|
||||||
|
PRODUCT_PACKAGES := \
|
||||||
|
android.dvr.composer@1.0 \
|
||||||
|
android.hardware.audio@2.0 \
|
||||||
|
android.hardware.audio.common@2.0 \
|
||||||
|
android.hardware.audio.common@2.0-util \
|
||||||
|
android.hardware.audio.effect@2.0 \
|
||||||
|
android.hardware.biometrics.fingerprint@2.1 \
|
||||||
|
android.hardware.bluetooth@1.0 \
|
||||||
|
android.hardware.boot@1.0 \
|
||||||
|
android.hardware.broadcastradio@1.0 \
|
||||||
|
android.hardware.broadcastradio@1.1 \
|
||||||
|
android.hardware.camera.common@1.0 \
|
||||||
|
android.hardware.camera.device@1.0 \
|
||||||
|
android.hardware.camera.device@3.2 \
|
||||||
|
android.hardware.camera.provider@2.4 \
|
||||||
|
android.hardware.configstore@1.0 \
|
||||||
|
android.hardware.contexthub@1.0 \
|
||||||
|
android.hardware.drm@1.0 \
|
||||||
|
android.hardware.gatekeeper@1.0 \
|
||||||
|
android.hardware.gnss@1.0 \
|
||||||
|
android.hardware.graphics.allocator@2.0 \
|
||||||
|
android.hardware.graphics.common@1.0 \
|
||||||
|
android.hardware.graphics.composer@2.1 \
|
||||||
|
android.hardware.graphics.mapper@2.0 \
|
||||||
|
android.hardware.ir@1.0 \
|
||||||
|
android.hardware.keymaster@3.0 \
|
||||||
|
android.hardware.light@2.0 \
|
||||||
|
android.hardware.media@1.0 \
|
||||||
|
android.hardware.media.omx@1.0 \
|
||||||
|
android.hardware.media.omx@1.0-utils \
|
||||||
|
android.hardware.memtrack@1.0 \
|
||||||
|
android.hardware.nfc@1.0 \
|
||||||
|
android.hardware.oemlock@1.0 \
|
||||||
|
android.hardware.power@1.0 \
|
||||||
|
android.hardware.radio@1.0 \
|
||||||
|
android.hardware.radio.deprecated@1.0 \
|
||||||
|
android.hardware.sensors@1.0 \
|
||||||
|
android.hardware.soundtrigger@2.0 \
|
||||||
|
android.hardware.thermal@1.0 \
|
||||||
|
android.hardware.tv.cec@1.0 \
|
||||||
|
android.hardware.tv.input@1.0 \
|
||||||
|
android.hardware.usb@1.0 \
|
||||||
|
android.hardware.vibrator@1.0 \
|
||||||
|
android.hardware.vr@1.0 \
|
||||||
|
android.hardware.weaver@1.0 \
|
||||||
|
android.hardware.wifi@1.0 \
|
||||||
|
android.hardware.wifi.supplicant@1.0 \
|
||||||
|
android.hidl.allocator@1.0 \
|
||||||
|
android.hidl.base@1.0 \
|
||||||
|
android.hidl.manager@1.0 \
|
||||||
|
android.hidl.memory@1.0 \
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
libdynamic_sensor_ext \
|
||||||
|
libaudioroute \
|
||||||
|
libxml2 \
|
||||||
|
libtinyalsa \
|
||||||
|
libtinycompress \
|
||||||
|
cplay \
|
||||||
|
libion \
|
||||||
|
|
||||||
|
# WiFi
|
||||||
|
# Note: Wifi HAL (android.hardware.wifi@1.0-service, wpa_supplicant,
|
||||||
|
# and wpa_supplicant.conf) is not here. They are at vendor.img
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
libwpa_client \
|
||||||
|
hostapd \
|
||||||
|
hostapd_cli \
|
||||||
|
wificond \
|
||||||
|
wifilogd \
|
||||||
|
|
||||||
|
PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
|
||||||
|
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/verity.mk)
|
||||||
|
|
||||||
|
PRODUCT_NAME := aosp_arm64_a
|
||||||
|
PRODUCT_DEVICE := generic_arm64_a
|
||||||
|
PRODUCT_BRAND := Android
|
||||||
|
PRODUCT_MODEL := AOSP on ARM64
|
111
target/product/aosp_arm_a.mk
Normal file
111
target/product/aosp_arm_a.mk
Normal file
|
@ -0,0 +1,111 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2017 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.
|
||||||
|
#
|
||||||
|
|
||||||
|
# PRODUCT_PROPERTY_OVERRIDES cannot be used here because sysprops will be at
|
||||||
|
# /vendor/[build|default].prop when build split is on. In order to have sysprops
|
||||||
|
# on the generic system image, place them in build/make/target/board/generic_arm_a/
|
||||||
|
# system.prop.
|
||||||
|
|
||||||
|
PRODUCT_COPY_FILES := \
|
||||||
|
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml
|
||||||
|
|
||||||
|
#split selinux policy
|
||||||
|
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||||
|
|
||||||
|
# Some of HAL interface libraries are automatically added by the dependencies from
|
||||||
|
# the framework. However, we list them all here to make it explicit and prevent
|
||||||
|
# possible mistake.
|
||||||
|
PRODUCT_PACKAGES := \
|
||||||
|
android.dvr.composer@1.0 \
|
||||||
|
android.hardware.audio@2.0 \
|
||||||
|
android.hardware.audio.common@2.0 \
|
||||||
|
android.hardware.audio.common@2.0-util \
|
||||||
|
android.hardware.audio.effect@2.0 \
|
||||||
|
android.hardware.biometrics.fingerprint@2.1 \
|
||||||
|
android.hardware.bluetooth@1.0 \
|
||||||
|
android.hardware.boot@1.0 \
|
||||||
|
android.hardware.broadcastradio@1.0 \
|
||||||
|
android.hardware.broadcastradio@1.1 \
|
||||||
|
android.hardware.camera.common@1.0 \
|
||||||
|
android.hardware.camera.device@1.0 \
|
||||||
|
android.hardware.camera.device@3.2 \
|
||||||
|
android.hardware.camera.provider@2.4 \
|
||||||
|
android.hardware.configstore@1.0 \
|
||||||
|
android.hardware.contexthub@1.0 \
|
||||||
|
android.hardware.drm@1.0 \
|
||||||
|
android.hardware.gatekeeper@1.0 \
|
||||||
|
android.hardware.gnss@1.0 \
|
||||||
|
android.hardware.graphics.allocator@2.0 \
|
||||||
|
android.hardware.graphics.common@1.0 \
|
||||||
|
android.hardware.graphics.composer@2.1 \
|
||||||
|
android.hardware.graphics.mapper@2.0 \
|
||||||
|
android.hardware.ir@1.0 \
|
||||||
|
android.hardware.keymaster@3.0 \
|
||||||
|
android.hardware.light@2.0 \
|
||||||
|
android.hardware.media@1.0 \
|
||||||
|
android.hardware.media.omx@1.0 \
|
||||||
|
android.hardware.media.omx@1.0-utils \
|
||||||
|
android.hardware.memtrack@1.0 \
|
||||||
|
android.hardware.nfc@1.0 \
|
||||||
|
android.hardware.oemlock@1.0 \
|
||||||
|
android.hardware.power@1.0 \
|
||||||
|
android.hardware.radio@1.0 \
|
||||||
|
android.hardware.radio.deprecated@1.0 \
|
||||||
|
android.hardware.sensors@1.0 \
|
||||||
|
android.hardware.soundtrigger@2.0 \
|
||||||
|
android.hardware.thermal@1.0 \
|
||||||
|
android.hardware.tv.cec@1.0 \
|
||||||
|
android.hardware.tv.input@1.0 \
|
||||||
|
android.hardware.usb@1.0 \
|
||||||
|
android.hardware.usb@1.1 \
|
||||||
|
android.hardware.vibrator@1.0 \
|
||||||
|
android.hardware.vr@1.0 \
|
||||||
|
android.hardware.weaver@1.0 \
|
||||||
|
android.hardware.wifi@1.0 \
|
||||||
|
android.hardware.wifi.supplicant@1.0 \
|
||||||
|
android.hidl.allocator@1.0 \
|
||||||
|
android.hidl.base@1.0 \
|
||||||
|
android.hidl.manager@1.0 \
|
||||||
|
android.hidl.memory@1.0 \
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
libdynamic_sensor_ext \
|
||||||
|
libaudioroute \
|
||||||
|
libxml2 \
|
||||||
|
libtinyalsa \
|
||||||
|
libtinycompress \
|
||||||
|
cplay \
|
||||||
|
libion \
|
||||||
|
|
||||||
|
# WiFi
|
||||||
|
# Note: Wifi HAL (android.hardware.wifi@1.0-service, wpa_supplicant,
|
||||||
|
# and wpa_supplicant.conf) is not here. They are at vendor.img
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
libwpa_client \
|
||||||
|
hostapd \
|
||||||
|
hostapd_cli \
|
||||||
|
wificond \
|
||||||
|
wifilogd \
|
||||||
|
|
||||||
|
PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
|
||||||
|
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/verity.mk)
|
||||||
|
|
||||||
|
PRODUCT_NAME := aosp_arm_a
|
||||||
|
PRODUCT_DEVICE := generic_arm_a
|
||||||
|
PRODUCT_BRAND := Android
|
||||||
|
PRODUCT_MODEL := AOSP on ARM32
|
Loading…
Reference in a new issue