octeon: sysupgrade: get rootfsdev from kernel cmdline
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> SVN-Revision: 43517
This commit is contained in:
		@@ -1,11 +1,33 @@
 | 
				
			|||||||
#
 | 
					#
 | 
				
			||||||
# Copyright (C) 2010 OpenWrt.org
 | 
					# Copyright (C) 2014 OpenWrt.org
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
. /lib/functions/octeon.sh
 | 
					. /lib/functions/octeon.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					platform_get_rootfs() {
 | 
				
			||||||
 | 
						local rootfsdev
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if read cmdline < /proc/cmdline; then
 | 
				
			||||||
 | 
							case "$cmdline" in
 | 
				
			||||||
 | 
								*block2mtd=*)
 | 
				
			||||||
 | 
									rootfsdev="${cmdline##*block2mtd=}"
 | 
				
			||||||
 | 
									rootfsdev="${rootfsdev%%,*}"
 | 
				
			||||||
 | 
								;;
 | 
				
			||||||
 | 
								*root=*)
 | 
				
			||||||
 | 
									rootfsdev="${cmdline##*root=}"
 | 
				
			||||||
 | 
									rootfsdev="${rootfsdev%% *}"
 | 
				
			||||||
 | 
								;;
 | 
				
			||||||
 | 
							esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							echo "${rootfsdev}"
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
platform_do_upgrade() {
 | 
					platform_do_upgrade() {
 | 
				
			||||||
	local board=$(octeon_board_name)
 | 
						local board=$(octeon_board_name)
 | 
				
			||||||
 | 
						local rootfs="$(platform_get_rootfs)"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						[ -d "${rootfs}" ] || return 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	case "$board" in
 | 
						case "$board" in
 | 
				
			||||||
	erlite)
 | 
						erlite)
 | 
				
			||||||
@@ -22,7 +44,7 @@ platform_do_upgrade() {
 | 
				
			|||||||
		mount -t vfat /dev/sda1 /boot
 | 
							mount -t vfat /dev/sda1 /boot
 | 
				
			||||||
		tar xf $tar_file sysupgrade-erlite/kernel -O > /boot/vmlinux.64
 | 
							tar xf $tar_file sysupgrade-erlite/kernel -O > /boot/vmlinux.64
 | 
				
			||||||
		md5sum /boot/vmlinux.64 | cut -f1 -d " " > /boot/vmlinux.64.md5
 | 
							md5sum /boot/vmlinux.64 | cut -f1 -d " " > /boot/vmlinux.64.md5
 | 
				
			||||||
		tar xf $tar_file sysupgrade-erlite/root -O | dd of=/dev/sda2 bs=4096
 | 
							tar xf $tar_file sysupgrade-erlite/root -O | dd of="${rootfs}" bs=4096
 | 
				
			||||||
		sync
 | 
							sync
 | 
				
			||||||
		umount /mnt
 | 
							umount /mnt
 | 
				
			||||||
		return 0
 | 
							return 0
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user