X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/e6a8154811ab88f040bf77410f02cde203f3a41c..a3c0f30a1a298821bc58743924d3d1eaab7858bf:/openwrt/target/default/target_skeleton/etc/preinit diff --git a/openwrt/target/default/target_skeleton/etc/preinit b/openwrt/target/default/target_skeleton/etc/preinit index 28fe80526..c6ad0d706 100755 --- a/openwrt/target/default/target_skeleton/etc/preinit +++ b/openwrt/target/default/target_skeleton/etc/preinit @@ -7,14 +7,26 @@ if [ $(cat /proc/sys/reset) = 1 ] ; then export FAILSAFE=true while :; do { echo $(((X=(X+1)%8)%2)) > /proc/sys/diag; sleep $((X==0)); } done & else - mount | grep jffs2 1>&- || { + mount | grep jffs2 >&- + if [ $? = 0 ] ; then + mtd unlock rootfs + [ $(cat /proc/mtd | wc -l) = 6 ] && { + echo 5 > /proc/sys/diag + mtd unlock OpenWrt + mtd erase OpenWrt + jffs2root --move + } + mount -o remount,rw /dev/root / + else mtd unlock mtd4 mount -t jffs2 /dev/mtdblock/4 /jffs pivot_root /jffs /jffs/rom - } - mount none /dev -t devfs - mount none /proc -t proc - umount rom/proc + mount none /dev -t devfs + mount none /proc -t proc + umount rom/proc rom/dev + fi fi mount none /tmp -t ramfs +mkdir -p /dev/pts +mount none /dev/pts -t devpts exec /sbin/init