From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gerhard Pircher Date: Fri, 06 May 2011 19:33:52 +0200 Subject: [U-Boot] understanding mkimage a bit more In-Reply-To: References: Message-ID: <20110506173352.25100@gmx.net> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de -------- Original-Nachricht -------- > Datum: Fri, 6 May 2011 09:24:27 -0700 > Von: Charles Krinke > An: u-boot at lists.denx.de > Betreff: [U-Boot] understanding mkimage a bit more > I can create a uImage with mkimage with "-C gzip" and it boots fine. > If I use "-C none", it hangs on boot with bootm in u-boot. The > arguments below come directly from the linux-2.6.35.12 kernel which > creates uImage from vmlinux.bin.gz (which is already compressed, I > know, but that is a different issue). > > In trying to work through how mkimage, uboot, objdump and objcopy > interact, my The question becomes "Why does a uImage created with -C > gzip boot with bootm and a uImage created with -C none hang?" > > In both > $ scripts/mkuboot.sh -A ppc -O linux -T kernel -C gzip -a 0x00000000 > -e 0x00000000 -n Linux-2.6.35.12-svn438 -d ./vmlinux.bin.gz > /tftpboot/uImage > Image Name: Linux-2.6.35.12-svn438 > Created: Fri May 6 09:05:42 2011 > Image Type: PowerPC Linux Kernel Image (gzip compressed) > Data Size: 1714808 Bytes = 1674.62 kB = 1.64 MB > Load Address: 0x00000000 > Entry Point: 0x00000000 > > $ scripts/mkuboot.sh -A ppc -O linux -T kernel -C none -a 0x00000000 > -e 0x00000000 -n Linux-2.6.35.12-svn438 -d ./vmlinux.bin.gz > /tftpboot/uImage > Image Name: Linux-2.6.35.12-svn438 > Created: Fri May 6 09:10:31 2011 > Image Type: PowerPC Linux Kernel Image (uncompressed) > Data Size: 1714808 Bytes = 1674.62 kB = 1.64 MB > Load Address: 0x00000000 > Entry Point: 0x00000000 > ckrinke at hwa:~/svn/trunk/linux-2.6.35.12$ > ckrinke at hwa:~/svn/trunk/linux-2.6.35.12$ You wrap a compressed kernel image in an uImage that is marked as 'uncompressed'. Thus U-Boot doesn't decompress the uImage and tries to directly execute the gzipped data. Decompress vmlinux.bin.gz with "gzip -d" before converting it with mkuboot.sh and it should work. regards, Gerhard -- Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de