diff options
Diffstat (limited to 'target/linux/rb532/base-files')
-rwxr-xr-x | target/linux/rb532/base-files/sbin/cf2nand | 5 | ||||
-rwxr-xr-x | target/linux/rb532/base-files/sbin/wget2nand | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/target/linux/rb532/base-files/sbin/cf2nand b/target/linux/rb532/base-files/sbin/cf2nand index 146aa4f112..5b838dbbb9 100755 --- a/target/linux/rb532/base-files/sbin/cf2nand +++ b/target/linux/rb532/base-files/sbin/cf2nand @@ -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 diff --git a/target/linux/rb532/base-files/sbin/wget2nand b/target/linux/rb532/base-files/sbin/wget2nand index 2101195bca..b0f4205e78 100755 --- a/target/linux/rb532/base-files/sbin/wget2nand +++ b/target/linux/rb532/base-files/sbin/wget2nand @@ -55,6 +55,12 @@ echo "chmod ugo+x /" > /tmp/wget2nand/etc/uci-defaults/set_root_permission sync ls /tmp/wget2nand-boot/ ls /tmp/wget2nand/ +# use kexec if present +[ -x /usr/bin/kexec ] && { + kexec -l /tmp/wget2nand-boot/kernel --command-line="$(cat /proc/cmdline) root=$main rootfstype=yaffs2 init=/etc/preinit" + kexec -e +} + # unmount the partitions and remove the directories into which they were mounted umount /tmp/wget2nand-boot umount /tmp/wget2nand |