Correct vxWorks elf boot to load at correct address
authorStany MARCEL <stanypub@gmail.com>
Wed, 27 Nov 2013 13:48:43 +0000 (14:48 +0100)
committerTom Rini <trini@ti.com>
Fri, 13 Dec 2013 14:17:32 +0000 (09:17 -0500)
argv[0] contains bootvx (command name) not the load address, if called with
argv < 2 use load_addr, else use address argument given to the command.

Signed-off-by: Stany MARCEL <smarcel@novasys-ingenierie.com>
common/cmd_elf.c

index f741f6b83f942d967f5b1280e15db9c72e891062..ab9c7e332d97b200109e09e464b0fb786ac967c6 100644 (file)
@@ -156,16 +156,16 @@ int do_bootvx(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
         * If we don't know where the image is then we're done.
         */
 
-       if (argc < 1)
+       if (argc < 2)
                addr = load_addr;
        else
-               addr = simple_strtoul(argv[0], NULL, 16);
+               addr = simple_strtoul(argv[1], NULL, 16);
 
 #if defined(CONFIG_CMD_NET)
        /*
         * Check to see if we need to tftp the image ourselves before starting
         */
-       if ((argc == 1) && (strcmp(argv[0], "tftp") == 0)) {
+       if ((argc == 2) && (strcmp(argv[1], "tftp") == 0)) {
                if (NetLoop(TFTPGET) <= 0)
                        return 1;
                printf("Automatic boot of VxWorks image at address 0x%08lx ...\n",