diff options
author | Greg Ungerer | 2023-09-12 22:29:23 +1000 |
---|---|---|
committer | Greg Ungerer | 2023-10-23 08:22:22 +1000 |
commit | 3b4497668f721513eb7287f6bb0c4d651759c7c4 (patch) | |
tree | f9c539bad5029f858919beb3ec6a69cdf0b25541 /arch/m68k | |
parent | 7c2aa8d195cd34ec47ac26994adac43bfd5037b8 (diff) |
m68k: coldfire: fix warnings in uboot argument processing
When building with W=1:
CC arch/m68k/kernel/uboot.o
arch/m68k/kernel/uboot.c: In function ‘parse_uboot_commandline’:
arch/m68k/kernel/uboot.c:68:36: warning: variable ‘uboot_initrd_end’ set but not used [-Wunused-but-set-variable]
unsigned long uboot_initrd_start, uboot_initrd_end;
^~~~~~~~~~~~~~~~
arch/m68k/kernel/uboot.c:68:16: warning: variable ‘uboot_initrd_start’ set but not used [-Wunused-but-set-variable]
unsigned long uboot_initrd_start, uboot_initrd_end;
^~~~~~~~~~~~~~~~~~
arch/m68k/kernel/uboot.c:66:16: warning: variable ‘uboot_kbd’ set but not used [-Wunused-but-set-variable]
unsigned long uboot_kbd;
^~~~~~~~~
arch/m68k/kernel/uboot.c: At top level:
arch/m68k/kernel/uboot.c:90:13: warning: no previous prototype for ‘process_uboot_commandline’ [-Wmissing-prototypes]
__init void process_uboot_commandline(char *commandp, int size)
^~~~~~~~~~~~~~~~~~~~~~~~~
A couple of issues here. Firstly we already have a bootinfo.h that has a
prototype for process_uboot_commandline(), we should include that.
Secondly uboot_kbd is not used at all and can be removed. Thirdly the
conditional code based on CONFIG_BLK_DEV_INITRD means that sometimes
uboot_initrd_start and uboot_initrd_end are not needed. Make their
declaration and asignment conditional on CONFIG_BLK_DEV_INITRD same as
the code that uses them.
Signed-off-by: Greg Ungerer <gerg@linux-m68k.org>
Diffstat (limited to 'arch/m68k')
-rw-r--r-- | arch/m68k/kernel/uboot.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/m68k/kernel/uboot.c b/arch/m68k/kernel/uboot.c index 928dbd33fc4a..8bb1cb3a7490 100644 --- a/arch/m68k/kernel/uboot.c +++ b/arch/m68k/kernel/uboot.c @@ -27,6 +27,7 @@ #include <asm/irq.h> #include <asm/machdep.h> #include <asm/sections.h> +#include <asm/bootinfo.h> /* * parse_uboot_commandline @@ -63,20 +64,22 @@ static void __init parse_uboot_commandline(char *commandp, int size) { extern unsigned long _init_sp; unsigned long *sp; - unsigned long uboot_kbd; - unsigned long uboot_initrd_start, uboot_initrd_end; unsigned long uboot_cmd_start, uboot_cmd_end; +#if defined(CONFIG_BLK_DEV_INITRD) + unsigned long uboot_initrd_start, uboot_initrd_end; +#endif /* if defined(CONFIG_BLK_DEV_INITRD) */ sp = (unsigned long *)_init_sp; - uboot_kbd = sp[1]; - uboot_initrd_start = sp[2]; - uboot_initrd_end = sp[3]; uboot_cmd_start = sp[4]; uboot_cmd_end = sp[5]; if (uboot_cmd_start && uboot_cmd_end) strncpy(commandp, (const char *)uboot_cmd_start, size); + #if defined(CONFIG_BLK_DEV_INITRD) + uboot_initrd_start = sp[2]; + uboot_initrd_end = sp[3]; + if (uboot_initrd_start && uboot_initrd_end && (uboot_initrd_end > uboot_initrd_start)) { initrd_start = uboot_initrd_start; |