]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
cmd: fdt: Use start/size for chosen instead of start/end
authorSean Anderson <sean.anderson@seco.com>
Tue, 22 Mar 2022 20:59:21 +0000 (16:59 -0400)
committerTom Rini <trini@konsulko.com>
Fri, 1 Apr 2022 19:03:13 +0000 (15:03 -0400)
Most U-Boot command deal with start/size instead of start/end. Convert
the "fdt chosen" command to use these semantics as well. The only user
of this subcommand is vexpress, so convert the smhload command to use
this as well. We don't bother renaming the variable in vexpress64's
bootcommand, since it will be rewritten in the next commit.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
arch/arm/lib/semihosting.c
cmd/fdt.c

index d08003cef1e783091db2c58e42d02494e78af44f..45cd566cfc876ff3d73eb7e5621543dc758a1b33 100644 (file)
@@ -171,7 +171,7 @@ long smh_seek(long fd, long pos)
 }
 
 static int smh_load_file(const char * const name, ulong load_addr,
-                        ulong *end_addr)
+                        ulong *size)
 {
        long fd;
        long len;
@@ -191,11 +191,11 @@ static int smh_load_file(const char * const name, ulong load_addr,
        smh_close(fd);
 
        if (ret == len) {
-               *end_addr = load_addr + len - 1;
+               *size = len;
                printf("loaded file %s from %08lX to %08lX, %08lX bytes\n",
                       name,
                       load_addr,
-                      *end_addr,
+                      load_addr + len - 1,
                       len);
        } else if (ret >= 0) {
                ret = -EAGAIN;
@@ -214,22 +214,22 @@ static int do_smhload(struct cmd_tbl *cmdtp, int flag, int argc,
 {
        if (argc == 3 || argc == 4) {
                ulong load_addr;
-               ulong end_addr = 0;
+               ulong size = 0;
                int ret;
-               char end_str[64];
+               char size_str[64];
 
                load_addr = hextoul(argv[2], NULL);
                if (!load_addr)
                        return -1;
 
-               ret = smh_load_file(argv[1], load_addr, &end_addr);
+               ret = smh_load_file(argv[1], load_addr, &size);
                if (ret < 0)
                        return CMD_RET_FAILURE;
 
                /* Optionally save returned end to the environment */
                if (argc == 4) {
-                       sprintf(end_str, "0x%08lx", end_addr);
-                       env_set(argv[3], end_str);
+                       sprintf(size_str, "0x%08lx", size);
+                       env_set(argv[3], size_str);
                }
        } else {
                return CMD_RET_USAGE;
index 2a207bf2b51554aac48d2768a02636bff3a583f8..7d7cae88a2ac1e074514ac1b0df8bdc9f89adf00 100644 (file)
--- a/cmd/fdt.c
+++ b/cmd/fdt.c
@@ -638,7 +638,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
                if (argc == 4) {
                        initrd_start = hextoul(argv[2], NULL);
-                       initrd_end = hextoul(argv[3], NULL);
+                       initrd_end = initrd_start + hextoul(argv[3], NULL) - 1;
                }
 
                fdt_chosen(working_fdt);
@@ -1083,8 +1083,8 @@ static char fdt_help_text[] =
        "fdt rsvmem print                    - Show current mem reserves\n"
        "fdt rsvmem add <addr> <size>        - Add a mem reserve\n"
        "fdt rsvmem delete <index>           - Delete a mem reserves\n"
-       "fdt chosen [<start> <end>]          - Add/update the /chosen branch in the tree\n"
-       "                                        <start>/<end> - initrd start/end addr\n"
+       "fdt chosen [<start> <size>]         - Add/update the /chosen branch in the tree\n"
+       "                                        <start>/<size> - initrd start addr/size\n"
 #if defined(CONFIG_FIT_SIGNATURE)
        "fdt checksign [<addr>]              - check FIT signature\n"
        "                                        <start> - addr of key blob\n"