From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: omap: rework platform selection
Date: Mon, 16 Jun 2014 12:04:58 +0200 [thread overview]
Message-ID: <5701099.0P1SIXsHc1@wuerfel> (raw)
Commit 9851b662f659 ("ARM: use menuconfig for sub-arch menus") did more
than expected, which led to two OMAP specific bugs:
* Turning CONFIG_ARCH_OMAP into a user-selectable option makes it possible
to have a configuration with ARCH_OMAP enabled but none of the specific
OMAP SoCs enabled, which triggers a couple of link errors due to the
layout of the Makefile
* The plat-omap menu still appears mixed into the normal menuconfig list,
which is confusing and inconsistent.
To make matters worse, the change did not enable CONFIG_ARCH_OMAP in the
defconfig files, which through some ripple effects disabled options that
were implicitly enabled from OMAP2, and that caused all machines to
fail booting with the unchanged config files.
This reorders the OMAP Kconfig files some more, to be consistent with
the others, and also changes the defconfig files.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
Tony, can you have a look at this please? I'd like to send out the
fixes for 3.16, but this is needed on top of Rob's Kconfig changes.
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 245058b..fcf6ddf 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -973,10 +973,6 @@ source "arch/arm/mach-nspire/Kconfig"
source "arch/arm/plat-omap/Kconfig"
-source "arch/arm/mach-omap1/Kconfig"
-
-source "arch/arm/mach-omap2/Kconfig"
-
source "arch/arm/mach-orion5x/Kconfig"
source "arch/arm/mach-picoxcell/Kconfig"
diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
index e2d6204..d77bb9e 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -23,6 +23,7 @@ CONFIG_ARCH_BERLIN=y
CONFIG_MACH_BERLIN_BG2=y
CONFIG_MACH_BERLIN_BG2CD=y
CONFIG_MACH_BERLIN_BG2Q=y
+CONFIG_ARCH_OMAP_ENABLE=y
CONFIG_ARCH_HIGHBANK=y
CONFIG_ARCH_HI3xxx=y
CONFIG_ARCH_KEYSTONE=y
diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index 536a137..85de0a1 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -25,6 +25,7 @@ CONFIG_POWER_AVS_OMAP=y
CONFIG_POWER_AVS_OMAP_CLASS3=y
CONFIG_OMAP_RESET_CLOCKS=y
CONFIG_OMAP_MUX_DEBUG=y
+CONFIG_ARCH_OMAP_ENABLE=y
CONFIG_ARCH_OMAP2=y
CONFIG_ARCH_OMAP3=y
CONFIG_ARCH_OMAP4=y
diff --git a/arch/arm/mach-omap1/Kconfig b/arch/arm/mach-omap1/Kconfig
index cdd05f2..53a802c 100644
--- a/arch/arm/mach-omap1/Kconfig
+++ b/arch/arm/mach-omap1/Kconfig
@@ -1,8 +1,6 @@
if ARCH_OMAP1
-menu "TI OMAP1 specific features"
-
-comment "OMAP Core Type"
+comment "OMAP1 Core Type"
depends on ARCH_OMAP1
config ARCH_OMAP730
@@ -164,6 +162,4 @@ config MACH_OMAP_GENERIC
custom OMAP boards. Say Y here if you have a custom
board.
-endmenu
-
endif
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 4e81860..0006012 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -1,7 +1,5 @@
-menuconfig ARCH_OMAP
- bool "TI OMAP/AM/DRA Based" if (ARCH_MULTI_V6 || ARCH_MULTI_V7)
-
-if ARCH_OMAP
+config ARCH_OMAP
+ bool
config ARCH_OMAP2
bool "TI OMAP2"
@@ -82,6 +80,7 @@ config ARCH_OMAP2PLUS
bool
select ARCH_HAS_BANDGAP
select ARCH_HAS_HOLES_MEMORYMODEL
+ select ARCH_OMAP
select ARCH_REQUIRE_GPIOLIB
select CLKSRC_MMIO
select GENERIC_IRQ_CHIP
@@ -342,5 +341,3 @@ config OMAP4_ERRATA_I688
endmenu
endif
-
-endif
diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig
index 02fc10d..8aa2dd2 100644
--- a/arch/arm/plat-omap/Kconfig
+++ b/arch/arm/plat-omap/Kconfig
@@ -1,6 +1,11 @@
-if ARCH_OMAP
+menuconfig ARCH_OMAP_ENABLE
+ bool "TI OMAP platforms" if ARCH_MULTI_V6 || ARCH_MULTI_V7
+ default ARCH_OMAP1
-menu "TI OMAP Common Features"
+if ARCH_OMAP_ENABLE
+
+source "arch/arm/mach-omap1/Kconfig"
+source "arch/arm/mach-omap2/Kconfig"
config ARCH_OMAP_OTG
bool
@@ -153,6 +158,4 @@ config OMAP_PM_NOOP
endchoice
-endmenu
-
endif
next reply other threads:[~2014-06-16 10:04 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-16 10:04 Arnd Bergmann [this message]
2014-06-16 11:00 ` [PATCH] ARM: omap: rework platform selection Tony Lindgren
2014-06-16 11:16 ` Arnd Bergmann
2014-06-16 11:26 ` Tony Lindgren
2014-06-16 14:17 ` Tony Lindgren
2014-06-16 15:53 ` Rob Herring
2014-06-17 13:57 ` Arnd Bergmann
2014-06-17 15:03 ` Rob Herring
2014-06-17 15:25 ` Tony Lindgren
2014-06-17 16:40 ` Rob Herring
2014-06-18 6:53 ` Tony Lindgren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5701099.0P1SIXsHc1@wuerfel \
--to=arnd@arndb.de \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).