[Buildroot] [git commit] arch/Config.in.sh: fixup MMU selection
Yann E. MORIN
yann.morin.1998 at free.fr
Sun Apr 24 08:28:53 UTC 2022
commit: https://git.buildroot.net/buildroot/commit/?id=aa8a2dacf2ef3081a403a82e93b3815383d8a107
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
BR2_sh selects BR2_ARCH_HAS_MMU_OPTIONAL, which means that it's up to
the user to decide whether he wants to use MMU or not on SuperH
platforms.
However:
- On SH2A, there is no MMU at all, so being to select "Use MMU"
doesn't make any sense.
- On SH4, there is no support for *not* using the MMU, so disabling
"Use MMU" will cause the build to fail.
In order to fix this, we move the MMU selection to arch/Config.in.sh:
- BR2_sh2a selects nothing, so that it's always noMMU
- BR2_sh4* select BR2_ARCH_HAS_MMU_MANDATORY so that the MMU is
always used.
Fixes:
http://autobuild.buildroot.net/results/f4d52cabee61ee0f234b03c1ec1bd02e85e7bb20/ (FLAT
selected with sh4aeb)
http://autobuild.buildroot.net/results/d1b1dfe449f82944bd48215da3cdffd05797e2e9/ (FLAT
selected with sh4a)
http://autobuild.buildroot.net/results/45bc90fd2dde7bb201d7f999db1a8024cf889a06/ (FLAT
selected with sh4)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
---
arch/Config.in | 1 -
arch/Config.in.sh | 4 ++++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/arch/Config.in b/arch/Config.in
index 98b0e40d51..e51ef60f40 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -228,7 +228,6 @@ config BR2_s390x
config BR2_sh
bool "SuperH"
- select BR2_ARCH_HAS_MMU_OPTIONAL
help
SuperH (or SH) is a 32-bit reduced instruction set computer
(RISC) instruction set architecture (ISA) developed by
diff --git a/arch/Config.in.sh b/arch/Config.in.sh
index c1ba449dd5..a012cbf491 100644
--- a/arch/Config.in.sh
+++ b/arch/Config.in.sh
@@ -9,12 +9,16 @@ config BR2_sh2a
bool "sh2a (SH2A big endian)"
config BR2_sh4
bool "sh4 (SH4 little endian)"
+ select BR2_ARCH_HAS_MMU_MANDATORY
config BR2_sh4eb
bool "sh4eb (SH4 big endian)"
+ select BR2_ARCH_HAS_MMU_MANDATORY
config BR2_sh4a
bool "sh4a (SH4A little endian)"
+ select BR2_ARCH_HAS_MMU_MANDATORY
config BR2_sh4aeb
bool "sh4aeb (SH4A big endian)"
+ select BR2_ARCH_HAS_MMU_MANDATORY
endchoice
config BR2_ARCH
More information about the buildroot
mailing list