openwrtv4/package/base-files/files.old/lib/firstboot/10_determine_parts
John Crispin 811d90ff40 mount_root: prepare base-files
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 36429
2013-04-25 19:02:32 +00:00

46 lines
932 B
Bash

#!/bin/sh
set_mtd_part() {
partname="rootfs_data"
mtdpart="$(find_mtd_part $partname)"
}
set_rom_part() {
rom=$(awk '/squashfs/ {print $2}' /proc/mounts)
}
set_jffs_part() {
jffs=$(awk '/jffs2/ {print $2}' /proc/mounts)
}
determine_mtd_part() {
set_mtd_part
if [ -z "$mtdpart" ]; then
echo "MTD partition not found."
exit 1
fi
}
determine_rom_part() {
check_skip || {
set_rom_part
if [ -z "$rom" ]; then
echo "You do not have a squashfs partition; aborting"
echo "(firstboot cannot be run on jffs2 based firmwares)"
exit 1
fi
}
}
determine_jffs2_part() {
check_skip || {
set_jffs_part
}
}
boot_hook_add switch2jffs determine_mtd_part
boot_hook_add jffs2reset determine_mtd_part
boot_hook_add switch2jffs determine_rom_part
boot_hook_add jffs2reset determine_rom_part
boot_hook_add switch2jffs determine_jffs2_part
boot_hook_add jffs2reset determine_jffs2_part