Merge "Support the combinations of A/B and split."
This commit is contained in:
commit
3460659278
10 changed files with 133 additions and 11 deletions
|
@ -65,7 +65,11 @@ include $(CLEAR_VARS)
|
|||
LOCAL_MODULE := fstab.qcom
|
||||
LOCAL_MODULE_TAGS := optional eng
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
ifeq ($(ENABLE_AB), true)
|
||||
LOCAL_SRC_FILES := fstab_AB_variant.qcom
|
||||
else
|
||||
LOCAL_SRC_FILES := fstab_non_AB_variant.qcom
|
||||
endif
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@ BOARD_USE_LEGACY_UI := true
|
|||
TARGET_USERIMAGES_USE_EXT4 := true
|
||||
BOARD_BOOTIMAGE_PARTITION_SIZE := 0x04000000
|
||||
|
||||
ifeq ($(ENABLE_AB), true)
|
||||
#A/B related defines
|
||||
AB_OTA_UPDATER := true
|
||||
# Full A/B partiton update set
|
||||
|
@ -45,14 +46,25 @@ AB_OTA_PARTITIONS ?= boot system
|
|||
BOARD_BUILD_SYSTEM_ROOT_IMAGE := true
|
||||
TARGET_NO_RECOVERY := true
|
||||
BOARD_USES_RECOVERY_AS_BOOT := true
|
||||
ifeq ($(ENABLE_VENDOR_IMAGE), true)
|
||||
TARGET_RECOVERY_FSTAB := device/qcom/sdm660_64/recovery_vendor_variant.fstab
|
||||
else
|
||||
TARGET_RECOVERY_FSTAB := device/qcom/sdm660_64/recovery.fstab
|
||||
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x04000000
|
||||
BOARD_CACHEIMAGE_PARTITION_SIZE := 268435456
|
||||
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
|
||||
#TARGET_RECOVERY_UPDATER_LIBS += librecovery_updater_msm
|
||||
endif
|
||||
|
||||
ifneq ($(AB_OTA_UPDATER),true)
|
||||
TARGET_RECOVERY_UPDATER_LIBS += librecovery_updater_msm
|
||||
ifeq ($(ENABLE_AB), true)
|
||||
ifeq ($(ENABLE_VENDOR_IMAGE), true)
|
||||
TARGET_RECOVERY_FSTAB := device/qcom/sdm660_64/recovery_AB_split_variant.fstab
|
||||
else
|
||||
TARGET_RECOVERY_FSTAB := device/qcom/sdm660_64/recovery_AB_non-split_variant.fstab
|
||||
endif
|
||||
else
|
||||
ifeq ($(ENABLE_VENDOR_IMAGE), true)
|
||||
TARGET_RECOVERY_FSTAB := device/qcom/sdm660_64/recovery_non-AB_split_variant.fstab
|
||||
else
|
||||
TARGET_RECOVERY_FSTAB := device/qcom/sdm660_64/recovery_non-AB_non-split_variant.fstab
|
||||
endif
|
||||
endif
|
||||
|
||||
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 3221225472
|
||||
|
@ -159,4 +171,6 @@ TARGET_USES_IMS := true
|
|||
ADD_RADIO_FILES := true
|
||||
TARGET_RECOVERY_UI_LIB := librecovery_ui_msm
|
||||
|
||||
|
||||
ifneq ($(AB_OTA_UPDATER),true)
|
||||
TARGET_RECOVERY_UPDATER_LIBS += librecovery_updater_msm
|
||||
endif
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
#TODO: Add 'check' as fs_mgr_flags with data partition.
|
||||
# Currently we dont have e2fsck compiled. So fs check would failed.
|
||||
|
||||
# A/B fstab.qcom variant
|
||||
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
|
||||
/dev/block/bootdevice/by-name/system / ext4 ro,barrier=1,discard wait,slotselect,verify
|
||||
/dev/block/bootdevice/by-name/userdata /data ext4 nosuid,nodev,barrier=1,noauto_da_alloc,discard,lazytime wait,check,forceencrypt=footer,crashcheck
|
18
fstab_non_AB_variant.qcom
Executable file
18
fstab_non_AB_variant.qcom
Executable file
|
@ -0,0 +1,18 @@
|
|||
# Android fstab file.
|
||||
# The filesystem that contains the filesystem checker binary (typically /system) cannot
|
||||
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
|
||||
|
||||
#TODO: Add 'check' as fs_mgr_flags with data partition.
|
||||
# Currently we dont have e2fsck compiled. So fs check would failed.
|
||||
|
||||
# Non-A/B fstab.qcom variant
|
||||
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
|
||||
/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1,discard wait,verify
|
||||
/dev/block/bootdevice/by-name/userdata /data ext4 nosuid,nodev,barrier=1,noauto_da_alloc,discard,lazytime wait,check,forceencrypt=footer,crashcheck
|
||||
/devices/soc/c084000.sdhci/mmc_host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer
|
||||
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
|
||||
/dev/block/bootdevice/by-name/bluetooth /bt_firmware vfat ro,shortname=lower,uid=1002,gid=3002,dmask=227,fmask=337,context=u:object_r:bt_firmware_file:s0 wait
|
||||
/devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto* /storage/usbotg vfat nosuid,nodev wait,voldmanaged=usbotg:auto
|
||||
/dev/block/bootdevice/by-name/dsp /dsp ext4 ro,nosuid,nodev,barrier=1 wait
|
||||
/dev/block/bootdevice/by-name/cache /cache ext4 nosuid,nodev,barrier=1 wait
|
|
@ -28,6 +28,9 @@
|
|||
#
|
||||
|
||||
on early-init
|
||||
mkdir /firmware 0771 system system
|
||||
mkdir /bt_firmware 0771 system system
|
||||
mkdir /dsp 0771 media media
|
||||
|
||||
on init
|
||||
write /dev/stune/foreground/schedtune.sched_boost_no_override 1
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright (c) 2013, The Linux Foundation. All rights reserved.
|
||||
# Copyright (c) 2017, The Linux Foundation. All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are
|
||||
|
@ -25,11 +25,12 @@
|
|||
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# A/B, non-split(no vendor.img) recovery.fstab variant.
|
||||
|
||||
#device mount point fstype [device2] [length=]
|
||||
|
||||
/dev/block/bootdevice/by-name/system / ext4 ro,barrier=1 wait,slotselect,verify
|
||||
/dev/block/bootdevice/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc wait,check,encryptable=footer
|
||||
/dev/block/mmcblk1p1 /sdcard vfat nosuid,nodev wait
|
||||
/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
|
|
@ -25,7 +25,7 @@
|
|||
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# Vendor variant of recovery.fstab. Same as recovery.fstab, with additional vendor entry.
|
||||
# A/B, split(with vendor.img) recovery.fstab variant.
|
||||
|
||||
#device mount point fstype [device2] [length=]
|
||||
|
||||
|
@ -34,5 +34,4 @@
|
|||
/dev/block/bootdevice/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc wait,check,encryptable=footer
|
||||
/dev/block/mmcblk1p1 /sdcard vfat nosuid,nodev wait
|
||||
/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
|
38
recovery_non-AB_non-split_variant.fstab
Executable file
38
recovery_non-AB_non-split_variant.fstab
Executable file
|
@ -0,0 +1,38 @@
|
|||
# Copyright (c) 2017, The Linux Foundation. All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are
|
||||
# met:
|
||||
# * Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# * Redistributions in binary form must reproduce the above
|
||||
# copyright notice, this list of conditions and the following
|
||||
# disclaimer in the documentation and/or other materials provided
|
||||
# with the distribution.
|
||||
# * Neither the name of The Linux Foundation nor the names of its
|
||||
# contributors may be used to endorse or promote products derived
|
||||
# from this software without specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
|
||||
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
||||
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
||||
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# Non A/B, non-split(no vendor.img) recovery.fstab variant.
|
||||
|
||||
#device mount point fstype [device2] [length=]
|
||||
|
||||
/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1 wait,verify
|
||||
/dev/block/bootdevice/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check
|
||||
/dev/block/bootdevice/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc wait,check,encryptable=footer
|
||||
/dev/block/mmcblk1p1 /sdcard vfat nosuid,nodev wait
|
||||
/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
|
39
recovery_non-AB_split_variant.fstab
Executable file
39
recovery_non-AB_split_variant.fstab
Executable file
|
@ -0,0 +1,39 @@
|
|||
# Copyright (c) 2017, The Linux Foundation. All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are
|
||||
# met:
|
||||
# * Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# * Redistributions in binary form must reproduce the above
|
||||
# copyright notice, this list of conditions and the following
|
||||
# disclaimer in the documentation and/or other materials provided
|
||||
# with the distribution.
|
||||
# * Neither the name of The Linux Foundation nor the names of its
|
||||
# contributors may be used to endorse or promote products derived
|
||||
# from this software without specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
|
||||
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
||||
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
||||
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# Non A/B, split(with vendor.img) recovery.fstab variant.
|
||||
|
||||
#device mount point fstype [device2] [length=]
|
||||
|
||||
/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1 wait,verify
|
||||
/dev/block/bootdevice/by-name/vendor /vendor ext4 ro,barrier=1 wait,verify
|
||||
/dev/block/bootdevice/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check
|
||||
/dev/block/bootdevice/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc wait,check,encryptable=footer
|
||||
/dev/block/mmcblk1p1 /sdcard vfat nosuid,nodev wait
|
||||
/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults
|
||||
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
|
|
@ -9,6 +9,9 @@ ifeq ($(ENABLE_VENDOR_IMAGE),)
|
|||
ENABLE_VENDOR_IMAGE := true
|
||||
endif
|
||||
|
||||
# Default A/B configuration.
|
||||
ENABLE_AB ?= true
|
||||
|
||||
# Disable QTIC until it's brought up in split system/vendor
|
||||
# configuration to avoid compilation breakage.
|
||||
ifeq ($(ENABLE_VENDOR_IMAGE), true)
|
||||
|
@ -231,6 +234,7 @@ PRODUCT_PACKAGES += \
|
|||
wificond \
|
||||
wifilogd
|
||||
|
||||
ifeq ($(ENABLE_AB), true)
|
||||
#A/B related packages
|
||||
PRODUCT_PACKAGES += update_engine \
|
||||
update_engine_client \
|
||||
|
@ -242,6 +246,7 @@ PRODUCT_PACKAGES += update_engine \
|
|||
|
||||
#Boot control HAL test app
|
||||
PRODUCT_PACKAGES_DEBUG += bootctl
|
||||
endif
|
||||
|
||||
#Healthd packages
|
||||
PRODUCT_PACKAGES += android.hardware.health@1.0-impl \
|
||||
|
|
Loading…
Reference in a new issue