From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom Rini Date: Mon, 3 Oct 2016 09:36:49 -0400 Subject: [U-Boot] [U-Boot, RFC, v2] bootm: fix passing argc to standalone apps In-Reply-To: <1473409138-54696-1-git-send-email-Zubair.Kakakhel@imgtec.com> References: <1473409138-54696-1-git-send-email-Zubair.Kakakhel@imgtec.com> Message-ID: <20161003133649.GC4884@bill-the-cat> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Fri, Sep 09, 2016 at 09:18:58AM +0100, Zubair Lutfullah Kakakhel wrote: > This bug appears in b6396403 which makes u-boot unable to pass > arguments via bootm to a standalone application without this patch. > > Steps to reproduce. > > Compile a u-boot. Use mkimage to package the standalone hello_world.bin > file. > > e.g. For the MIPS Boston platform > > mkimage -n "hello" -A mips -O u-boot -C none -T standalone \ > -a 0xffffffff80200000 -d hello_world.bin \ > -ep 0xffffffff80200000 hello_out > > Then tftp hello_out and run it using > > boston # dhcp 192.168.154.45:hello_out > ... > boston # bootm $loadaddr 123 321 > > Without the patch the following output is observed. > > boston # bootm $loadaddr 123 321 > Image Name: hello > Image Type: MIPS U-Boot Standalone Program (uncompressed) > Data Size: 1240 Bytes = 1.2 KiB > Load Address: 80200000 > Entry Point: 80200000 > Verifying Checksum ... OK > Loading Standalone Program ... OK > Example expects ABI version 8 > Actual U-Boot ABI version 8 > Hello World > argc = 0 > argv[0] = "0xffffffff88000000" > > With the patch, you see the following. > > boston # bootm $loadaddr 123 321 > Image Name: hello > Image Type: MIPS U-Boot Standalone Program (uncompressed) > Data Size: 1240 Bytes = 1.2 KiB > Load Address: 80200000 > Entry Point: 80200000 > Verifying Checksum ... OK > Loading Standalone Program ... OK > Example expects ABI version 8 > Actual U-Boot ABI version 8 > Hello World > argc = 3 > argv[0] = "0xffffffff88000000" > argv[1] = "123" > argv[2] = "321" > argv[3] = "" > > Without the patch, the go command at the entry point seems to work. > > boston # go 0xffffffff80200000 123 321 > Example expects ABI version 8 > Actual U-Boot ABI version 8 > Hello World > argc = 3 > argv[0] = "0xffffffff80200000" > argv[1] = "123" > argv[2] = "321" > argv[3] = "" > Hit any key to exit ... > > Signed-off-by: Zubair Lutfullah Kakakhel > Reviewed-by: Simon Glass Applied to u-boot/master, thanks! -- Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: