mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-05 08:26:59 +00:00
of: kexec: Remove FDT_PROP_* definitions
The FDT_PROP_* definitions make it harder to follow the code. Remove them, and use the actual string literals instead. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/af415c86cd2ba9c8a6bb2eaaf56c3198a24b23d3.1626267092.git.geert+renesas@glider.be Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
24519fa7f9
commit
cc6ef3d1fd
1 changed files with 15 additions and 25 deletions
|
@ -18,14 +18,6 @@
|
||||||
#include <linux/random.h>
|
#include <linux/random.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
|
|
||||||
/* relevant device tree properties */
|
|
||||||
#define FDT_PROP_KEXEC_ELFHDR "linux,elfcorehdr"
|
|
||||||
#define FDT_PROP_MEM_RANGE "linux,usable-memory-range"
|
|
||||||
#define FDT_PROP_INITRD_START "linux,initrd-start"
|
|
||||||
#define FDT_PROP_INITRD_END "linux,initrd-end"
|
|
||||||
#define FDT_PROP_BOOTARGS "bootargs"
|
|
||||||
#define FDT_PROP_KASLR_SEED "kaslr-seed"
|
|
||||||
#define FDT_PROP_RNG_SEED "rng-seed"
|
|
||||||
#define RNG_SEED_SIZE 128
|
#define RNG_SEED_SIZE 128
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -310,10 +302,10 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = fdt_delprop(fdt, chosen_node, FDT_PROP_KEXEC_ELFHDR);
|
ret = fdt_delprop(fdt, chosen_node, "linux,elfcorehdr");
|
||||||
if (ret && ret != -FDT_ERR_NOTFOUND)
|
if (ret && ret != -FDT_ERR_NOTFOUND)
|
||||||
goto out;
|
goto out;
|
||||||
ret = fdt_delprop(fdt, chosen_node, FDT_PROP_MEM_RANGE);
|
ret = fdt_delprop(fdt, chosen_node, "linux,usable-memory-range");
|
||||||
if (ret && ret != -FDT_ERR_NOTFOUND)
|
if (ret && ret != -FDT_ERR_NOTFOUND)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
@ -347,12 +339,12 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
|
|
||||||
/* add initrd-* */
|
/* add initrd-* */
|
||||||
if (initrd_load_addr) {
|
if (initrd_load_addr) {
|
||||||
ret = fdt_setprop_u64(fdt, chosen_node, FDT_PROP_INITRD_START,
|
ret = fdt_setprop_u64(fdt, chosen_node, "linux,initrd-start",
|
||||||
initrd_load_addr);
|
initrd_load_addr);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
ret = fdt_setprop_u64(fdt, chosen_node, FDT_PROP_INITRD_END,
|
ret = fdt_setprop_u64(fdt, chosen_node, "linux,initrd-end",
|
||||||
initrd_load_addr + initrd_len);
|
initrd_load_addr + initrd_len);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -362,11 +354,11 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
ret = fdt_delprop(fdt, chosen_node, FDT_PROP_INITRD_START);
|
ret = fdt_delprop(fdt, chosen_node, "linux,initrd-start");
|
||||||
if (ret && (ret != -FDT_ERR_NOTFOUND))
|
if (ret && (ret != -FDT_ERR_NOTFOUND))
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
ret = fdt_delprop(fdt, chosen_node, FDT_PROP_INITRD_END);
|
ret = fdt_delprop(fdt, chosen_node, "linux,initrd-end");
|
||||||
if (ret && (ret != -FDT_ERR_NOTFOUND))
|
if (ret && (ret != -FDT_ERR_NOTFOUND))
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
@ -374,8 +366,7 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
if (image->type == KEXEC_TYPE_CRASH) {
|
if (image->type == KEXEC_TYPE_CRASH) {
|
||||||
/* add linux,elfcorehdr */
|
/* add linux,elfcorehdr */
|
||||||
ret = fdt_appendprop_addrrange(fdt, 0, chosen_node,
|
ret = fdt_appendprop_addrrange(fdt, 0, chosen_node,
|
||||||
FDT_PROP_KEXEC_ELFHDR,
|
"linux,elfcorehdr", image->elf_load_addr,
|
||||||
image->elf_load_addr,
|
|
||||||
image->elf_headers_sz);
|
image->elf_headers_sz);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -391,8 +382,7 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
|
|
||||||
/* add linux,usable-memory-range */
|
/* add linux,usable-memory-range */
|
||||||
ret = fdt_appendprop_addrrange(fdt, 0, chosen_node,
|
ret = fdt_appendprop_addrrange(fdt, 0, chosen_node,
|
||||||
FDT_PROP_MEM_RANGE,
|
"linux,usable-memory-range", crashk_res.start,
|
||||||
crashk_res.start,
|
|
||||||
crashk_res.end - crashk_res.start + 1);
|
crashk_res.end - crashk_res.start + 1);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -400,17 +390,17 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
|
|
||||||
/* add bootargs */
|
/* add bootargs */
|
||||||
if (cmdline) {
|
if (cmdline) {
|
||||||
ret = fdt_setprop_string(fdt, chosen_node, FDT_PROP_BOOTARGS, cmdline);
|
ret = fdt_setprop_string(fdt, chosen_node, "bootargs", cmdline);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
} else {
|
} else {
|
||||||
ret = fdt_delprop(fdt, chosen_node, FDT_PROP_BOOTARGS);
|
ret = fdt_delprop(fdt, chosen_node, "bootargs");
|
||||||
if (ret && (ret != -FDT_ERR_NOTFOUND))
|
if (ret && (ret != -FDT_ERR_NOTFOUND))
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* add kaslr-seed */
|
/* add kaslr-seed */
|
||||||
ret = fdt_delprop(fdt, chosen_node, FDT_PROP_KASLR_SEED);
|
ret = fdt_delprop(fdt, chosen_node, "kaslr-seed");
|
||||||
if (ret == -FDT_ERR_NOTFOUND)
|
if (ret == -FDT_ERR_NOTFOUND)
|
||||||
ret = 0;
|
ret = 0;
|
||||||
else if (ret)
|
else if (ret)
|
||||||
|
@ -419,26 +409,26 @@ void *of_kexec_alloc_and_setup_fdt(const struct kimage *image,
|
||||||
if (rng_is_initialized()) {
|
if (rng_is_initialized()) {
|
||||||
u64 seed = get_random_u64();
|
u64 seed = get_random_u64();
|
||||||
|
|
||||||
ret = fdt_setprop_u64(fdt, chosen_node, FDT_PROP_KASLR_SEED, seed);
|
ret = fdt_setprop_u64(fdt, chosen_node, "kaslr-seed", seed);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
} else {
|
} else {
|
||||||
pr_notice("RNG is not initialised: omitting \"%s\" property\n",
|
pr_notice("RNG is not initialised: omitting \"%s\" property\n",
|
||||||
FDT_PROP_KASLR_SEED);
|
"kaslr-seed");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* add rng-seed */
|
/* add rng-seed */
|
||||||
if (rng_is_initialized()) {
|
if (rng_is_initialized()) {
|
||||||
void *rng_seed;
|
void *rng_seed;
|
||||||
|
|
||||||
ret = fdt_setprop_placeholder(fdt, chosen_node, FDT_PROP_RNG_SEED,
|
ret = fdt_setprop_placeholder(fdt, chosen_node, "rng-seed",
|
||||||
RNG_SEED_SIZE, &rng_seed);
|
RNG_SEED_SIZE, &rng_seed);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
get_random_bytes(rng_seed, RNG_SEED_SIZE);
|
get_random_bytes(rng_seed, RNG_SEED_SIZE);
|
||||||
} else {
|
} else {
|
||||||
pr_notice("RNG is not initialised: omitting \"%s\" property\n",
|
pr_notice("RNG is not initialised: omitting \"%s\" property\n",
|
||||||
FDT_PROP_RNG_SEED);
|
"rng-seed");
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = fdt_setprop(fdt, chosen_node, "linux,booted-from-kexec", NULL, 0);
|
ret = fdt_setprop(fdt, chosen_node, "linux,booted-from-kexec", NULL, 0);
|
||||||
|
|
Loading…
Reference in a new issue