From 6906b5220161853e825f496e1bd299556fd19d41 Mon Sep 17 00:00:00 2001 From: Simon1511 Date: Sun, 4 Dec 2022 14:38:41 +0100 Subject: [PATCH] sm7125-common: add seperated fstab for recovery * The keydirectory and metadata_encryption flags for /data make lineage recovery improperly format it Change-Id: I853b9c94c9bc0d295d393a3e820595ef99593583 --- BoardConfigCommon.mk | 2 +- recovery/root/fstab.default | 61 +++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 recovery/root/fstab.default diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk index daeff04..3765cd1 100644 --- a/BoardConfigCommon.mk +++ b/BoardConfigCommon.mk @@ -196,7 +196,7 @@ BOARD_HAS_DOWNLOAD_MODE := true BOARD_INCLUDE_RECOVERY_DTBO := true TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888 TARGET_USES_MKE2FS := true -TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/rootdir/etc/fstab.default +TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/recovery/root/fstab.default TARGET_BOARD_INFO_FILE := $(COMMON_PATH)/board-info.txt # Releasetools diff --git a/recovery/root/fstab.default b/recovery/root/fstab.default new file mode 100644 index 0000000..d976f1b --- /dev/null +++ b/recovery/root/fstab.default @@ -0,0 +1,61 @@ +# Copyright (c) 2018-2019, 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. + +# 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. + +# +system /system ext4 ro wait,logical,first_stage_mount +system /system f2fs ro wait,logical,first_stage_mount +product /product ext4 ro wait,logical,first_stage_mount +vendor /vendor ext4 ro wait,logical,first_stage_mount +odm /odm ext4 ro wait,logical,first_stage_mount +/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/cache /cache ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic,sync wait,formattable,first_stage_mount,check +# Add fs_mgr flag - sysfs_path=/sys/devices/platform/soc/xxxx.[ufshc|sdhci] to userdata entry, based on UFS|eMMC device. +/dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,usrquota,grpquota,fsync_mode=nobarrier,reserve_root=32768,resgid=5678,inlinecrypt latemount,wait,check,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized,quota,reservedsize=128M,checkpoint=fs +/dev/block/bootdevice/by-name/apnhlos /vendor/firmware_mnt vfat ro,shortname=lower,uid=0,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait +/dev/block/bootdevice/by-name/modem /vendor/firmware-modem vfat ro,shortname=lower,uid=0,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait +/dev/block/bootdevice/by-name/efs /mnt/vendor/efs ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/bootdevice/by-name/sec_efs /efs ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/bootdevice/by-name/dsp /vendor/dsp ext4 ro,nosuid,nodev,barrier=1 wait +/dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check + +# Need to have this entry in here even though the mount point itself is no longer needed. +# The update_engine code looks for this entry in order to determine the boot device address +# and fails if it does not find it. +/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults,first_stage_mount + +# VOLD:samsung/common_sm7125/fstab_dynamic_partition.samsung +/devices/platform/soc/8804000.sdhci/mmc_host* auto auto defaults wait,voldmanaged=sdcard:auto,encryptable=userdata +/devices/platform/soc/a600000.ssusb/a600000.dwc3/xhci-hcd.0.auto* auto auto defaults voldmanaged=usb:auto