diff --git a/conf/fstab.efs b/conf/fstab.efs new file mode 100644 index 00000000..23182479 --- /dev/null +++ b/conf/fstab.efs @@ -0,0 +1,6 @@ +# Android fstab file. +# +# Create the specific fstab file for efs partitions for flexibility +/dev/block/platform/13200000.ufs/by-name/efs /mnt/vendor/efs f2fs noatime,sync wait,check,formattable +/dev/block/platform/13200000.ufs/by-name/efs_backup /mnt/vendor/efs_backup f2fs noatime,sync wait,check,formattable +/dev/block/platform/13200000.ufs/by-name/modem_userdata /mnt/vendor/modem_userdata f2fs noatime,sync wait,check,formattable \ No newline at end of file diff --git a/conf/fstab.zuma.in b/conf/fstab.zuma.in index 9fb13e72..fc3452a9 100644 --- a/conf/fstab.zuma.in +++ b/conf/fstab.zuma.in @@ -14,9 +14,6 @@ vendor /vendor vendor_dlkm /vendor_dlkm ext4 noatime,ro wait,slotselect,avb=vbmeta,avb_keys=no_such_key,logical,first_stage_mount /dev/block/platform/13200000.ufs/by-name/boot /boot emmc defaults slotselect,avb=boot,first_stage_mount /dev/block/platform/13200000.ufs/by-name/init_boot /init_boot emmc defaults slotselect,avb=init_boot,first_stage_mount -/dev/block/platform/13200000.ufs/by-name/efs /mnt/vendor/efs f2fs noatime,sync wait,check,formattable -/dev/block/platform/13200000.ufs/by-name/efs_backup /mnt/vendor/efs_backup f2fs noatime,sync wait,check,formattable -/dev/block/platform/13200000.ufs/by-name/modem_userdata /mnt/vendor/modem_userdata f2fs noatime,sync wait,check,formattable /dev/block/platform/13200000.ufs/by-name/misc /misc emmc defaults wait /dev/block/platform/13200000.ufs/by-name/metadata /metadata f2fs noatime,nosuid,nodev,sync wait,check,formattable,first_stage_mount #/dev/block/platform/13200000.ufs/by-name/pvmfw /pvmfw emmc defaults wait,slotselect,avb=pvmfw,first_stage_mount diff --git a/conf/init.efs.rc b/conf/init.efs.rc new file mode 100644 index 00000000..d15dbc13 --- /dev/null +++ b/conf/init.efs.rc @@ -0,0 +1,43 @@ +on property:ro.vendor.persist.status=mounted + # for battery defender + mkdir /mnt/vendor/persist/battery 0700 system system + + # Factory calibration files + chmod 0771 /mnt/vendor/persist/camera + chmod 0771 /mnt/vendor/persist/camera/OTP_calibration + chmod 0771 /mnt/vendor/persist/camera/pdaf_calibration_data + mkdir /mnt/vendor/persist/camera/rear 0771 system camera + chmod 0771 /mnt/vendor/persist/camera/rear + + restorecon_recursive /mnt/vendor/persist + restorecon_recursive /mnt/vendor/persist/aoc + restorecon_recursive /mnt/vendor/persist/audio + restorecon_recursive /mnt/vendor/persist/sensors + restorecon_recursive /mnt/vendor/persist/battery + restorecon_recursive /mnt/vendor/persist/camera + restorecon_recursive /mnt/vendor/persist/modem + # Set up display-related directories and permissions + # Add restorecon_recursive command to make sure the restorecon label is persist_display_file. + restorecon_recursive /mnt/vendor/persist/display + mkdir /mnt/vendor/persist/data/sfs 0700 system system + mkdir /mnt/vendor/persist/data/tz 0700 system system + mkdir /mnt/vendor/persist/touch 0770 system system + + # Proxy for Secure Storage + mkdir /data/vendor/rebootescrow 0770 hsm hsm + mkdir /data/vendor/ss 0770 root system + mkdir /mnt/vendor/persist/ss 0770 root system + restorecon_recursive /mnt/vendor/persist/ss + symlink /mnt/vendor/persist/ss /data/vendor/ss/persist + chown root system /data/vendor/ss/persist + chmod 0770 /data/vendor/ss/persist + symlink /dev/block/platform/13200000\.ufs/by-name/trusty_persist /data/vendor/ss/persist/0 + chown system system /data/vendor/ss/persist/0 + chown system system /data/vendor/ss/persist/nsp + + restart storageproxyd + +on post-fs-data + mount_all /vendor/etc/fstab.efs + mount_all /vendor/etc/fstab.persist + setprop ro.vendor.persist.status mounted diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index 4ee0ece7..c9dd76fe 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -1,9 +1,9 @@ import /vendor/etc/init/hw/init.zuma.usb.rc +import /vendor/etc/init/hw/init.efs.rc import android.hardware.drm@1.2-service.widevine.rc import init.exynos.sensorhub.rc on early-init - mount_all /vendor/etc/fstab.persist --early write /proc/sys/kernel/sched_pelt_multiplier 1 write /sys/kernel/mm/lru_gen/enabled n @@ -440,13 +440,6 @@ on post-fs-data chown system system /dev/ispolin_ranging chmod 0660 /dev/ispolin_ranging - # Factory calibration files - chmod 0771 /mnt/vendor/persist/camera - chmod 0771 /mnt/vendor/persist/camera/OTP_calibration - chmod 0771 /mnt/vendor/persist/camera/pdaf_calibration_data - mkdir /mnt/vendor/persist/camera/rear 0771 system camera - chmod 0771 /mnt/vendor/persist/camera/rear - # Audio dump and debug mkdir /data/vendor/audio 0770 audio audio @@ -619,23 +612,6 @@ on fs mount_all /vendor/etc/fstab.modem --early restorecon_recursive /mnt/vendor/modem_img - # for battery defender - mkdir /mnt/vendor/persist/battery 0700 system system - - restorecon_recursive /mnt/vendor/persist - restorecon_recursive /mnt/vendor/persist/aoc - restorecon_recursive /mnt/vendor/persist/audio - restorecon_recursive /mnt/vendor/persist/sensors - restorecon_recursive /mnt/vendor/persist/battery - restorecon_recursive /mnt/vendor/persist/camera - restorecon_recursive /mnt/vendor/persist/modem - # Set up display-related directories and permissions - # Add restorecon_recursive command to make sure the restorecon label is persist_display_file. - restorecon_recursive /mnt/vendor/persist/display - mkdir /mnt/vendor/persist/data/sfs 0700 system system - mkdir /mnt/vendor/persist/data/tz 0700 system system - mkdir /mnt/vendor/persist/touch 0770 system system - # Permissions for ION chmod 0660 /sys/class/ion_cma/ion_video_ext/isolated chown system system /sys/class/ion_cma/ion_video_ext/isolated @@ -934,20 +910,6 @@ service bugreport /system/bin/dumpstate -d -p -z oneshot keycodes 114 115 116 -# Proxy for Secure Storage -on post-fs-data - mkdir /data/vendor/rebootescrow 0770 hsm hsm - mkdir /data/vendor/ss 0770 root system - mkdir /mnt/vendor/persist/ss 0770 root system - restorecon_recursive /mnt/vendor/persist/ss - symlink /mnt/vendor/persist/ss /data/vendor/ss/persist - chown root system /data/vendor/ss/persist - chmod 0770 /data/vendor/ss/persist - symlink /dev/block/platform/13200000\.ufs/by-name/trusty_persist /data/vendor/ss/persist/0 - chown system system /data/vendor/ss/persist/0 - chown system system /data/vendor/ss/persist/nsp - - restart storageproxyd service storageproxyd /vendor/bin/storageproxyd -d /dev/trusty-ipc-dev0 \ -r /dev/sg1 -p /data/vendor/ss -t ufs diff --git a/device.mk b/device.mk index 8c10ffa0..47a7672b 100644 --- a/device.mk +++ b/device.mk @@ -356,7 +356,8 @@ PRODUCT_COPY_FILES += \ device/google/zuma/conf/ueventd.zuma.rc:$(TARGET_COPY_OUT_VENDOR)/etc/ueventd.rc PRODUCT_COPY_FILES += \ - device/google/zuma/conf/init.zuma.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.zuma.rc + device/google/zuma/conf/init.zuma.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.zuma.rc \ + device/google/zuma/conf/init.efs.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.efs.rc ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_COPY_FILES += \ @@ -378,7 +379,8 @@ PRODUCT_PACKAGES += \ PRODUCT_COPY_FILES += \ device/google/$(TARGET_BOARD_PLATFORM)/conf/fstab.persist:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.persist \ - device/google/$(TARGET_BOARD_PLATFORM)/conf/fstab.modem:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.modem + device/google/$(TARGET_BOARD_PLATFORM)/conf/fstab.modem:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.modem \ + device/google/$(TARGET_BOARD_PLATFORM)/conf/fstab.efs:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.efs # Shell scripts PRODUCT_PACKAGES += \