[oe-commits] org.oe.dev zaurus-updater: Try to unb0rk the flashing of Akita kernels. Still needs work

coredump2 commit openembedded-commits at lists.openembedded.org
Wed Dec 5 00:06:43 UTC 2007


zaurus-updater: Try to unb0rk the flashing of Akita kernels. Still needs work

Author: coredump2 at openembedded.org
Branch: org.openembedded.dev
Revision: c44db3b9dd388ba7d6071532d6536625c571b3bd
ViewMTN: http://monotone.openembedded.org/revision/info/c44db3b9dd388ba7d6071532d6536625c571b3bd
Files:
1
packages/zaurus-updater/zaurus-updater/updater.sh
packages/zaurus-updater/zaurus-updater.bb
Diffs:

#
# mt diff -rab7efb1ce3f981284a926a31425328923c23b7f0 -rc44db3b9dd388ba7d6071532d6536625c571b3bd
#
# 
# 
# patch "packages/zaurus-updater/zaurus-updater/updater.sh"
#  from [b20b6450310cee01b3ad65ab6cf78e66fe1fdb08]
#    to [e1ba468c48cffe5be28dc2330bc84fe19eb769a6]
# 
# patch "packages/zaurus-updater/zaurus-updater.bb"
#  from [7a273ae9f26d4da3830acc3f36b0dd21a6432e48]
#    to [f1451f8dec1ba98d2ba1639511ea27d259ec7bec]
# 
============================================================
--- packages/zaurus-updater/zaurus-updater/updater.sh	b20b6450310cee01b3ad65ab6cf78e66fe1fdb08
+++ packages/zaurus-updater/zaurus-updater/updater.sh	e1ba468c48cffe5be28dc2330bc84fe19eb769a6
@@ -1,5 +1,4 @@
 #!/bin/sh
-
 #
 # One updater.sh to rule them all
 #
@@ -22,10 +21,14 @@
 #
 # 2007.11.23 Koen Kooi
 # - consistent error messages
-## - fix flashing from case sensitive filesystem (e.g. ext2)
+# - fix flashing from case sensitive filesystem (e.g. ext2)
+#
 # 2007.11.23 Matthias 'CoreDump' Hentges
 # - Always treat MTD_PART_SIZE as HEX when comparing sizes
 # - Thanks to ZeroChaos for debugging
+#
+# 2007.12.04 Matthias 'CoreDump' Hentges
+# - Unb0rk flashing of Akita kernels
 
 DATAPATH=$1
 TMPPATH=/tmp/update
@@ -190,42 +193,53 @@ do_flashing()
         /sbin/verchg -m $MTMPNAME $TMPHEAD $MODULEID $MTD_PART_SIZE > /dev/null 2>&1
     fi
 
-	#loop
-	while [ $DATAPOS -lt $DATASIZE ]
-	do
-		#data create
-		bcut -a $DATAPOS -s $ONESIZE -o $TMPDATA $TARGETFILE
-		TMPSIZE=`wc -c $TMPDATA`
-		TMPSIZE=`echo $TMPSIZE | cut -d' ' -f1`
-		DATAPOS=`expr $DATAPOS + $TMPSIZE`
+	# Looks like Akita is quite unique when it comes to kernel flashing
+	
+	if [ "$ZAURUS" = "akita" ] && [ $FLASH_TYPE = kernel ]; then 
+		echo "Note: Flashing Akita kernel"
+		echo $TARGETFILE':'$DATASIZE'bytes'
+		echo '                ' > /tmp/data
+		/sbin/nandlogical $LOGOCAL_MTD WRITE 0x60100 16 /tmp/data > /dev/null 2>&1
+		/sbin/nandlogical $LOGOCAL_MTD WRITE 0xe0000 $DATASIZE $TARGETFILE > /dev/null 2>&1
+		/sbin/nandlogical $LOGOCAL_MTD WRITE 0x21bff0 16 /tmp/data > /dev/null 2>&1	
+		echo "Kernel: Finished"
+	else
+		#loop
+		while [ $DATAPOS -lt $DATASIZE ]
+		do
+			#data create
+			bcut -a $DATAPOS -s $ONESIZE -o $TMPDATA $TARGETFILE
+			TMPSIZE=`wc -c $TMPDATA`
+			TMPSIZE=`echo $TMPSIZE | cut -d' ' -f1`
+			DATAPOS=`expr $DATAPOS + $TMPSIZE`
 
-		#handle data file
-		if [ $ISLOGICAL = 0 ]
-		then
-			next_addr=`/sbin/nandcp -a $ADDR $TMPDATA $TARGET_MTD  2>/dev/null | fgrep "mtd address" | cut -d- -f2 | cut -d\( -f1`
-			if [ "$next_addr" = "" ]; then
-				echo "Error: flash write"
-				rm $TMPDATA > /dev/null 2>&1
-				RESULT=3
-				break;
+			#handle data file
+			if [ $ISLOGICAL = 0 ]
+			then
+				next_addr=`/sbin/nandcp -a $ADDR $TMPDATA $TARGET_MTD  2>/dev/null | fgrep "mtd address" | cut -d- -f2 | cut -d\( -f1`
+				if [ "$next_addr" = "" ]; then
+					echo "Error: flash write"
+					rm $TMPDATA > /dev/null 2>&1
+					RESULT=3
+					break;
+				fi
+				ADDR=$next_addr
+			else
+				/sbin/nandlogical $LOGOCAL_MTD WRITE $ADDR $DATASIZE $TMPDATA > /dev/null 2>&1
+				ADDR=`expr $ADDR + $TMPSIZE`
 			fi
-			ADDR=$next_addr
-		else
-			/sbin/nandlogical $LOGOCAL_MTD WRITE $ADDR $DATASIZE $TMPDATA > /dev/null 2>&1
-			ADDR=`expr $ADDR + $TMPSIZE`
-		fi
 
-		rm $TMPDATA > /dev/null 2>&1
+			rm $TMPDATA > /dev/null 2>&1
 
-		#progress
-		SPNUM=0
-		while [ $SPNUM -lt $PROGSTEP ]
-		do
-			echo -n '.'
-			SPNUM=`expr $SPNUM + 1`
+			#progress
+			SPNUM=0
+			while [ $SPNUM -lt $PROGSTEP ]
+			do
+				echo -n '.'
+				SPNUM=`expr $SPNUM + 1`
+			done
 		done
-	done
-
+	fi
     echo ''
 
     #finish
============================================================
--- packages/zaurus-updater/zaurus-updater.bb	7a273ae9f26d4da3830acc3f36b0dd21a6432e48
+++ packages/zaurus-updater/zaurus-updater.bb	f1451f8dec1ba98d2ba1639511ea27d259ec7bec
@@ -1,7 +1,7 @@ LICENSE = "zaurus-updater"
 DESCRIPTION = "Encrypted shellscript for the Zaurus ROM update"
 DEPENDS = "encdec-updater-native"
 LICENSE = "zaurus-updater"
-PR = "r13"
+PR = "r14"
 
 PACKAGES = ""
 PACKAGE_ARCH = "${MACHINE_ARCH}"






More information about the Openembedded-commits mailing list