X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/7aa11efc1796c29d446eca99ec7d9bc7ed2c0072..9462cdba159035c9929d1ecb1a6705b0cfe1e079:/target/linux/rb532/base-files/sbin/cf2nand diff --git a/target/linux/rb532/base-files/sbin/cf2nand b/target/linux/rb532/base-files/sbin/cf2nand index fb3717499..5b838dbbb 100755 --- a/target/linux/rb532/base-files/sbin/cf2nand +++ b/target/linux/rb532/base-files/sbin/cf2nand @@ -28,8 +28,8 @@ mount -t "$fstype" /dev/root /tmp/cf2nand/rootfs || { exit 1 } -boot="$(find_mtd_part 'RouterBoard NAND Boot')" -main="$(find_mtd_part 'RouterBoard NAND Main')" +boot="$(find_mtd_part 'Routerboard NAND boot')" +main="$(find_mtd_part 'rootfs')" [ -z "$boot" -o -z "$main" ] && { echo "Cannot find NAND Flash partitions" exit 1 @@ -45,7 +45,7 @@ mount -t yaffs2 "$boot" /tmp/cf2nand/p1 mount -t yaffs2 "$main" /tmp/cf2nand/p2 echo "Copying kernel..." -copy_kernel /dev/cf/card0/part1 /tmp/cf2nand/p1/kernel "root=/dev/mtdblock1 rootfstype=yaffs2 init=/etc/preinit " 2>/dev/null >/dev/null +copy_kernel /dev/cfa1 /tmp/cf2nand/p1/kernel "root=/dev/mtdblock1 rootfstype=yaffs2 init=/etc/preinit " 2>/dev/null >/dev/null umount /tmp/cf2nand/p1 rmdir /tmp/cf2nand/p1 @@ -53,6 +53,11 @@ echo "Copying filesystem..." ( cd /tmp/cf2nand/rootfs; tar c . ) | ( cd /tmp/cf2nand/p2; tar x ) echo "chmod ugo+x /" > /tmp/cf2nand/p2/etc/uci-defaults/set_root_permission sync +# Use kexec is present +[ -x /usr/bin/kexec ] && { + kexec -l /tmp/cf2nand/p1/kernel --command-line="$(cat /proc/cmdline) root=/dev/mtdblock1 rootfstype=yaffs2 init=/etc/preinit" + kexec -e +} umount /tmp/cf2nand/p2 rmdir /tmp/cf2nand/p2