Re: [PATCH] clocksource: whitelist asm9260_timer driver for ARM

From: Daniel Lezcano
Date: Mon Feb 23 2015 - 13:57:35 EST


On 02/23/2015 06:57 PM, Guenter Roeck wrote:
On Mon, Feb 23, 2015 at 06:48:47PM +0100, Daniel Lezcano wrote:
On 02/18/2015 08:17 AM, Guenter Roeck wrote:
On 02/10/2015 07:57 AM, Oleksij Rempel wrote:
For now it is easier to allow only tested platforms, instead of
fighting with different platform specific issues.

This patch is fixing compile error on ARCH=SPARC and SPARC64:

Building sparc64:allmodconfig ... failed
--------------
Error log:
drivers/built-in.o: In function `asm9260_timer_init':
asm9260_timer.c:(.init.text+0x60d4): undefined reference to
`of_io_request_and_map'

Tested-by: Guenter Roeck <linux@xxxxxxxxxxxx>
Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
Signed-off-by: Oleksij Rempel <linux@xxxxxxxxxxxxxxxx>

The problem solved by this patch has affected linux-next
for almost a month, the problem is now in mainline, yet
I have not seen feedback from anyone about it.

Did the patch get lost, or is there some problem with it ?

Hi Guenter, Oleksij,

so I reviewed the patch more in detail.

The sparc/sparc64 configuration shouldn't select this timer.

What do you think about the following patch ?

Yes, that makes sense to me. What it really means is that no architecture
but MACH_ASM9260 should select the ASM9260 timer driver, and that it must
always be present on MACH_ASM9260 (is that true, or should it still be
configurable ?).

Regarding the previous configuration (default y if MACH_ASM9260) I assume it is always the case.


I just hope that _some_ patch fixing the build will make it into
the upstream kernel before 4.0 is released ;-).

Thanks,
Guenter

diff --git a/arch/arm/mach-asm9260/Kconfig b/arch/arm/mach-asm9260/Kconfig
index 8423be7..5224120 100644
--- a/arch/arm/mach-asm9260/Kconfig
+++ b/arch/arm/mach-asm9260/Kconfig
@@ -2,5 +2,7 @@ config MACH_ASM9260
bool "Alphascale ASM9260"
depends on ARCH_MULTI_V5
select CPU_ARM926T
+ select ASM9260_TIMER
+ select GENERIC_CLOCKEVENTS
help
Support for Alphascale ASM9260 based platform.
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 72a3827..f9c1995 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -60,6 +60,11 @@ config VT8500_TIMER
config CADENCE_TTC_TIMER
bool

+config ASM9260_TIMER
+ bool
+ select CLKSRC_MMIO
+ select CLKSRC_OF
+
config CLKSRC_NOMADIK_MTU
bool
depends on (ARCH_NOMADIK || ARCH_U8500)
@@ -235,15 +240,4 @@ config CLKSRC_MIPS_GIC
bool
depends on MIPS_GIC
select CLKSRC_OF
-
-config ASM9260_TIMER
- bool "Alphascale ASM9260 timer driver"
- depends on GENERIC_CLOCKEVENTS
- select CLKSRC_MMIO
- select CLKSRC_OF
- default y if MACH_ASM9260
- help
- This enables build of a clocksource and clockevent driver for
- the 32-bit System Timer hardware available on a Alphascale ASM9260.
-
endmenu






---
drivers/clocksource/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index bfaaae4..39d5c11 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -231,7 +231,7 @@ config CLKSRC_MIPS_GIC

config ASM9260_TIMER
bool "Alphascale ASM9260 timer driver"
- depends on GENERIC_CLOCKEVENTS
+ depends on GENERIC_CLOCKEVENTS && ARM
select CLKSRC_MMIO
select CLKSRC_OF
default y if MACH_ASM9260




--
<http://www.linaro.org/> Linaro.org â Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog



--
<http://www.linaro.org/> Linaro.org â Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/