2021-07-07 16:38:55

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH] m68k/nommu: prevent setting ROMKERNEL when ROM is not set

When CONFIG_ROMKERNEL is set but CONFIG_ROM is not set, the linker
complains:
m68k-linux-ld:./arch/m68k/kernel/vmlinux.lds:5: undefined symbol `CONFIG_ROMSTART' referenced in expression

# CONFIG_ROM is not set
# CONFIG_RAMKERNEL is not set
CONFIG_ROMKERNEL=y

Since ROMSTART depends on ROM, make ROMKERNEL also depend on ROM.

Signed-off-by: Randy Dunlap <[email protected]>
Cc: Greg Ungerer <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
arch/m68k/Kconfig.machine | 1 +
1 file changed, 1 insertion(+)

--- linux-next-20210701.orig/arch/m68k/Kconfig.machine
+++ linux-next-20210701/arch/m68k/Kconfig.machine
@@ -464,6 +464,7 @@ config RAMKERNEL

config ROMKERNEL
bool "ROM"
+ depends on ROM
help
The kernel will be resident in FLASH/ROM when running. This is
often referred to as Execute-in-Place (XIP), since the kernel


2021-07-08 12:34:21

by Greg Ungerer

[permalink] [raw]
Subject: Re: [PATCH] m68k/nommu: prevent setting ROMKERNEL when ROM is not set

Hi Randy,

On 8/7/21 2:37 am, Randy Dunlap wrote:
> When CONFIG_ROMKERNEL is set but CONFIG_ROM is not set, the linker
> complains:
> m68k-linux-ld:./arch/m68k/kernel/vmlinux.lds:5: undefined symbol `CONFIG_ROMSTART' referenced in expression
>
> # CONFIG_ROM is not set
> # CONFIG_RAMKERNEL is not set
> CONFIG_ROMKERNEL=y
>
> Since ROMSTART depends on ROM, make ROMKERNEL also depend on ROM.
>
> Signed-off-by: Randy Dunlap <[email protected]>
> Cc: Greg Ungerer <[email protected]>
> Cc: [email protected]
> Cc: [email protected]

Looks good, thanks.
I will apply to for-next branch of m68knommu git tree when the current
merge window closes.

Regards
Greg


> ---
> arch/m68k/Kconfig.machine | 1 +
> 1 file changed, 1 insertion(+)
>
> --- linux-next-20210701.orig/arch/m68k/Kconfig.machine
> +++ linux-next-20210701/arch/m68k/Kconfig.machine
> @@ -464,6 +464,7 @@ config RAMKERNEL
>
> config ROMKERNEL
> bool "ROM"
> + depends on ROM
> help
> The kernel will be resident in FLASH/ROM when running. This is
> often referred to as Execute-in-Place (XIP), since the kernel
>