All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] ARM: SoC specific bug fixes
@ 2013-07-05 16:23 Arnd Bergmann
  2013-07-05 16:23 ` [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops Arnd Bergmann
                   ` (7 more replies)
  0 siblings, 8 replies; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-arm-kernel, arm, Arnd Bergmann, Gregory CLEMENT,
	Imre Kaloz, Jason Cooper, Krzysztof Halasa, Kukjin Kim,
	Michal Simek, Tony Lindgren

Hi everyone,

This is a set of bug fixes that came up during build testing.

I have applied them to the fixes branch for now and will send
them to Linus next week unless there are objections.

	Arnd

Arnd Bergmann (8):
  clocksource: armada-xp: always register local_timer_ops
  ARM: omap5: omap5 has SCU and TWD
  ARM: zynq: use DT_MACHINE_START
  ARM: OMAP: build mach-omap code only if needed
  ARM: sti: move DEBUG_STI_UART into alphabetical order
  ARM: OMAP: omap_common_late_init may be unused
  ARM: ixp4xx: avoid circular header dependency
  ARM: exynos: select PM_GENERIC_DOMAINS only when used

 arch/arm/Kconfig.debug                    |  20 ++--
 arch/arm/configs/omap2plus_defconfig      |   4 +
 arch/arm/mach-exynos/Kconfig              |   2 +-
 arch/arm/mach-ixp4xx/include/mach/timex.h |   2 +-
 arch/arm/mach-omap2/Kconfig               | 150 +++++++++++++++---------------
 arch/arm/mach-omap2/io.c                  |   2 +-
 arch/arm/mach-zynq/common.c               |   2 +-
 drivers/clocksource/time-armada-370-xp.c  |   2 -
 8 files changed, 94 insertions(+), 90 deletions(-)

Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: Imre Kaloz <kaloz@openwrt.org>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Krzysztof Halasa <khc@pm.waw.pl>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Tony Lindgren <tony@atomide.com>

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-05 16:33   ` Gregory CLEMENT
  2013-07-05 16:23 ` [PATCH 2/8] ARM: omap5: omap5 has SCU and TWD Arnd Bergmann
                   ` (6 subsequent siblings)
  7 siblings, 1 reply; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann, Gregory CLEMENT

The call to local_timer_register is hidden behind an #ifdef, which
turns the armada_370_xp_local_timer_ops into a potentially unused
variable, causing this warning:

time-armada-370-xp.c:208:31: warning: 'armada_370_xp_local_timer_ops' defined but not used [-Wunused-variable]
 static struct local_timer_ops armada_370_xp_local_timer_ops __cpuinitdata = {
                               ^

Since local_timer_register() itself doesn't do anything, just removing
the #ifdef makes the code look nicer and gets rid of the warning.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Jason Cooper <jason@lakedaemon.net>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
---
 drivers/clocksource/time-armada-370-xp.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/clocksource/time-armada-370-xp.c b/drivers/clocksource/time-armada-370-xp.c
index 47a6730..4cd8520 100644
--- a/drivers/clocksource/time-armada-370-xp.c
+++ b/drivers/clocksource/time-armada-370-xp.c
@@ -294,8 +294,6 @@ void __init armada_370_xp_timer_init(void)
 				percpu_armada_370_xp_evt);
 	if (!res) {
 		enable_percpu_irq(armada_370_xp_clkevt.irq, 0);
-#ifdef CONFIG_LOCAL_TIMERS
 		local_timer_register(&armada_370_xp_local_timer_ops);
-#endif
 	}
 }
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 2/8] ARM: omap5: omap5 has SCU and TWD
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
  2013-07-05 16:23 ` [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-08 12:03   ` Tony Lindgren
  2013-07-05 16:23 ` [PATCH 3/8] ARM: zynq: use DT_MACHINE_START Arnd Bergmann
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann, Tony Lindgren

These are selected by omap4 but used in common omap4/5
SMP code, so building an omap5-only kernel is actually
broken without this patch.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/Kconfig | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 1fdb462..1f8127a 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -110,6 +110,8 @@ config SOC_OMAP5
 	select ARM_CPU_SUSPEND if PM
 	select ARM_GIC
 	select CPU_V7
+	select HAVE_ARM_SCU if SMP
+	select HAVE_ARM_TWD if LOCAL_TIMERS
 	select HAVE_SMP
 	select COMMON_CLK
 	select HAVE_ARM_ARCH_TIMER
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 3/8] ARM: zynq: use DT_MACHINE_START
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
  2013-07-05 16:23 ` [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops Arnd Bergmann
  2013-07-05 16:23 ` [PATCH 2/8] ARM: omap5: omap5 has SCU and TWD Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-08  6:18   ` Michal Simek
  2013-07-05 16:23 ` [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed Arnd Bergmann
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann, Michal Simek

The zynq platform code only supports DT based booting, so we
should use DT_MACHINE_START rather than MACHINE_START.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Michal Simek <michal.simek@xilinx.com>
---
 arch/arm/mach-zynq/common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index 4130e65..5b799c2 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -101,7 +101,7 @@ static const char * const zynq_dt_match[] = {
 	NULL
 };
 
-MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
+DT_MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
 	.smp		= smp_ops(zynq_smp_ops),
 	.map_io		= zynq_map_io,
 	.init_machine	= zynq_init_machine,
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
                   ` (2 preceding siblings ...)
  2013-07-05 16:23 ` [PATCH 3/8] ARM: zynq: use DT_MACHINE_START Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-08 11:31   ` Olof Johansson
  2013-07-08 12:00   ` Tony Lindgren
  2013-07-05 16:23 ` [PATCH 5/8] ARM: sti: move DEBUG_STI_UART into alphabetical order Arnd Bergmann
                   ` (3 subsequent siblings)
  7 siblings, 2 replies; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann, Tony Lindgren

If we build a kernel with CONFIG_ARCH_OMAP2PLUS enabled but all of the
individual SoCs disabled, we run into a large number of link errors
because if incorrect dependencies:

arch/arm/mach-omap2/built-in.o: In function `_add_initiator_dep':
arch/arm/mach-omap2/omap_hwmod.c:691: undefined reference to `clkdm_add_sleepdep' arch/arm/mach-omap2/built-in.o: In function `_del_initiator_dep':
arch/arm/mach-omap2/omap_hwmod.c:720: undefined reference to `clkdm_del_sleepdep' arch/arm/mach-omap2/built-in.o: In function `_enable':
arch/arm/mach-omap2/omap_hwmod.c:2145: undefined reference to `clkdm_in_hwsup'
arch/arm/mach-omap2/omap_hwmod.c:2147: undefined reference to `clkdm_hwmod_enable'
arch/arm/mach-omap2/omap_hwmod.c:2191: undefined reference to `clkdm_hwmod_disable'
arch/arm/mach-omap2/omap_hwmod.c:2146: undefined reference to `clkdm_missing_idle_reporting' arch/arm/mach-omap2/built-in.o: In function `_idle':
arch/arm/mach-omap2/omap_hwmod.c:2235: undefined reference to `clkdm_hwmod_disable' arch/arm/mach-omap2/built-in.o: In function `_shutdown':
arch/arm/mach-omap2/omap_hwmod.c:2338: undefined reference to `clkdm_hwmod_disable' arch/arm/mach-omap2/built-in.o: In function `omap_hwmod_get_context_loss_count':
arch/arm/mach-omap2/omap_hwmod.c:4071: undefined reference to `pwrdm_get_context_loss_count' arch/arm/mach-omap2/built-in.o: In function `omap_pm_clkdms_setup':
arch/arm/mach-omap2/pm.c:114: undefined reference to `clkdm_allow_idle'
arch/arm/mach-omap2/pm.c:117: undefined reference to `clkdm_sleep' arch/arm/mach-omap2/built-in.o: In function `omap2_common_pm_late_init':
arch/arm/mach-omap2/pm.c:294: undefined reference to `omap_voltage_late_init' arch/arm/mach-omap2/built-in.o: In function `omap2_gpio_dev_init':
arch/arm/mach-omap2/gpio.c:133: undefined reference to `pwrdm_can_ever_lose_context'

We can avoid this if we make CONFIG_ARCH_OMAP2PLUS a silent option that
gets enabled any time that one of the SoC versions is enabled.

Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm/configs/omap2plus_defconfig |   4 +
 arch/arm/mach-omap2/Kconfig          | 148 +++++++++++++++++------------------
 2 files changed, 78 insertions(+), 74 deletions(-)

diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index 2ac0ffb..f9b7fcc 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -22,6 +22,10 @@ CONFIG_MODULE_SRCVERSION_ALL=y
 # CONFIG_BLK_DEV_BSG is not set
 CONFIG_ARCH_MULTI_V6=y
 CONFIG_ARCH_OMAP2PLUS=y
+CONFIG_ARCH_OMAP2=y
+CONFIG_ARCH_OMAP3=y
+CONFIG_ARCH_OMAP4=y
+CONFIG_SOC_AM33XX=y
 CONFIG_OMAP_RESET_CLOCKS=y
 CONFIG_OMAP_MUX_DEBUG=y
 CONFIG_ARCH_VEXPRESS_CA9X4=y
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 1f8127a..5c14051 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -1,62 +1,10 @@
 config ARCH_OMAP
 	bool
 
-config ARCH_OMAP2PLUS
-	bool "TI OMAP2/3/4/5 SoCs with device tree support" if (ARCH_MULTI_V6 || ARCH_MULTI_V7)
-	select ARCH_HAS_CPUFREQ
-	select ARCH_HAS_HOLES_MEMORYMODEL
-	select ARCH_OMAP
-	select ARCH_REQUIRE_GPIOLIB
-	select CLKDEV_LOOKUP
-	select CLKSRC_MMIO
-	select GENERIC_CLOCKEVENTS
-	select GENERIC_IRQ_CHIP
-	select HAVE_CLK
-	select OMAP_DM_TIMER
-	select PINCTRL
-	select PROC_DEVICETREE if PROC_FS
-	select SOC_BUS
-	select SPARSE_IRQ
-	select TI_PRIV_EDMA
-	select USE_OF
-	help
-	  Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
-
-
-if ARCH_OMAP2PLUS
-
-menu "TI OMAP2/3/4 Specific Features"
-
-config ARCH_OMAP2PLUS_TYPICAL
-	bool "Typical OMAP configuration"
-	default y
-	select AEABI
-	select HIGHMEM
-	select I2C
-	select I2C_OMAP
-	select MENELAUS if ARCH_OMAP2
-	select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
-	select PM_RUNTIME
-	select REGULATOR
-	select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
-	select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
-	select VFP
-	help
-	  Compile a kernel suitable for booting most boards
-
-config SOC_HAS_OMAP2_SDRC
-	bool "OMAP2 SDRAM Controller support"
-
-config SOC_HAS_REALTIME_COUNTER
-	bool "Real time free running counter"
-	depends on SOC_OMAP5
-	default y
-
 config ARCH_OMAP2
 	bool "TI OMAP2"
-	depends on ARCH_OMAP2PLUS
 	depends on ARCH_MULTI_V6
-	default y
+	select ARCH_OMAP2PLUS
 	select CPU_V6
 	select MULTI_IRQ_HANDLER
 	select SOC_HAS_OMAP2_SDRC
@@ -64,9 +12,8 @@ config ARCH_OMAP2
 
 config ARCH_OMAP3
 	bool "TI OMAP3"
-	depends on ARCH_OMAP2PLUS
 	depends on ARCH_MULTI_V7
-	default y
+	select ARCH_OMAP2PLUS
 	select ARCH_HAS_OPP
 	select ARM_CPU_SUSPEND if PM
 	select CPU_V7
@@ -80,9 +27,8 @@ config ARCH_OMAP3
 
 config ARCH_OMAP4
 	bool "TI OMAP4"
-	default y
-	depends on ARCH_OMAP2PLUS
 	depends on ARCH_MULTI_V7
+	select ARCH_OMAP2PLUS
 	select ARCH_HAS_OPP
 	select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
 	select ARM_CPU_SUSPEND if PM
@@ -107,6 +53,7 @@ config ARCH_OMAP4
 config SOC_OMAP5
 	bool "TI OMAP5"
 	depends on ARCH_MULTI_V7
+	select ARCH_OMAP2PLUS
 	select ARM_CPU_SUSPEND if PM
 	select ARM_GIC
 	select CPU_V7
@@ -116,6 +63,76 @@ config SOC_OMAP5
 	select COMMON_CLK
 	select HAVE_ARM_ARCH_TIMER
 
+config SOC_AM33XX
+	bool "AM33XX support"
+	depends on ARCH_MULTI_V7
+	select ARCH_OMAP2PLUS
+	select ARM_CPU_SUSPEND if PM
+	select CPU_V7
+	select MULTI_IRQ_HANDLER
+	select COMMON_CLK
+
+config SOC_AM43XX
+	bool "TI AM43x"
+	depends on ARCH_MULTI_V7
+	select CPU_V7
+	select ARCH_OMAP2PLUS
+	select MULTI_IRQ_HANDLER
+	select ARM_GIC
+	select COMMON_CLK
+	select MACH_OMAP_GENERIC
+
+config ARCH_OMAP2PLUS
+	bool
+	select ARCH_HAS_BANDGAP
+	select ARCH_HAS_CPUFREQ
+	select ARCH_HAS_HOLES_MEMORYMODEL
+	select ARCH_OMAP
+	select ARCH_REQUIRE_GPIOLIB
+	select CLKDEV_LOOKUP
+	select CLKSRC_MMIO
+	select GENERIC_CLOCKEVENTS
+	select GENERIC_IRQ_CHIP
+	select HAVE_CLK
+	select OMAP_DM_TIMER
+	select PINCTRL
+	select PROC_DEVICETREE if PROC_FS
+	select SOC_BUS
+	select SPARSE_IRQ
+	select USE_OF
+	help
+	  Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
+
+
+if ARCH_OMAP2PLUS
+
+menu "TI OMAP2/3/4 Specific Features"
+
+config ARCH_OMAP2PLUS_TYPICAL
+	bool "Typical OMAP configuration"
+	default y
+	select AEABI
+	select HIGHMEM
+	select I2C
+	select I2C_OMAP
+	select MENELAUS if ARCH_OMAP2
+	select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
+	select PM_RUNTIME
+	select REGULATOR
+	select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
+	select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
+	select VFP
+	help
+	  Compile a kernel suitable for booting most boards
+
+config SOC_HAS_OMAP2_SDRC
+	bool "OMAP2 SDRAM Controller support"
+
+config SOC_HAS_REALTIME_COUNTER
+	bool "Real time free running counter"
+	depends on SOC_OMAP5
+	default y
+
 comment "OMAP Core Type"
 	depends on ARCH_OMAP2
 
@@ -143,23 +160,6 @@ config SOC_TI81XX
 	depends on ARCH_OMAP3
 	default y
 
-config SOC_AM33XX
-	bool "AM33XX support"
-	depends on ARCH_MULTI_V7
-	default y
-	select ARM_CPU_SUSPEND if PM
-	select CPU_V7
-	select MULTI_IRQ_HANDLER
-	select COMMON_CLK
-
-config SOC_AM43XX
-	bool "TI AM43x"
-	select CPU_V7
-	select MULTI_IRQ_HANDLER
-	select ARM_GIC
-	select COMMON_CLK
-	select MACH_OMAP_GENERIC
-
 config OMAP_PACKAGE_ZAF
        bool
 
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 5/8] ARM: sti: move DEBUG_STI_UART into alphabetical order
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
                   ` (3 preceding siblings ...)
  2013-07-05 16:23 ` [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-05 16:23 ` [PATCH 6/8] ARM: OMAP: omap_common_late_init may be unused Arnd Bergmann
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann

This was accidentally added in the wrong place, messing
up the ordering of the file.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm/Kconfig.debug | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index 77c1411..ff4920b 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -510,6 +510,16 @@ choice
 		  Say Y here if you want the debug print routines to direct
 		  their output to the uart1 port on SiRFmarco devices.
 
+	config DEBUG_STI_UART
+		depends on ARCH_STI
+		bool "Use StiH415/416 ASC for low-level debug"
+		help
+		  Say Y here if you want kernel low-level debugging support
+		  on StiH415/416 based platforms like B2000, B2020.
+		  It support UART2 and SBC_UART1.
+
+		  If unsure, say N.
+
 	config DEBUG_U300_UART
 		bool "Kernel low-level debugging messages via U300 UART0"
 		depends on ARCH_U300
@@ -557,16 +567,6 @@ choice
 		  This option selects UART0 on VIA/Wondermedia System-on-a-chip
 		  devices, including VT8500, WM8505, WM8650 and WM8850.
 
-	config DEBUG_STI_UART
-		depends on ARCH_STI
-		bool "Use StiH415/416 ASC for low-level debug"
-		help
-		  Say Y here if you want kernel low-level debugging support
-		  on StiH415/416 based platforms like B2000, B2020.
-		  It support UART2 and SBC_UART1.
-
-		  If unsure, say N.
-
 	config DEBUG_LL_UART_NONE
 		bool "No low-level debugging UART"
 		depends on !ARCH_MULTIPLATFORM
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 6/8] ARM: OMAP: omap_common_late_init may be unused
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
                   ` (4 preceding siblings ...)
  2013-07-05 16:23 ` [PATCH 5/8] ARM: sti: move DEBUG_STI_UART into alphabetical order Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-08 12:01   ` Tony Lindgren
  2013-07-05 16:23 ` [PATCH 7/8] ARM: ixp4xx: avoid circular header dependency Arnd Bergmann
  2013-07-05 16:23 ` [PATCH 8/8] ARM: exynos: select PM_GENERIC_DOMAINS only when used Arnd Bergmann
  7 siblings, 1 reply; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann, Tony Lindgren

Some OMAP SoCs use this function while others do not, and that
causes a warning when building multi_v7_defconfig. Marking the
function __maybe_unused silences the harmless warning without the
need to add complex #ifdef logic.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/io.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
index fe3253a..4a3f06f 100644
--- a/arch/arm/mach-omap2/io.c
+++ b/arch/arm/mach-omap2/io.c
@@ -394,7 +394,7 @@ static void __init omap_hwmod_init_postsetup(void)
 	omap_pm_if_early_init();
 }
 
-static void __init omap_common_late_init(void)
+static void __init __maybe_unused omap_common_late_init(void)
 {
 	omap_mux_late_init();
 	omap2_common_pm_late_init();
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 7/8] ARM: ixp4xx: avoid circular header dependency
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
                   ` (5 preceding siblings ...)
  2013-07-05 16:23 ` [PATCH 6/8] ARM: OMAP: omap_common_late_init may be unused Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  2013-07-06 18:11   ` Krzysztof Halasa
  2013-07-05 16:23 ` [PATCH 8/8] ARM: exynos: select PM_GENERIC_DOMAINS only when used Arnd Bergmann
  7 siblings, 1 reply; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-arm-kernel, arm, Arnd Bergmann, Imre Kaloz,
	Krzysztof Halasa, Jason Cooper

With the new linux/reboot.h header file dependency added, we can no
longer build ixp4xx. The easiest way to avoid that is to remove the
inclusion of mach/hardware.h from mach/timex.h, which does not need
that header anyway.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Imre Kaloz <kaloz@openwrt.org>
Cc: Krzysztof Halasa <khc@pm.waw.pl>
Cc: Jason Cooper <jason@lakedaemon.net>
---
 arch/arm/mach-ixp4xx/include/mach/timex.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-ixp4xx/include/mach/timex.h b/arch/arm/mach-ixp4xx/include/mach/timex.h
index c9e930f..0396d89 100644
--- a/arch/arm/mach-ixp4xx/include/mach/timex.h
+++ b/arch/arm/mach-ixp4xx/include/mach/timex.h
@@ -3,7 +3,7 @@
  * 
  */
 
-#include <mach/hardware.h>
+#include <mach/ixp4xx-regs.h>
 
 /*
  * We use IXP425 General purpose timer for our timer needs, it runs at 
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 8/8] ARM: exynos: select PM_GENERIC_DOMAINS only when used
  2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
                   ` (6 preceding siblings ...)
  2013-07-05 16:23 ` [PATCH 7/8] ARM: ixp4xx: avoid circular header dependency Arnd Bergmann
@ 2013-07-05 16:23 ` Arnd Bergmann
  7 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2013-07-05 16:23 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arm-kernel, arm, Arnd Bergmann, Kukjin Kim

This fixes building exynos kernels with CONFIG_PM disabled.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Kukjin Kim <kgene.kim@samsung.com>
---
 arch/arm/mach-exynos/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 2d503b3..ba70a84 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -38,7 +38,7 @@ config CPU_EXYNOS4210
 	depends on ARCH_EXYNOS4
 	select ARM_CPU_SUSPEND if PM
 	select PINCTRL_EXYNOS
-	select PM_GENERIC_DOMAINS
+	select PM_GENERIC_DOMAINS if PM
 	select S5P_PM if PM
 	select S5P_SLEEP if PM
 	select SAMSUNG_DMADEV
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops
  2013-07-05 16:23 ` [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops Arnd Bergmann
@ 2013-07-05 16:33   ` Gregory CLEMENT
  2013-07-05 16:57     ` Stephen Boyd
  0 siblings, 1 reply; 19+ messages in thread
From: Gregory CLEMENT @ 2013-07-05 16:33 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm

On 07/05/2013 06:23 PM, Arnd Bergmann wrote:
> The call to local_timer_register is hidden behind an #ifdef, which
> turns the armada_370_xp_local_timer_ops into a potentially unused
> variable, causing this warning:
> 
> time-armada-370-xp.c:208:31: warning: 'armada_370_xp_local_timer_ops' defined but not used [-Wunused-variable]
>  static struct local_timer_ops armada_370_xp_local_timer_ops __cpuinitdata = {
>                                ^
> 
> Since local_timer_register() itself doesn't do anything, just removing
> the #ifdef makes the code look nicer and gets rid of the warning.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Acked-by: Jason Cooper <jason@lakedaemon.net>
> Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
> ---
>  drivers/clocksource/time-armada-370-xp.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/clocksource/time-armada-370-xp.c b/drivers/clocksource/time-armada-370-xp.c
> index 47a6730..4cd8520 100644
> --- a/drivers/clocksource/time-armada-370-xp.c
> +++ b/drivers/clocksource/time-armada-370-xp.c
> @@ -294,8 +294,6 @@ void __init armada_370_xp_timer_init(void)
>  				percpu_armada_370_xp_evt);
>  	if (!res) {
>  		enable_percpu_irq(armada_370_xp_clkevt.irq, 0);
> -#ifdef CONFIG_LOCAL_TIMERS
>  		local_timer_register(&armada_370_xp_local_timer_ops);
> -#endif
>  	}
>  }
> 

I thought this issue was kind of fixed by the patch
"clocksource: time-armada-370-xp: Divorce from local timer API" from Stephen Boyd.

But I can't find it in linux-next so maybe it has not been pulled, so in this case
you can also add my
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>


-- 
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops
  2013-07-05 16:33   ` Gregory CLEMENT
@ 2013-07-05 16:57     ` Stephen Boyd
  0 siblings, 0 replies; 19+ messages in thread
From: Stephen Boyd @ 2013-07-05 16:57 UTC (permalink / raw)
  To: Gregory CLEMENT; +Cc: Arnd Bergmann, linux-kernel, linux-arm-kernel, arm

On 07/05, Gregory CLEMENT wrote:
> On 07/05/2013 06:23 PM, Arnd Bergmann wrote:
> > The call to local_timer_register is hidden behind an #ifdef, which
> > turns the armada_370_xp_local_timer_ops into a potentially unused
> > variable, causing this warning:
> > 
> > time-armada-370-xp.c:208:31: warning: 'armada_370_xp_local_timer_ops' defined but not used [-Wunused-variable]
> >  static struct local_timer_ops armada_370_xp_local_timer_ops __cpuinitdata = {
> >                                ^
> > 
> > Since local_timer_register() itself doesn't do anything, just removing
> > the #ifdef makes the code look nicer and gets rid of the warning.
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > Acked-by: Jason Cooper <jason@lakedaemon.net>
> > Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
> > ---
> >  drivers/clocksource/time-armada-370-xp.c | 2 --
> >  1 file changed, 2 deletions(-)
> > 
> > diff --git a/drivers/clocksource/time-armada-370-xp.c b/drivers/clocksource/time-armada-370-xp.c
> > index 47a6730..4cd8520 100644
> > --- a/drivers/clocksource/time-armada-370-xp.c
> > +++ b/drivers/clocksource/time-armada-370-xp.c
> > @@ -294,8 +294,6 @@ void __init armada_370_xp_timer_init(void)
> >  				percpu_armada_370_xp_evt);
> >  	if (!res) {
> >  		enable_percpu_irq(armada_370_xp_clkevt.irq, 0);
> > -#ifdef CONFIG_LOCAL_TIMERS
> >  		local_timer_register(&armada_370_xp_local_timer_ops);
> > -#endif
> >  	}
> >  }
> > 
> 
> I thought this issue was kind of fixed by the patch
> "clocksource: time-armada-370-xp: Divorce from local timer API" from Stephen Boyd.
> 
> But I can't find it in linux-next so maybe it has not been pulled, so in this case
> you can also add my
> Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
> 

The pull request is blocked on Thomas responding about
timers/core being a stable branch. We may just have to wait until
timers/core goes in before Arnd and Olof can take it in.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 7/8] ARM: ixp4xx: avoid circular header dependency
  2013-07-05 16:23 ` [PATCH 7/8] ARM: ixp4xx: avoid circular header dependency Arnd Bergmann
@ 2013-07-06 18:11   ` Krzysztof Halasa
  0 siblings, 0 replies; 19+ messages in thread
From: Krzysztof Halasa @ 2013-07-06 18:11 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: linux-kernel, linux-arm-kernel, arm, Imre Kaloz, Jason Cooper

Arnd Bergmann <arnd@arndb.de> writes:

> With the new linux/reboot.h header file dependency added, we can no
> longer build ixp4xx. The easiest way to avoid that is to remove the
> inclusion of mach/hardware.h from mach/timex.h, which does not need
> that header anyway.

>  arch/arm/mach-ixp4xx/include/mach/timex.h | 2 +-

Acked-by: Krzysztof Halasa <khc@pm.waw.pl>
-- 
Krzysztof Halasa

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/8] ARM: zynq: use DT_MACHINE_START
  2013-07-05 16:23 ` [PATCH 3/8] ARM: zynq: use DT_MACHINE_START Arnd Bergmann
@ 2013-07-08  6:18   ` Michal Simek
  0 siblings, 0 replies; 19+ messages in thread
From: Michal Simek @ 2013-07-08  6:18 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm, Michal Simek

On 07/05/2013 06:23 PM, Arnd Bergmann wrote:
> The zynq platform code only supports DT based booting, so we
> should use DT_MACHINE_START rather than MACHINE_START.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Cc: Michal Simek <michal.simek@xilinx.com>
> ---
>  arch/arm/mach-zynq/common.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
> index 4130e65..5b799c2 100644
> --- a/arch/arm/mach-zynq/common.c
> +++ b/arch/arm/mach-zynq/common.c
> @@ -101,7 +101,7 @@ static const char * const zynq_dt_match[] = {
>  	NULL
>  };
>  
> -MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
> +DT_MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
>  	.smp		= smp_ops(zynq_smp_ops),
>  	.map_io		= zynq_map_io,
>  	.init_machine	= zynq_init_machine,
> 

No objection at all.

Acked-by: Michal Simek <michal.simek@xilinx.com>

Thanks,
Michal



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed
  2013-07-05 16:23 ` [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed Arnd Bergmann
@ 2013-07-08 11:31   ` Olof Johansson
  2013-07-08 11:34       ` Olof Johansson
  2013-07-08 12:00   ` Tony Lindgren
  1 sibling, 1 reply; 19+ messages in thread
From: Olof Johansson @ 2013-07-08 11:31 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm, Tony Lindgren

Hi,

I think this broke multi_v7_defconfig in last night's linux-next, due
to TI_PRIV_EDMA no longer being selected. Looks like you missed it
when moving the options around:

On Fri, Jul 5, 2013 at 9:23 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index 1f8127a..5c14051 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -1,62 +1,10 @@
>  config ARCH_OMAP
>         bool
>
> -config ARCH_OMAP2PLUS
> -       bool "TI OMAP2/3/4/5 SoCs with device tree support" if (ARCH_MULTI_V6 || ARCH_MULTI_V7)
> -       select ARCH_HAS_CPUFREQ
> -       select ARCH_HAS_HOLES_MEMORYMODEL
> -       select ARCH_OMAP
> -       select ARCH_REQUIRE_GPIOLIB
> -       select CLKDEV_LOOKUP
> -       select CLKSRC_MMIO
> -       select GENERIC_CLOCKEVENTS
> -       select GENERIC_IRQ_CHIP
> -       select HAVE_CLK
> -       select OMAP_DM_TIMER
> -       select PINCTRL
> -       select PROC_DEVICETREE if PROC_FS
> -       select SOC_BUS
> -       select SPARSE_IRQ
> -       select TI_PRIV_EDMA
> -       select USE_OF
> -       help
> -         Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
[...]
> +config ARCH_OMAP2PLUS
> +       bool
> +       select ARCH_HAS_BANDGAP
> +       select ARCH_HAS_CPUFREQ
> +       select ARCH_HAS_HOLES_MEMORYMODEL
> +       select ARCH_OMAP
> +       select ARCH_REQUIRE_GPIOLIB
> +       select CLKDEV_LOOKUP
> +       select CLKSRC_MMIO
> +       select GENERIC_CLOCKEVENTS
> +       select GENERIC_IRQ_CHIP
> +       select HAVE_CLK
> +       select OMAP_DM_TIMER
> +       select PINCTRL
> +       select PROC_DEVICETREE if PROC_FS
> +       select SOC_BUS
> +       select SPARSE_IRQ
> +       select USE_OF
> +       help
> +         Systems based on OMAP2, OMAP3, OMAP4 or OMAP5


-Olof

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed
  2013-07-08 11:31   ` Olof Johansson
@ 2013-07-08 11:34       ` Olof Johansson
  0 siblings, 0 replies; 19+ messages in thread
From: Olof Johansson @ 2013-07-08 11:34 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm, Tony Lindgren

[fixed linux-arm-kernel address]

On Mon, Jul 8, 2013 at 4:31 AM, Olof Johansson <olof@lixom.net> wrote:
> Hi,
>
> I think this broke multi_v7_defconfig in last night's linux-next, due
> to TI_PRIV_EDMA no longer being selected. Looks like you missed it
> when moving the options around:
>
> On Fri, Jul 5, 2013 at 9:23 AM, Arnd Bergmann <arnd@arndb.de> wrote:
>> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
>> index 1f8127a..5c14051 100644
>> --- a/arch/arm/mach-omap2/Kconfig
>> +++ b/arch/arm/mach-omap2/Kconfig
>> @@ -1,62 +1,10 @@
>>  config ARCH_OMAP
>>         bool
>>
>> -config ARCH_OMAP2PLUS
>> -       bool "TI OMAP2/3/4/5 SoCs with device tree support" if (ARCH_MULTI_V6 || ARCH_MULTI_V7)
>> -       select ARCH_HAS_CPUFREQ
>> -       select ARCH_HAS_HOLES_MEMORYMODEL
>> -       select ARCH_OMAP
>> -       select ARCH_REQUIRE_GPIOLIB
>> -       select CLKDEV_LOOKUP
>> -       select CLKSRC_MMIO
>> -       select GENERIC_CLOCKEVENTS
>> -       select GENERIC_IRQ_CHIP
>> -       select HAVE_CLK
>> -       select OMAP_DM_TIMER
>> -       select PINCTRL
>> -       select PROC_DEVICETREE if PROC_FS
>> -       select SOC_BUS
>> -       select SPARSE_IRQ
>> -       select TI_PRIV_EDMA
>> -       select USE_OF
>> -       help
>> -         Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
> [...]
>> +config ARCH_OMAP2PLUS
>> +       bool
>> +       select ARCH_HAS_BANDGAP
>> +       select ARCH_HAS_CPUFREQ
>> +       select ARCH_HAS_HOLES_MEMORYMODEL
>> +       select ARCH_OMAP
>> +       select ARCH_REQUIRE_GPIOLIB
>> +       select CLKDEV_LOOKUP
>> +       select CLKSRC_MMIO
>> +       select GENERIC_CLOCKEVENTS
>> +       select GENERIC_IRQ_CHIP
>> +       select HAVE_CLK
>> +       select OMAP_DM_TIMER
>> +       select PINCTRL
>> +       select PROC_DEVICETREE if PROC_FS
>> +       select SOC_BUS
>> +       select SPARSE_IRQ
>> +       select USE_OF
>> +       help
>> +         Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
>
>
> -Olof

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed
@ 2013-07-08 11:34       ` Olof Johansson
  0 siblings, 0 replies; 19+ messages in thread
From: Olof Johansson @ 2013-07-08 11:34 UTC (permalink / raw)
  To: linux-arm-kernel

[fixed linux-arm-kernel address]

On Mon, Jul 8, 2013 at 4:31 AM, Olof Johansson <olof@lixom.net> wrote:
> Hi,
>
> I think this broke multi_v7_defconfig in last night's linux-next, due
> to TI_PRIV_EDMA no longer being selected. Looks like you missed it
> when moving the options around:
>
> On Fri, Jul 5, 2013 at 9:23 AM, Arnd Bergmann <arnd@arndb.de> wrote:
>> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
>> index 1f8127a..5c14051 100644
>> --- a/arch/arm/mach-omap2/Kconfig
>> +++ b/arch/arm/mach-omap2/Kconfig
>> @@ -1,62 +1,10 @@
>>  config ARCH_OMAP
>>         bool
>>
>> -config ARCH_OMAP2PLUS
>> -       bool "TI OMAP2/3/4/5 SoCs with device tree support" if (ARCH_MULTI_V6 || ARCH_MULTI_V7)
>> -       select ARCH_HAS_CPUFREQ
>> -       select ARCH_HAS_HOLES_MEMORYMODEL
>> -       select ARCH_OMAP
>> -       select ARCH_REQUIRE_GPIOLIB
>> -       select CLKDEV_LOOKUP
>> -       select CLKSRC_MMIO
>> -       select GENERIC_CLOCKEVENTS
>> -       select GENERIC_IRQ_CHIP
>> -       select HAVE_CLK
>> -       select OMAP_DM_TIMER
>> -       select PINCTRL
>> -       select PROC_DEVICETREE if PROC_FS
>> -       select SOC_BUS
>> -       select SPARSE_IRQ
>> -       select TI_PRIV_EDMA
>> -       select USE_OF
>> -       help
>> -         Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
> [...]
>> +config ARCH_OMAP2PLUS
>> +       bool
>> +       select ARCH_HAS_BANDGAP
>> +       select ARCH_HAS_CPUFREQ
>> +       select ARCH_HAS_HOLES_MEMORYMODEL
>> +       select ARCH_OMAP
>> +       select ARCH_REQUIRE_GPIOLIB
>> +       select CLKDEV_LOOKUP
>> +       select CLKSRC_MMIO
>> +       select GENERIC_CLOCKEVENTS
>> +       select GENERIC_IRQ_CHIP
>> +       select HAVE_CLK
>> +       select OMAP_DM_TIMER
>> +       select PINCTRL
>> +       select PROC_DEVICETREE if PROC_FS
>> +       select SOC_BUS
>> +       select SPARSE_IRQ
>> +       select USE_OF
>> +       help
>> +         Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
>
>
> -Olof

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed
  2013-07-05 16:23 ` [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed Arnd Bergmann
  2013-07-08 11:31   ` Olof Johansson
@ 2013-07-08 12:00   ` Tony Lindgren
  1 sibling, 0 replies; 19+ messages in thread
From: Tony Lindgren @ 2013-07-08 12:00 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm

* Arnd Bergmann <arnd@arndb.de> [130705 09:28]:
> If we build a kernel with CONFIG_ARCH_OMAP2PLUS enabled but all of the
> individual SoCs disabled, we run into a large number of link errors
> because if incorrect dependencies:
> 
> arch/arm/mach-omap2/built-in.o: In function `_add_initiator_dep':
> arch/arm/mach-omap2/omap_hwmod.c:691: undefined reference to `clkdm_add_sleepdep' arch/arm/mach-omap2/built-in.o: In function `_del_initiator_dep':
> arch/arm/mach-omap2/omap_hwmod.c:720: undefined reference to `clkdm_del_sleepdep' arch/arm/mach-omap2/built-in.o: In function `_enable':
> arch/arm/mach-omap2/omap_hwmod.c:2145: undefined reference to `clkdm_in_hwsup'
> arch/arm/mach-omap2/omap_hwmod.c:2147: undefined reference to `clkdm_hwmod_enable'
> arch/arm/mach-omap2/omap_hwmod.c:2191: undefined reference to `clkdm_hwmod_disable'
> arch/arm/mach-omap2/omap_hwmod.c:2146: undefined reference to `clkdm_missing_idle_reporting' arch/arm/mach-omap2/built-in.o: In function `_idle':
> arch/arm/mach-omap2/omap_hwmod.c:2235: undefined reference to `clkdm_hwmod_disable' arch/arm/mach-omap2/built-in.o: In function `_shutdown':
> arch/arm/mach-omap2/omap_hwmod.c:2338: undefined reference to `clkdm_hwmod_disable' arch/arm/mach-omap2/built-in.o: In function `omap_hwmod_get_context_loss_count':
> arch/arm/mach-omap2/omap_hwmod.c:4071: undefined reference to `pwrdm_get_context_loss_count' arch/arm/mach-omap2/built-in.o: In function `omap_pm_clkdms_setup':
> arch/arm/mach-omap2/pm.c:114: undefined reference to `clkdm_allow_idle'
> arch/arm/mach-omap2/pm.c:117: undefined reference to `clkdm_sleep' arch/arm/mach-omap2/built-in.o: In function `omap2_common_pm_late_init':
> arch/arm/mach-omap2/pm.c:294: undefined reference to `omap_voltage_late_init' arch/arm/mach-omap2/built-in.o: In function `omap2_gpio_dev_init':
> arch/arm/mach-omap2/gpio.c:133: undefined reference to `pwrdm_can_ever_lose_context'
> 
> We can avoid this if we make CONFIG_ARCH_OMAP2PLUS a silent option that
> gets enabled any time that one of the SoC versions is enabled.
> 
> Cc: Tony Lindgren <tony@atomide.com>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Sounds like there's some issue as noted by Olof, but the
patch is good in general:

Acked-by: Tony Lindgren <tony@atomide.com>

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 6/8] ARM: OMAP: omap_common_late_init may be unused
  2013-07-05 16:23 ` [PATCH 6/8] ARM: OMAP: omap_common_late_init may be unused Arnd Bergmann
@ 2013-07-08 12:01   ` Tony Lindgren
  0 siblings, 0 replies; 19+ messages in thread
From: Tony Lindgren @ 2013-07-08 12:01 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm

* Arnd Bergmann <arnd@arndb.de> [130705 09:28]:
> Some OMAP SoCs use this function while others do not, and that
> causes a warning when building multi_v7_defconfig. Marking the
> function __maybe_unused silences the harmless warning without the
> need to add complex #ifdef logic.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Tony Lindgren <tony@atomide.com>

> ---
>  arch/arm/mach-omap2/io.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
> index fe3253a..4a3f06f 100644
> --- a/arch/arm/mach-omap2/io.c
> +++ b/arch/arm/mach-omap2/io.c
> @@ -394,7 +394,7 @@ static void __init omap_hwmod_init_postsetup(void)
>  	omap_pm_if_early_init();
>  }
>  
> -static void __init omap_common_late_init(void)
> +static void __init __maybe_unused omap_common_late_init(void)
>  {
>  	omap_mux_late_init();
>  	omap2_common_pm_late_init();
> -- 
> 1.8.3.1
> 

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 2/8] ARM: omap5: omap5 has SCU and TWD
  2013-07-05 16:23 ` [PATCH 2/8] ARM: omap5: omap5 has SCU and TWD Arnd Bergmann
@ 2013-07-08 12:03   ` Tony Lindgren
  0 siblings, 0 replies; 19+ messages in thread
From: Tony Lindgren @ 2013-07-08 12:03 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-kernel, linux-arm-kernel, arm

* Arnd Bergmann <arnd@arndb.de> [130705 09:28]:
> These are selected by omap4 but used in common omap4/5
> SMP code, so building an omap5-only kernel is actually
> broken without this patch.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Tony Lindgren <tony@atomide.com>

>  arch/arm/mach-omap2/Kconfig | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index 1fdb462..1f8127a 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -110,6 +110,8 @@ config SOC_OMAP5
>  	select ARM_CPU_SUSPEND if PM
>  	select ARM_GIC
>  	select CPU_V7
> +	select HAVE_ARM_SCU if SMP
> +	select HAVE_ARM_TWD if LOCAL_TIMERS
>  	select HAVE_SMP
>  	select COMMON_CLK
>  	select HAVE_ARM_ARCH_TIMER
> -- 
> 1.8.3.1
> 

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2013-07-08 12:03 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-05 16:23 [PATCH 0/8] ARM: SoC specific bug fixes Arnd Bergmann
2013-07-05 16:23 ` [PATCH 1/8] clocksource: armada-xp: always register local_timer_ops Arnd Bergmann
2013-07-05 16:33   ` Gregory CLEMENT
2013-07-05 16:57     ` Stephen Boyd
2013-07-05 16:23 ` [PATCH 2/8] ARM: omap5: omap5 has SCU and TWD Arnd Bergmann
2013-07-08 12:03   ` Tony Lindgren
2013-07-05 16:23 ` [PATCH 3/8] ARM: zynq: use DT_MACHINE_START Arnd Bergmann
2013-07-08  6:18   ` Michal Simek
2013-07-05 16:23 ` [PATCH 4/8] ARM: OMAP: build mach-omap code only if needed Arnd Bergmann
2013-07-08 11:31   ` Olof Johansson
2013-07-08 11:34     ` Olof Johansson
2013-07-08 11:34       ` Olof Johansson
2013-07-08 12:00   ` Tony Lindgren
2013-07-05 16:23 ` [PATCH 5/8] ARM: sti: move DEBUG_STI_UART into alphabetical order Arnd Bergmann
2013-07-05 16:23 ` [PATCH 6/8] ARM: OMAP: omap_common_late_init may be unused Arnd Bergmann
2013-07-08 12:01   ` Tony Lindgren
2013-07-05 16:23 ` [PATCH 7/8] ARM: ixp4xx: avoid circular header dependency Arnd Bergmann
2013-07-06 18:11   ` Krzysztof Halasa
2013-07-05 16:23 ` [PATCH 8/8] ARM: exynos: select PM_GENERIC_DOMAINS only when used Arnd Bergmann

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.