[hi3518ev200] CONFIG_SQUASHFS_EMBEDDED=y (#668)

pull/673/head
Dmitry Ermakov 2023-03-15 08:26:06 +03:00 committed by GitHub
parent b650d5503c
commit ec94162325
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 41 additions and 34 deletions

View File

@ -2121,8 +2121,8 @@ CONFIG_SQUASHFS_ZLIB=y
# CONFIG_SQUASHFS_LZO is not set # CONFIG_SQUASHFS_LZO is not set
CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_XZ=y
# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
# CONFIG_SQUASHFS_EMBEDDED is not set CONFIG_SQUASHFS_EMBEDDED=y
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=2
# CONFIG_VXFS_FS is not set # CONFIG_VXFS_FS is not set
# CONFIG_MINIX_FS is not set # CONFIG_MINIX_FS is not set
# CONFIG_OMFS_FS is not set # CONFIG_OMFS_FS is not set

View File

@ -1,7 +1,6 @@
#!/bin/sh #!/bin/sh
on_exit() on_exit() {
{
mountpoint -q /proc && umount /proc mountpoint -q /proc && umount /proc
exec /sbin/init $* exec /sbin/init $*
} }
@ -11,14 +10,15 @@ trap on_exit 0
mount -t proc proc /proc || exit mount -t proc proc /proc || exit
grep -q overlay /proc/filesystems || exit grep -q overlay /proc/filesystems || exit
if ! grep -q 'root=.*nfs\|mmcblk\|ram' /proc/cmdline; then
if grep -q ubifs /proc/cmdline; then if grep -q ubifs /proc/cmdline; then
mount -t ubifs ubi0:rootfs_data /overlay mount -t ubifs ubi0:rootfs_data /overlay
else else
mtdblkdev=`awk -F ':' '/rootfs_data/ {print $1}' /proc/mtd | sed 's/mtd/mtdblock/'` mtdblkdev=$(awk -F ':' '/rootfs_data/ {print $1}' /proc/mtd | sed 's/mtd/mtdblock/')
mtdchrdev=`grep 'rootfs_data' /proc/mtd | cut -d: -f1` mtdchrdev=$(grep 'rootfs_data' /proc/mtd | cut -d: -f1)
mount -t jffs2 /dev/${mtdblkdev} /overlay mount -t jffs2 /dev/${mtdblkdev} /overlay
if [ $? -ne 0 ] || { dmesg | grep "jffs2.*: Magic bitmask.*not found" > /dev/null 2>&1; } then if [ $? -ne 0 ] || { dmesg | grep "jffs2.*: Magic bitmask.*not found" >/dev/null 2>&1; }; then
echo "jffs2 health check error, format required!" echo "jffs2 health check error, format required!"
flash_eraseall -j /dev/${mtdchrdev} flash_eraseall -j /dev/${mtdchrdev}
echo "Done! Remounting..." echo "Done! Remounting..."
@ -32,15 +32,22 @@ else
fi fi
if grep -q overlayfs /proc/filesystems; then if grep -q overlayfs /proc/filesystems; then
mount -t overlayfs overlayfs -o lowerdir=/,upperdir=/overlay,ro /mnt || { umount /overlay; exit; } mount -t overlayfs overlayfs -o lowerdir=/,upperdir=/overlay,ro /mnt || {
umount /overlay
exit
}
else else
overlay_rootdir=/overlay/root overlay_rootdir=/overlay/root
overlay_workdir=/overlay/work overlay_workdir=/overlay/work
mkdir -p ${overlay_rootdir} ${overlay_workdir} mkdir -p ${overlay_rootdir} ${overlay_workdir}
mount -t overlay overlay -o lowerdir=/,upperdir=${overlay_rootdir},workdir=${overlay_workdir} /mnt || { umount /overlay; exit; } mount -t overlay overlay -o lowerdir=/,upperdir=${overlay_rootdir},workdir=${overlay_workdir} /mnt || {
umount /overlay
exit
}
fi fi
pivot_root /mnt /mnt/rom pivot_root /mnt /mnt/rom
mount -o noatime,move /rom/proc /proc mount -o noatime,move /rom/proc /proc
mount -o noatime,move /rom/dev /dev mount -o noatime,move /rom/dev /dev
mount -o noatime,move /rom/overlay /overlay mount -o noatime,move /rom/overlay /overlay
fi