From 06688cf1194b9bb41e4291161b26cad27adbba78 Mon Sep 17 00:00:00 2001 From: Emil Kosz Date: Sat, 19 Sep 2026 16:23:25 +0200 Subject: [PATCH] fstab: make fstabs match stock + init script more --- recovery.fstab | 23 ++-- rootdir/etc/fstab.qcom | 20 +++- rootdir/etc/init.target.rc | 220 +------------------------------------ 3 files changed, 33 insertions(+), 230 deletions(-) diff --git a/recovery.fstab b/recovery.fstab index ad58ee7..43a5b4a 100644 --- a/recovery.fstab +++ b/recovery.fstab @@ -1,11 +1,14 @@ -/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc default recoveryonly -/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc default recoveryonly -/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 default recoveryonly -/dev/block/platform/msm_sdcc.1/by-name/userdata /data auto default wait,length=-16384 -/dev/block/platform/msm_sdcc.1/by-name/cache /cache auto default recoveryonly -/dev/block/mmcblk1p1 /sdcard auto default recoveryonly +/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults recoveryonly +/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults recoveryonly +/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 defaults wait +/dev/block/platform/msm_sdcc.1/by-name/userdata /data auto defaults wait,length=-16384 +/dev/block/platform/msm_sdcc.1/by-name/cache /cache auto defaults wait +/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 defaults wait + +/dev/block/platform/msm_sdcc.1/by-name/efs /efs ext4 defaults wait +/dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem vfat defaults wait +/dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware vfat defaults wait +/dev/block/platform/msm_sdcc.1/by-name/hidden /preload ext4 defaults recoveryonly + +/dev/block/mmcblk1p1 /sdcard auto defaults -/dev/block/platform/msm_sdcc.1/by-name/efs /efs ext4 default recoveryonly -/dev/block/platform/msm_sdcc.1/by-name/apnhlos /modem emmc default recoveryonly -/dev/block/platform/msm_sdcc.1/by-name/modem /mdm emmc default recoveryonly -/dev/block/platform/msm_sdcc.1/by-name/hidden /preload ext4 default recoveryonly diff --git a/rootdir/etc/fstab.qcom b/rootdir/etc/fstab.qcom index 6c28bbf..6f9cf3c 100644 --- a/rootdir/etc/fstab.qcom +++ b/rootdir/etc/fstab.qcom @@ -1,6 +1,16 @@ -# Ported from stock boot.img -/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,errors=panic wait -/dev/block/platform/msm_sdcc.1/by-name/userdata /data auto nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check,encryptable=footer -/devices/msm_sdcc.2/mmc_host/mmc* auto auto defaults voldmanaged=extSdCard:auto,noemulatedsd -/devices/platform/msm_hsusb_host/usb* auto auto defaults voldmanaged=usb:auto +/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,errors=panic wait +/dev/block/platform/msm_sdcc.1/by-name/userdata /data auto nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check,encryptable=footer +# In stock, the following are mounted in init.target.rc. We do it in the fstab. +/dev/block/platform/msm_sdcc.1/by-name/cache /cache auto nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check +/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check +/dev/block/platform/msm_sdcc.1/by-name/efs /efs ext4 nosuid,nodev,noatime,noauto_da_alloc,discard,journal_async_commit,errors=panic wait,check + +/dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware:s0 wait,check +/dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware:s0 wait,check + +/devices/msm_sdcc.2/mmc_host/mmc* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata +/devices/platform/msm_hsusb_host/usb* auto auto defaults voldmanaged=usb:auto + +# Not done in stock, but newer Android versions might need a bit extra memory. +/dev/block/zram0 none swap defaults zramsize=75%,max_comp_streams=4,swapprio=10,notrim \ No newline at end of file diff --git a/rootdir/etc/init.target.rc b/rootdir/etc/init.target.rc index e9388d5..243c1db 100755 --- a/rootdir/etc/init.target.rc +++ b/rootdir/etc/init.target.rc @@ -1,88 +1,16 @@ -# Copyright (c) 2012, 2014, 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. -# -# - on early-init mkdir /firmware 0771 system system mkdir /firmware-modem 0771 system system - symlink /data/tombstones /tombstones on fs mount_all fstab.qcom swapon_all fstab.qcom - # Keeping following partitions outside fstab file. As user may not have - # these partition flashed on the device. Failure to mount any partition in fstab file - # results in failure to launch late-start class. - - wait /dev/block/platform/msm_sdcc.1/by-name/cache - check_fs /dev/block/platform/msm_sdcc.1/by-name/cache ext4 - mount ext4 /dev/block/platform/msm_sdcc.1/by-name/cache /cache nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic - - wait /dev/block/platform/msm_sdcc.1/by-name/persist - check_fs /dev/block/platform/msm_sdcc.1/by-name/persist ext4 - mount ext4 /dev/block/platform/msm_sdcc.1/by-name/persist /persist nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic - - wait /dev/block/platform/msm_sdcc.1/by-name/efs - check_fs /dev/block/platform/msm_sdcc.1/by-name/efs ext4 - mount ext4 /dev/block/platform/msm_sdcc.1/by-name/efs /efs nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit,errors=panic chown system radio /efs chmod 0771 /efs restorecon -R /efs chmod 0644 /dev/hw_random - -on fs_sec_selinux - wait /dev/block/platform/msm_sdcc.1/by-name/modem - mount vfat /dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware:s0 - - wait /dev/block/platform/msm_sdcc.1/by-name/apnhlos - mount vfat /dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware:s0 - -on fs_selinux - wait /dev/block/platform/msm_sdcc.1/by-name/modem - mount vfat /dev/block/platform/msm_sdcc.1/by-name/modem /firmware-modem ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337 - - wait /dev/block/platform/msm_sdcc.1/by-name/apnhlos - mount vfat /dev/block/platform/msm_sdcc.1/by-name/apnhlos /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337 - -on post-fs-data - mkdir /data/tombstones 0771 system system - mkdir /tombstones/modem 0771 system system - -# Mobicore - export MC_AUTH_TOKEN_PATH /efs - -# set device node permissions for TLC apps - chmod 700 /dev/mobicore - chmod 666 /dev/mobicore-user - chown system system /dev/mobicore - chown radio system /dev/mobicore-user on boot insmod /system/lib/modules/adsprpc.ko # Enable writing to led blink node from userspace @@ -93,16 +21,6 @@ on boot # Enable Focaltech touch controller auto firmware update write /sys/bus/i2c/drivers/ft5x06_ts/5-0038/update_fw 1 -#Start the qcom-system-daemon service -service qcomsysd /system/bin/qcom-system-daemon - class main - -#start camera server as daemon -service qcamerasvr /system/bin/mm-qcamera-daemon - class main - user camera - group camera system inet input graphics - # Allow usb charging to be disabled persistently on property:persist.usb.chgdisabled=1 write /sys/class/power_supply/battery/charging_enabled 0 @@ -110,136 +28,8 @@ on property:persist.usb.chgdisabled=1 on property:persist.usb.chgdisabled=0 write /sys/class/power_supply/battery/charging_enabled 1 -service time_daemon /system/bin/time_daemon - class late_start - user root - group root - -service mpdecision /system/bin/mpdecision --avg_comp - class main - user root - disabled - -service thermal-engine /system/bin/thermal-engine - class main - user root - socket thermal-send-client stream 0666 system system - socket thermal-recv-client stream 0660 system system - socket thermal-recv-passive-client stream 0666 system system - group root - -service qrngp /system/bin/qrngp - class main - user root - group root - oneshot - disabled - -on property:sys.boot_completed=1 - start qrngp - -service qseecomd /system/bin/qseecomd - class core - user root - group root - -service audiod /system/bin/audiod - class late_start - user system - group system - -service adsprpcd /system/bin/adsprpcd - class main - user media - group media -service mcStarter /system/bin/mcStarter tbase300 - class core - user root - group root - disabled - oneshot - -service run-mobicore /system/bin/mcDriverDaemon - class core - user system - group system - disabled - -on property:sys.qseecomd.enable=true - start mcStarter - -on property:sys.mobicore.loaded=true - start run-mobicore - -service imsqmidaemon /system/bin/imsqmidaemon - class main - user system - socket ims_qmid stream 0660 system radio - group radio net_raw log qcom_diag - -service imsdatadaemon /system/bin/imsdatadaemon - class main - user system - socket ims_datad stream 0660 system radio - group system wifi radio inet net_raw log qcom_diag net_admin - disabled - -on property:sys.ims.QMI_DAEMON_STATUS=1 - start imsdatadaemon - -service ims_rtp_daemon /system/bin/ims_rtp_daemon - class main - user system - socket ims_rtpd stream 0660 system radio - group radio net_raw diag qcom_diag log - disabled - -on property:sys.ims.DATA_DAEMON_STATUS=1 - start ims_rtp_daemon - -service wcnss-service /system/bin/wcnss_service - class main - user system - group system wifi radio - oneshot - -#service ppd /system/bin/mm-pp-daemon -# class late_start -# SecEDS -service TvoutService_C /system/bin/bintvoutservice - class main - user system - group graphics -on property:ro.SecEDS.enable=false - stop TvoutService_C - disabled - user system - socket pps stream 0660 system system - group system graphics - -#on property:init.svc.surfaceflinger=stopped -# stop ppd - -#on property:init.svc.surfaceflinger=running -# start ppd - -# Secure Storage startup -service secure_storage /system/bin/secure_storage_daemon - class core - user system - group system - disabled - -on property:ro.securestorage.support=true - mkdir /dev/.secure_storage - chmod 0711 /dev/.secure_storage - chown system system /dev/.secure_storage - restorecon -R /dev/.secure_storage - start secure_storage - -on property:ro.securestorage.knox=true - mkdir /dev/.secure_storage - chmod 0711 /dev/.secure_storage - chown system system /dev/.secure_storage - restorecon -R /dev/.secure_storage - start secure_storage \ No newline at end of file +#service wcnss-service /system/bin/wcnss_service +# class main +# user system +# group system wifi radio +# oneshot