last minute bugfixes
[openwrt-10.03/.git] / target / default / target_skeleton / etc / preinit
index 01df2058313bba8130a9da91fb7538d6df18507e..6507d2319c7f76d9b8fd90410928688ae2896672 100755 (executable)
@@ -8,8 +8,15 @@ if [ $(cat /proc/sys/reset) = 1 ] ; then
   while :; do { echo $(((X=(X+1)%8)%2)) > /proc/sys/diag; sleep $((X==0)); } done &
 else
   mount | grep jffs2 >&-
-  if [ $? = 0 ] && [ $(cat /proc/mtd | wc -l) = 6 ] ; then
-    jffs2root --move && reboot 
+  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