fdt_support: delete force argument of fdt_chosen()
After all, we have realized "force" argument is completely useless. fdt_chosen() was always called with force = 1. We should always want to do the same thing (set appropriate value to the property) even if the property already exists. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
dbe963ae51
commit
bc6ed0f9dc
@ -581,7 +581,7 @@ static int do_fdt(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||
initrd_end = simple_strtoul(argv[3], NULL, 16);
|
||||
}
|
||||
|
||||
fdt_chosen(working_fdt, 1);
|
||||
fdt_chosen(working_fdt);
|
||||
fdt_initrd(working_fdt, initrd_start, initrd_end);
|
||||
|
||||
#if defined(CONFIG_FIT_SIGNATURE)
|
||||
|
@ -262,12 +262,11 @@ int fdt_initrd(void *fdt, ulong initrd_start, ulong initrd_end)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int fdt_chosen(void *fdt, int force)
|
||||
int fdt_chosen(void *fdt)
|
||||
{
|
||||
int nodeoffset;
|
||||
int err;
|
||||
char *str; /* used to set string properties */
|
||||
const char *path;
|
||||
|
||||
err = fdt_check_header(fdt);
|
||||
if (err < 0) {
|
||||
@ -280,38 +279,25 @@ int fdt_chosen(void *fdt, int force)
|
||||
if (nodeoffset < 0)
|
||||
return nodeoffset;
|
||||
|
||||
/*
|
||||
* Create /chosen properites that don't exist in the fdt.
|
||||
* If the property exists, update it only if the "force" parameter
|
||||
* is true.
|
||||
*/
|
||||
str = getenv("bootargs");
|
||||
if (str != NULL) {
|
||||
path = fdt_getprop(fdt, nodeoffset, "bootargs", NULL);
|
||||
if ((path == NULL) || force) {
|
||||
err = fdt_setprop(fdt, nodeoffset,
|
||||
"bootargs", str, strlen(str)+1);
|
||||
if (err < 0)
|
||||
printf("WARNING: could not set bootargs %s.\n",
|
||||
fdt_strerror(err));
|
||||
}
|
||||
err = fdt_setprop(fdt, nodeoffset,
|
||||
"bootargs", str, strlen(str)+1);
|
||||
if (err < 0)
|
||||
printf("WARNING: could not set bootargs %s.\n",
|
||||
fdt_strerror(err));
|
||||
}
|
||||
|
||||
#ifdef CONFIG_OF_STDOUT_VIA_ALIAS
|
||||
path = fdt_getprop(fdt, nodeoffset, "linux,stdout-path", NULL);
|
||||
if ((path == NULL) || force)
|
||||
err = fdt_fixup_stdout(fdt, nodeoffset);
|
||||
err = fdt_fixup_stdout(fdt, nodeoffset);
|
||||
#endif
|
||||
|
||||
#ifdef OF_STDOUT_PATH
|
||||
path = fdt_getprop(fdt, nodeoffset, "linux,stdout-path", NULL);
|
||||
if ((path == NULL) || force) {
|
||||
err = fdt_setprop(fdt, nodeoffset,
|
||||
"linux,stdout-path", OF_STDOUT_PATH, strlen(OF_STDOUT_PATH)+1);
|
||||
if (err < 0)
|
||||
printf("WARNING: could not set linux,stdout-path %s.\n",
|
||||
fdt_strerror(err));
|
||||
}
|
||||
err = fdt_setprop(fdt, nodeoffset, "linux,stdout-path",
|
||||
OF_STDOUT_PATH, strlen(OF_STDOUT_PATH)+1);
|
||||
if (err < 0)
|
||||
printf("WARNING: could not set linux,stdout-path %s.\n",
|
||||
fdt_strerror(err));
|
||||
#endif
|
||||
|
||||
return err;
|
||||
|
@ -463,7 +463,7 @@ int image_setup_libfdt(bootm_headers_t *images, void *blob,
|
||||
ulong *initrd_end = &images->initrd_end;
|
||||
int ret;
|
||||
|
||||
if (fdt_chosen(blob, 1) < 0) {
|
||||
if (fdt_chosen(blob) < 0) {
|
||||
puts("ERROR: /chosen node create failed");
|
||||
puts(" - must RESET the board to recover.\n");
|
||||
return -1;
|
||||
|
@ -16,7 +16,7 @@ u32 fdt_getprop_u32_default_node(const void *fdt, int off, int cell,
|
||||
const char *prop, const u32 dflt);
|
||||
u32 fdt_getprop_u32_default(const void *fdt, const char *path,
|
||||
const char *prop, const u32 dflt);
|
||||
int fdt_chosen(void *fdt, int force);
|
||||
int fdt_chosen(void *fdt);
|
||||
int fdt_initrd(void *fdt, ulong initrd_start, ulong initrd_end);
|
||||
void do_fixup_by_path(void *fdt, const char *path, const char *prop,
|
||||
const void *val, int len, int create);
|
||||
|
Loading…
Reference in New Issue
Block a user