All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option
@ 2015-11-02 12:56 Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
                   ` (20 more replies)
  0 siblings, 21 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 26f659e..a1c9312 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -112,8 +112,10 @@ config CLKSRC_LPC32XX
 	select CLKSRC_OF
 
 config CLKSRC_PISTACHIO
-	bool
+	bool "Clocksource for Pistachio SoC" if COMPILE_TEST
 	select CLKSRC_OF
+	help
+	  Enables the clocksource for the Pistachio SoC.
 
 config CLKSRC_STM32
 	bool "Clocksource for STM32 SoCs" if !ARCH_STM32
-- 
1.9.1


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

* [PATCH 02/22] clocksource/drivers/mediatek: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 12:56   ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 04/22] clocksource/drivers/rockchip: Add COMPILE_TEST option Daniel Lezcano
                     ` (18 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Matthias Brugger,
	moderated list:ARM/Mediatek SoC...,
	moderated list:ARM/Mediatek SoC...

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index a1c9312..dc79fde 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -210,9 +210,11 @@ config SYS_SUPPORTS_SH_CMT
         bool
 
 config MTK_TIMER
+	bool "Mediatek timer driver" if COMPILE_TEST
 	select CLKSRC_OF
 	select CLKSRC_MMIO
-	bool
+	help
+	  Support for Mediatek timer driver.
 
 config SYS_SUPPORTS_SH_MTU2
         bool
-- 
1.9.1


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

* [PATCH 02/22] clocksource/drivers/mediatek: Add the COMPILE_TEST option
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Matthias Brugger,
	moderated list:ARM/Mediatek SoC...,
	moderated list:ARM/Mediatek SoC...

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index a1c9312..dc79fde 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -210,9 +210,11 @@ config SYS_SUPPORTS_SH_CMT
         bool
 
 config MTK_TIMER
+	bool "Mediatek timer driver" if COMPILE_TEST
 	select CLKSRC_OF
 	select CLKSRC_MMIO
-	bool
+	help
+	  Support for Mediatek timer driver.
 
 config SYS_SUPPORTS_SH_MTU2
         bool
-- 
1.9.1

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

* [PATCH 02/22] clocksource/drivers/mediatek: Add the COMPILE_TEST option
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: linux-arm-kernel

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index a1c9312..dc79fde 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -210,9 +210,11 @@ config SYS_SUPPORTS_SH_CMT
         bool
 
 config MTK_TIMER
+	bool "Mediatek timer driver" if COMPILE_TEST
 	select CLKSRC_OF
 	select CLKSRC_MMIO
-	bool
+	help
+	  Support for Mediatek timer driver.
 
 config SYS_SUPPORTS_SH_MTU2
         bool
-- 
1.9.1

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

* [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Caesar Wang, Heiko Stuebner,
	moderated list:ARM/Rockchip SoC..., open list:ARM/Rockchip SoC...

From: Caesar Wang <wxt@rock-chips.com>

Build the arm64 SoCs (e.g.: RK3368) on Rockchip platform,
There are some failure with build up on timer driver for rockchip.

Says:
/tmp/ccdAnNy5.s:47: Error: missing immediate expression at  operand 1 --
`dsb`
...

The problem was different semantics of dsb on btw arm32 and arm64,
Here we can convert the dsb with insteading of dsb(sy).The "sy" param
is the default which you are allow to omit, so on arm32 dsb()and dsb(sy)
are the same.

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/rockchip_timer.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/clocksource/rockchip_timer.c b/drivers/clocksource/rockchip_timer.c
index d3c1742..724c321 100644
--- a/drivers/clocksource/rockchip_timer.c
+++ b/drivers/clocksource/rockchip_timer.c
@@ -49,14 +49,14 @@ static inline void __iomem *rk_base(struct clock_event_device *ce)
 static inline void rk_timer_disable(struct clock_event_device *ce)
 {
 	writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
-	dsb();
+	dsb(sy);
 }
 
 static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
 {
 	writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
 		       rk_base(ce) + TIMER_CONTROL_REG);
-	dsb();
+	dsb(sy);
 }
 
 static void rk_timer_update_counter(unsigned long cycles,
@@ -64,13 +64,13 @@ static void rk_timer_update_counter(unsigned long cycles,
 {
 	writel_relaxed(cycles, rk_base(ce) + TIMER_LOAD_COUNT0);
 	writel_relaxed(0, rk_base(ce) + TIMER_LOAD_COUNT1);
-	dsb();
+	dsb(sy);
 }
 
 static void rk_timer_interrupt_clear(struct clock_event_device *ce)
 {
 	writel_relaxed(1, rk_base(ce) + TIMER_INT_STATUS);
-	dsb();
+	dsb(sy);
 }
 
 static inline int rk_timer_set_next_event(unsigned long cycles,
-- 
1.9.1


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

* [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx-hfZtesqFncYOwBW4kG4KsQ
  Cc: Heiko Stuebner, arnd-r2nGTMty4D4,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	open list:ARM/Rockchip SoC...,
	john.stultz-QSEj5FYQhm4dnm+yROfE0A,
	moderated list:ARM/Rockchip SoC...,
	Caesar Wang

From: Caesar Wang <wxt-TNX95d0MmH7DzftRWevZcw@public.gmane.org>

Build the arm64 SoCs (e.g.: RK3368) on Rockchip platform,
There are some failure with build up on timer driver for rockchip.

Says:
/tmp/ccdAnNy5.s:47: Error: missing immediate expression at  operand 1 --
`dsb`
...

The problem was different semantics of dsb on btw arm32 and arm64,
Here we can convert the dsb with insteading of dsb(sy).The "sy" param
is the default which you are allow to omit, so on arm32 dsb()and dsb(sy)
are the same.

Signed-off-by: Caesar Wang <wxt-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
---
 drivers/clocksource/rockchip_timer.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/clocksource/rockchip_timer.c b/drivers/clocksource/rockchip_timer.c
index d3c1742..724c321 100644
--- a/drivers/clocksource/rockchip_timer.c
+++ b/drivers/clocksource/rockchip_timer.c
@@ -49,14 +49,14 @@ static inline void __iomem *rk_base(struct clock_event_device *ce)
 static inline void rk_timer_disable(struct clock_event_device *ce)
 {
 	writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
-	dsb();
+	dsb(sy);
 }
 
 static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
 {
 	writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
 		       rk_base(ce) + TIMER_CONTROL_REG);
-	dsb();
+	dsb(sy);
 }
 
 static void rk_timer_update_counter(unsigned long cycles,
@@ -64,13 +64,13 @@ static void rk_timer_update_counter(unsigned long cycles,
 {
 	writel_relaxed(cycles, rk_base(ce) + TIMER_LOAD_COUNT0);
 	writel_relaxed(0, rk_base(ce) + TIMER_LOAD_COUNT1);
-	dsb();
+	dsb(sy);
 }
 
 static void rk_timer_interrupt_clear(struct clock_event_device *ce)
 {
 	writel_relaxed(1, rk_base(ce) + TIMER_INT_STATUS);
-	dsb();
+	dsb(sy);
 }
 
 static inline int rk_timer_set_next_event(unsigned long cycles,
-- 
1.9.1

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

* [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: linux-arm-kernel

From: Caesar Wang <wxt@rock-chips.com>

Build the arm64 SoCs (e.g.: RK3368) on Rockchip platform,
There are some failure with build up on timer driver for rockchip.

Says:
/tmp/ccdAnNy5.s:47: Error: missing immediate expression at  operand 1 --
`dsb`
...

The problem was different semantics of dsb on btw arm32 and arm64,
Here we can convert the dsb with insteading of dsb(sy).The "sy" param
is the default which you are allow to omit, so on arm32 dsb()and dsb(sy)
are the same.

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/rockchip_timer.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/clocksource/rockchip_timer.c b/drivers/clocksource/rockchip_timer.c
index d3c1742..724c321 100644
--- a/drivers/clocksource/rockchip_timer.c
+++ b/drivers/clocksource/rockchip_timer.c
@@ -49,14 +49,14 @@ static inline void __iomem *rk_base(struct clock_event_device *ce)
 static inline void rk_timer_disable(struct clock_event_device *ce)
 {
 	writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
-	dsb();
+	dsb(sy);
 }
 
 static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
 {
 	writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
 		       rk_base(ce) + TIMER_CONTROL_REG);
-	dsb();
+	dsb(sy);
 }
 
 static void rk_timer_update_counter(unsigned long cycles,
@@ -64,13 +64,13 @@ static void rk_timer_update_counter(unsigned long cycles,
 {
 	writel_relaxed(cycles, rk_base(ce) + TIMER_LOAD_COUNT0);
 	writel_relaxed(0, rk_base(ce) + TIMER_LOAD_COUNT1);
-	dsb();
+	dsb(sy);
 }
 
 static void rk_timer_interrupt_clear(struct clock_event_device *ce)
 {
 	writel_relaxed(1, rk_base(ce) + TIMER_INT_STATUS);
-	dsb();
+	dsb(sy);
 }
 
 static inline int rk_timer_set_next_event(unsigned long cycles,
-- 
1.9.1

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

* [PATCH 04/22] clocksource/drivers/rockchip: Add COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 05/22] clocksource/drivers/armada-370-xp: Add the " Daniel Lezcano
                   ` (17 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Due to the dsb() usage in the driver, this driver is only compilable on
ARM and ARM64.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index dc79fde..6f85622 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -30,8 +30,11 @@ config DW_APB_TIMER_OF
 	select CLKSRC_OF
 
 config ROCKCHIP_TIMER
-	bool
+	bool "Rockchip timer driver" if COMPILE_TEST
+	depends on ARM || ARM64
 	select CLKSRC_OF
+	help
+	  Enables the support for the rockchip timer driver.
 
 config ARMADA_370_XP_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 05/22] clocksource/drivers/armada-370-xp: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (2 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 04/22] clocksource/drivers/rockchip: Add COMPILE_TEST option Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 06/22] clocksource/drivers/meson6: " Daniel Lezcano
                   ` (16 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Due to the non portable 'delay' code, the compilation is restricted to the
ARM architecture only.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 6f85622..0b5bdb4 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -37,8 +37,11 @@ config ROCKCHIP_TIMER
 	  Enables the support for the rockchip timer driver.
 
 config ARMADA_370_XP_TIMER
-	bool
+	bool "Armada 370 and XP timer driver" if COMPILE_TEST
+	depends on ARM
 	select CLKSRC_OF
+	help
+	  Enables the support for the Armada 370 and XP timer driver.
 
 config MESON6_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 06/22] clocksource/drivers/meson6: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (3 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 05/22] clocksource/drivers/armada-370-xp: Add the " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 07/22] clocksource/drivers/orion: " Daniel Lezcano
                   ` (15 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 0b5bdb4..2c76c2d 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -44,8 +44,10 @@ config ARMADA_370_XP_TIMER
 	  Enables the support for the Armada 370 and XP timer driver.
 
 config MESON6_TIMER
-	bool
+	bool "Meson6 timer driver" if COMPILE_TEST
 	select CLKSRC_MMIO
+	help
+	  Enables the support for the Meson6 timer driver.
 
 config ORION_TIMER
 	select CLKSRC_OF
-- 
1.9.1


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

* [PATCH 07/22] clocksource/drivers/orion: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (4 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 06/22] clocksource/drivers/meson6: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 08/22] clocksource/drivers/digicolor: " Daniel Lezcano
                   ` (14 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

The driver is using the atomic_io API which is not portable, so the
compilation is restricted to ARM only.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 2c76c2d..8a80221 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -50,9 +50,12 @@ config MESON6_TIMER
 	  Enables the support for the Meson6 timer driver.
 
 config ORION_TIMER
+	bool "Orion timer driver" if COMPILE_TEST
+	depends on ARM
 	select CLKSRC_OF
 	select CLKSRC_MMIO
-	bool
+	help
+	  Enables the support for the Orion timer driver
 
 config SUN4I_TIMER
 	select CLKSRC_MMIO
-- 
1.9.1


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

* [PATCH 08/22] clocksource/drivers/digicolor: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (5 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 07/22] clocksource/drivers/orion: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 09/22] clocksource/drivers/dw_apb: " Daniel Lezcano
                   ` (13 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 8a80221..5b0f63a 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -19,7 +19,9 @@ config CLKSRC_MMIO
 	bool
 
 config DIGICOLOR_TIMER
-	bool
+	bool "Digicolor timer driver" if COMPILE_TEST
+	help
+	  Enables the support for the digicolor timer driver.
 
 config DW_APB_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 09/22] clocksource/drivers/dw_apb: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (6 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 08/22] clocksource/drivers/digicolor: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 10/22] clocksource/drivers/sun4i: " Daniel Lezcano
                   ` (12 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 5b0f63a..a8afd8a 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -24,7 +24,9 @@ config DIGICOLOR_TIMER
 	  Enables the support for the digicolor timer driver.
 
 config DW_APB_TIMER
-	bool
+	bool "DW APB timer driver" if COMPILE_TEST
+	help
+	  Enables the support for the dw_apb timer.
 
 config DW_APB_TIMER_OF
 	bool
-- 
1.9.1


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

* [PATCH 10/22] clocksource/drivers/sun4i: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (7 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 09/22] clocksource/drivers/dw_apb: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 11/22] clocksource/drivers/sun5i: " Daniel Lezcano
                   ` (11 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index a8afd8a..4c0daae 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -62,8 +62,10 @@ config ORION_TIMER
 	  Enables the support for the Orion timer driver
 
 config SUN4I_TIMER
+	bool "Sun4i timer driver" if COMPILE_TEST
 	select CLKSRC_MMIO
-	bool
+	help
+	  Enables support for the Sun4i timer.
 
 config SUN5I_HSTIMER
 	select CLKSRC_MMIO
-- 
1.9.1


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

* [PATCH 11/22] clocksource/drivers/sun5i: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (8 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 10/22] clocksource/drivers/sun4i: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 12/22] clocksource/drivers/tegra2: " Daniel Lezcano
                   ` (10 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

The driver depends on the common clock framework, thus the dependency added
on COMMON_CLK.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 4c0daae..58dabd3 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -68,8 +68,11 @@ config SUN4I_TIMER
 	  Enables support for the Sun4i timer.
 
 config SUN5I_HSTIMER
+	bool "Sun5i timer driver" if COMPILE_TEST
 	select CLKSRC_MMIO
-	bool
+	depends on COMMON_CLK
+	help
+	  Enables support the Sun5i timer.
 
 config TEGRA_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 12/22] clocksource/drivers/tegra2: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (9 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 11/22] clocksource/drivers/sun5i: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
                   ` (9 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Due to the non portable code for the delay timer, this option is only
available for the ARM architecture.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 58dabd3..1af13c9 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -75,7 +75,10 @@ config SUN5I_HSTIMER
 	  Enables support the Sun5i timer.
 
 config TEGRA_TIMER
-	bool
+	bool "Tegra timer driver" if COMPILE_TEST
+	depends on ARM
+	help
+	  Enables support for the Tegra driver.
 
 config VT8500_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 13/22] clocksource/drivers/vt8500: Remove unneeded header
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
@ 2015-11-02 12:56   ` Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
                     ` (19 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Tony Prisk,
	moderated list:ARM/VT8500 ARM AR...

Remove the <asm/time.h> header inclusion which is pointless.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/vt8500_timer.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/clocksource/vt8500_timer.c b/drivers/clocksource/vt8500_timer.c
index a92e94b..de49805 100644
--- a/drivers/clocksource/vt8500_timer.c
+++ b/drivers/clocksource/vt8500_timer.c
@@ -30,7 +30,6 @@
 #include <linux/clocksource.h>
 #include <linux/clockchips.h>
 #include <linux/delay.h>
-#include <asm/mach/time.h>
 
 #include <linux/of.h>
 #include <linux/of_address.h>
-- 
1.9.1


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

* [PATCH 13/22] clocksource/drivers/vt8500: Remove unneeded header
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: linux-arm-kernel

Remove the <asm/time.h> header inclusion which is pointless.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/vt8500_timer.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/clocksource/vt8500_timer.c b/drivers/clocksource/vt8500_timer.c
index a92e94b..de49805 100644
--- a/drivers/clocksource/vt8500_timer.c
+++ b/drivers/clocksource/vt8500_timer.c
@@ -30,7 +30,6 @@
 #include <linux/clocksource.h>
 #include <linux/clockchips.h>
 #include <linux/delay.h>
-#include <asm/mach/time.h>
 
 #include <linux/of.h>
 #include <linux/of_address.h>
-- 
1.9.1

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

* [PATCH 14/22] clocksource/drivers/vt8500: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (11 preceding siblings ...)
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 15/22] clocksource/drivers/cadence_ttc: " Daniel Lezcano
                   ` (7 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 1af13c9..b0136fc 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -81,7 +81,9 @@ config TEGRA_TIMER
 	  Enables support for the Tegra driver.
 
 config VT8500_TIMER
-	bool
+	bool "VT8500 timer driver" if COMPILE_TEST
+	help
+	  Enables support for the VT8500 driver.
 
 config CADENCE_TTC_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 15/22] clocksource/drivers/cadence_ttc: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (12 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 14/22] clocksource/drivers/vt8500: Add the COMPILE_TEST option Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 16/22] clocksource/drivers/asm9260: " Daniel Lezcano
                   ` (6 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

The driver depends on the common clock framework, thus the dependency added
on COMMON_CLK.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index b0136fc..b631b14 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -86,7 +86,10 @@ config VT8500_TIMER
 	  Enables support for the VT8500 driver.
 
 config CADENCE_TTC_TIMER
-	bool
+	bool "Cadence TTC timer driver" if COMPILE_TEST
+	depends on COMMON_CLK
+	help
+	  Enables support for the cadence ttc driver.
 
 config ASM9260_TIMER
 	bool
-- 
1.9.1


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

* [PATCH 16/22] clocksource/drivers/asm9260: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (13 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 15/22] clocksource/drivers/cadence_ttc: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 17/22] clocksource/drivers/lpc32xx: " Daniel Lezcano
                   ` (5 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index b631b14..f6a1c3e 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -92,9 +92,11 @@ config CADENCE_TTC_TIMER
 	  Enables support for the cadence ttc driver.
 
 config ASM9260_TIMER
-	bool
+	bool "ASM9260 timer driver" if COMPILE_TEST
 	select CLKSRC_MMIO
 	select CLKSRC_OF
+	help
+	  Enables support for the ASM9260 timer.
 
 config CLKSRC_NOMADIK_MTU
 	bool
-- 
1.9.1


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

* [PATCH 17/22] clocksource/drivers/lpc32xx: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (14 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 16/22] clocksource/drivers/asm9260: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 18/22] clocksource/drivers/nomadik_mtu: " Daniel Lezcano
                   ` (4 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index f6a1c3e..31ba1c2 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -137,9 +137,11 @@ config CLKSRC_EFM32
 	  event device.
 
 config CLKSRC_LPC32XX
-	bool
+	bool "Clocksource for LPC32XX" if COMPILE_TEST
 	select CLKSRC_MMIO
 	select CLKSRC_OF
+	help
+	  Support for the LPC32XX clocksource.
 
 config CLKSRC_PISTACHIO
 	bool "Clocksource for Pistachio SoC" if COMPILE_TEST
-- 
1.9.1


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

* [PATCH 18/22] clocksource/drivers/nomadik_mtu: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (15 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 17/22] clocksource/drivers/lpc32xx: " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
                   ` (3 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Due to the non portable code for the delay timer, this option is only
available for the ARM architecture.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 31ba1c2..17674b4 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -99,8 +99,8 @@ config ASM9260_TIMER
 	  Enables support for the ASM9260 timer.
 
 config CLKSRC_NOMADIK_MTU
-	bool
-	depends on (ARCH_NOMADIK || ARCH_U8500)
+	bool "Nomakdik clocksource driver" if COMPILE_TEST
+	depends on ARM
 	select CLKSRC_MMIO
 	help
 	  Support for Multi Timer Unit. MTU provides access
-- 
1.9.1


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

* [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
@ 2015-11-02 12:56   ` Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
                     ` (19 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Linus Walleij, Russell King,
	moderated list:ARM/Ux500 ARM ARC...

Let the platform's Kconfig to select the clock instead of having a reverse
dependency from the driver to the platform options.

Add the COMPILE_TEST option for the compilation test coverage.

This change is debatable as the option itself in the Kconfig allows to
select the driver for the platform or not. This change will make the prcmu
timer always selected.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 arch/arm/mach-ux500/Kconfig | 1 +
 drivers/clocksource/Kconfig | 4 +---
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index c9ac19b..5eacdd6 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -32,6 +32,7 @@ config UX500_SOC_DB8500
 	select PINCTRL_AB8540
 	select REGULATOR
 	select REGULATOR_DB8500_PRCMU
+	select CLKSRC_DBX500_PRCMU
 	select PM_GENERIC_DOMAINS if PM
 
 config MACH_MOP500
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 17674b4..916c36d 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -114,9 +114,7 @@ config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
 	  Use the Multi Timer Unit as the sched_clock.
 
 config CLKSRC_DBX500_PRCMU
-	bool "Clocksource PRCMU Timer"
-	depends on UX500_SOC_DB8500
-	default y
+	bool "Clocksource PRCMU Timer" if COMPILE_TEST
 	help
 	  Use the always on PRCMU Timer as clocksource
 
-- 
1.9.1


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

* [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: linux-arm-kernel

Let the platform's Kconfig to select the clock instead of having a reverse
dependency from the driver to the platform options.

Add the COMPILE_TEST option for the compilation test coverage.

This change is debatable as the option itself in the Kconfig allows to
select the driver for the platform or not. This change will make the prcmu
timer always selected.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 arch/arm/mach-ux500/Kconfig | 1 +
 drivers/clocksource/Kconfig | 4 +---
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index c9ac19b..5eacdd6 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -32,6 +32,7 @@ config UX500_SOC_DB8500
 	select PINCTRL_AB8540
 	select REGULATOR
 	select REGULATOR_DB8500_PRCMU
+	select CLKSRC_DBX500_PRCMU
 	select PM_GENERIC_DOMAINS if PM
 
 config MACH_MOP500
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 17674b4..916c36d 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -114,9 +114,7 @@ config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
 	  Use the Multi Timer Unit as the sched_clock.
 
 config CLKSRC_DBX500_PRCMU
-	bool "Clocksource PRCMU Timer"
-	depends on UX500_SOC_DB8500
-	default y
+	bool "Clocksource PRCMU Timer" if COMPILE_TEST
 	help
 	  Use the always on PRCMU Timer as clocksource
 
-- 
1.9.1

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 12:56   ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 04/22] clocksource/drivers/rockchip: Add COMPILE_TEST option Daniel Lezcano
                     ` (18 subsequent siblings)
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

Let the platform's Kconfig to select the clock instead of having a reverse
dependency from the driver to the platform options.

Add the COMPILE_TEST option for the compilation test coverage. Due to the
non portable 'delay' code, this driver is only compilable on ARM.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 arch/arm/mach-exynos/Kconfig | 1 +
 drivers/clocksource/Kconfig  | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 3a10f1a..ff10539 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
 	select SRAM
 	select THERMAL
 	select MFD_SYSCON
+	select CLKSRC_EXYNOS_MCT
 	help
 	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
 
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 916c36d..d829cbe 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
 	  This option enables support for the Meta per-thread timers.
 
 config CLKSRC_EXYNOS_MCT
-	def_bool y if ARCH_EXYNOS
-	depends on !ARM64
+	bool "Exynos multi core timer driver" if COMPILE_TEST
+	depends on ARM
 	help
 	  Support for Multi Core Timer controller on Exynos SoCs.
 
-- 
1.9.1


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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

Let the platform's Kconfig to select the clock instead of having a reverse
dependency from the driver to the platform options.

Add the COMPILE_TEST option for the compilation test coverage. Due to the
non portable 'delay' code, this driver is only compilable on ARM.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 arch/arm/mach-exynos/Kconfig | 1 +
 drivers/clocksource/Kconfig  | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 3a10f1a..ff10539 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
 	select SRAM
 	select THERMAL
 	select MFD_SYSCON
+	select CLKSRC_EXYNOS_MCT
 	help
 	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
 
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 916c36d..d829cbe 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
 	  This option enables support for the Meta per-thread timers.
 
 config CLKSRC_EXYNOS_MCT
-	def_bool y if ARCH_EXYNOS
-	depends on !ARM64
+	bool "Exynos multi core timer driver" if COMPILE_TEST
+	depends on ARM
 	help
 	  Support for Multi Core Timer controller on Exynos SoCs.
 
-- 
1.9.1

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-02 12:56   ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: linux-arm-kernel

Let the platform's Kconfig to select the clock instead of having a reverse
dependency from the driver to the platform options.

Add the COMPILE_TEST option for the compilation test coverage. Due to the
non portable 'delay' code, this driver is only compilable on ARM.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 arch/arm/mach-exynos/Kconfig | 1 +
 drivers/clocksource/Kconfig  | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 3a10f1a..ff10539 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
 	select SRAM
 	select THERMAL
 	select MFD_SYSCON
+	select CLKSRC_EXYNOS_MCT
 	help
 	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
 
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 916c36d..d829cbe 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
 	  This option enables support for the Meta per-thread timers.
 
 config CLKSRC_EXYNOS_MCT
-	def_bool y if ARCH_EXYNOS
-	depends on !ARM64
+	bool "Exynos multi core timer driver" if COMPILE_TEST
+	depends on ARM
 	help
 	  Support for Multi Core Timer controller on Exynos SoCs.
 
-- 
1.9.1

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

* [PATCH 21/22] clocksource/drivers/samsung-pwm: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (18 preceding siblings ...)
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  2015-11-02 12:56 ` [PATCH 22/22] clocksource/drivers/fsl-ftm: " Daniel Lezcano
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index d829cbe..8f2a3fb 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -219,7 +219,7 @@ config CLKSRC_EXYNOS_MCT
 	  Support for Multi Core Timer controller on Exynos SoCs.
 
 config CLKSRC_SAMSUNG_PWM
-	bool
+	bool "PWM timer drvier for Samsung S3C, S5P" if COMPILE_TEST
 	help
 	  This is a new clocksource driver for the PWM timer found in
 	  Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
-- 
1.9.1


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

* [PATCH 22/22] clocksource/drivers/fsl-ftm: Add the COMPILE_TEST option
  2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
                   ` (19 preceding siblings ...)
  2015-11-02 12:56 ` [PATCH 21/22] clocksource/drivers/samsung-pwm: Add the " Daniel Lezcano
@ 2015-11-02 12:56 ` Daniel Lezcano
  20 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 12:56 UTC (permalink / raw)
  To: tglx; +Cc: john.stultz, linux-kernel, arnd

Increase the compilation test coverage by adding the COMPILE_TEST option.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
index 8f2a3fb..d199f48 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -227,7 +227,7 @@ config CLKSRC_SAMSUNG_PWM
 	  needed only on systems that do not have the Exynos MCT available.
 
 config FSL_FTM_TIMER
-	bool
+	bool "Freescale FlexTimer Module driver" if COMPILE_TEST
 	help
 	  Support for Freescale FlexTimer Module (FTM) timer.
 
-- 
1.9.1


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

* Re: [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add COMPILE_TEST option
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 14:40     ` Linus Walleij
  -1 siblings, 0 replies; 68+ messages in thread
From: Linus Walleij @ 2015-11-02 14:40 UTC (permalink / raw)
  To: Daniel Lezcano
  Cc: Thomas Gleixner, John Stultz, linux-kernel, Arnd Bergmann,
	Russell King, moderated list:ARM/Ux500 ARM ARC...

On Mon, Nov 2, 2015 at 1:56 PM, Daniel Lezcano
<daniel.lezcano@linaro.org> wrote:

> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.
>
> Add the COMPILE_TEST option for the compilation test coverage.
>
> This change is debatable as the option itself in the Kconfig allows to
> select the driver for the platform or not. This change will make the prcmu
> timer always selected.
>
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Please merge this into the clksrc tree.

Yours,
Linus Walleij

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

* [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-02 14:40     ` Linus Walleij
  0 siblings, 0 replies; 68+ messages in thread
From: Linus Walleij @ 2015-11-02 14:40 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 2, 2015 at 1:56 PM, Daniel Lezcano
<daniel.lezcano@linaro.org> wrote:

> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.
>
> Add the COMPILE_TEST option for the compilation test coverage.
>
> This change is debatable as the option itself in the Kconfig allows to
> select the driver for the platform or not. This change will make the prcmu
> timer always selected.
>
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Please merge this into the clksrc tree.

Yours,
Linus Walleij

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

* Re: [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add COMPILE_TEST option
  2015-11-02 14:40     ` Linus Walleij
@ 2015-11-02 14:57       ` Daniel Lezcano
  -1 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 14:57 UTC (permalink / raw)
  To: Linus Walleij
  Cc: Thomas Gleixner, John Stultz, linux-kernel, Arnd Bergmann,
	Russell King, moderated list:ARM/Ux500 ARM ARC...

On 11/02/2015 03:40 PM, Linus Walleij wrote:
> On Mon, Nov 2, 2015 at 1:56 PM, Daniel Lezcano
> <daniel.lezcano@linaro.org> wrote:
>
>> Let the platform's Kconfig to select the clock instead of having a reverse
>> dependency from the driver to the platform options.
>>
>> Add the COMPILE_TEST option for the compilation test coverage.
>>
>> This change is debatable as the option itself in the Kconfig allows to
>> select the driver for the platform or not. This change will make the prcmu
>> timer always selected.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>
> Acked-by: Linus Walleij <linus.walleij@linaro.org>
>
> Please merge this into the clksrc tree.

Thanks for the review.

   -- Daniel


-- 
  <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


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

* [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-02 14:57       ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 14:57 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/02/2015 03:40 PM, Linus Walleij wrote:
> On Mon, Nov 2, 2015 at 1:56 PM, Daniel Lezcano
> <daniel.lezcano@linaro.org> wrote:
>
>> Let the platform's Kconfig to select the clock instead of having a reverse
>> dependency from the driver to the platform options.
>>
>> Add the COMPILE_TEST option for the compilation test coverage.
>>
>> This change is debatable as the option itself in the Kconfig allows to
>> select the driver for the platform or not. This change will make the prcmu
>> timer always selected.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>
> Acked-by: Linus Walleij <linus.walleij@linaro.org>
>
> Please merge this into the clksrc tree.

Thanks for the review.

   -- Daniel


-- 
  <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

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

* Re: [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
  2015-11-02 12:56   ` Daniel Lezcano
@ 2015-11-02 15:33     ` Arnd Bergmann
  -1 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-02 15:33 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: Daniel Lezcano, tglx, Heiko Stuebner, linux-kernel,
	open list:ARM/Rockchip SoC...,
	john.stultz, Caesar Wang

On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
>  static inline void rk_timer_disable(struct clock_event_device *ce)
>  {
>         writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
> -       dsb();
> +       dsb(sy);
>  }
>  
>  static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
>  {
>         writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
>                        rk_base(ce) + TIMER_CONTROL_REG);
> -       dsb();
> +       dsb(sy);
>  }
>  
> 

This will fail the compile test, because dsb() is not available on non-ARM
architectures. Would it be enough to just use the normal writel() accessor
here?

	Arnd

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

* [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 15:33     ` Arnd Bergmann
  0 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-02 15:33 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
>  static inline void rk_timer_disable(struct clock_event_device *ce)
>  {
>         writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
> -       dsb();
> +       dsb(sy);
>  }
>  
>  static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
>  {
>         writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
>                        rk_base(ce) + TIMER_CONTROL_REG);
> -       dsb();
> +       dsb(sy);
>  }
>  
> 

This will fail the compile test, because dsb() is not available on non-ARM
architectures. Would it be enough to just use the normal writel() accessor
here?

	Arnd

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

* Re: [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
  2015-11-02 15:33     ` Arnd Bergmann
@ 2015-11-02 16:32       ` Daniel Lezcano
  -1 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 16:32 UTC (permalink / raw)
  To: Arnd Bergmann, linux-arm-kernel
  Cc: tglx, Heiko Stuebner, linux-kernel, open list:ARM/Rockchip SoC...,
	john.stultz, Caesar Wang

On 11/02/2015 04:33 PM, Arnd Bergmann wrote:
> On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
>>   static inline void rk_timer_disable(struct clock_event_device *ce)
>>   {
>>          writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
>> -       dsb();
>> +       dsb(sy);
>>   }
>>
>>   static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
>>   {
>>          writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
>>                         rk_base(ce) + TIMER_CONTROL_REG);
>> -       dsb();
>> +       dsb(sy);
>>   }
>>
>>
>
> This will fail the compile test, because dsb() is not available on non-ARM
> architectures. Would it be enough to just use the normal writel() accessor
> here?

That's a good question and I believe we can remove it but I have to 
setup a rockchip board before doing the changes in order to test.

I the meantime added the COMPILE_TEST option but restricted it to ARM 
and ARM64.



-- 
  <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


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

* [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 16:32       ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-02 16:32 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/02/2015 04:33 PM, Arnd Bergmann wrote:
> On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
>>   static inline void rk_timer_disable(struct clock_event_device *ce)
>>   {
>>          writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
>> -       dsb();
>> +       dsb(sy);
>>   }
>>
>>   static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
>>   {
>>          writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
>>                         rk_base(ce) + TIMER_CONTROL_REG);
>> -       dsb();
>> +       dsb(sy);
>>   }
>>
>>
>
> This will fail the compile test, because dsb() is not available on non-ARM
> architectures. Would it be enough to just use the normal writel() accessor
> here?

That's a good question and I believe we can remove it but I have to 
setup a rockchip board before doing the changes in order to test.

I the meantime added the COMPILE_TEST option but restricted it to ARM 
and ARM64.



-- 
  <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

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

* Re: [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 21:44         ` Arnd Bergmann
  0 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-02 21:44 UTC (permalink / raw)
  To: Daniel Lezcano
  Cc: linux-arm-kernel, tglx, Heiko Stuebner, linux-kernel,
	open list:ARM/Rockchip SoC...,
	john.stultz, Caesar Wang

On Monday 02 November 2015 17:32:22 Daniel Lezcano wrote:
> On 11/02/2015 04:33 PM, Arnd Bergmann wrote:
> > On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
> >>   static inline void rk_timer_disable(struct clock_event_device *ce)
> >>   {
> >>          writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
> >> -       dsb();
> >> +       dsb(sy);
> >>   }
> >>
> >>   static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
> >>   {
> >>          writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
> >>                         rk_base(ce) + TIMER_CONTROL_REG);
> >> -       dsb();
> >> +       dsb(sy);
> >>   }
> >>
> >>
> >
> > This will fail the compile test, because dsb() is not available on non-ARM
> > architectures. Would it be enough to just use the normal writel() accessor
> > here?
> 
> That's a good question and I believe we can remove it but I have to 
> setup a rockchip board before doing the changes in order to test.
> 
> I the meantime added the COMPILE_TEST option but restricted it to ARM 
> and ARM64.
> 

Ok. I saw that addition after commenting here, it looks correct this
way, I was just slightly confused by seeing patch 2 first and thought
it was for the same driver.

In general, it would of course be best to allow all drivers to be built
on x86, but your series is already a huge improvement as it is.

	Arnd

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

* Re: [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 21:44         ` Arnd Bergmann
  0 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-02 21:44 UTC (permalink / raw)
  To: Daniel Lezcano
  Cc: Heiko Stuebner, linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	open list:ARM/Rockchip SoC...,
	john.stultz-QSEj5FYQhm4dnm+yROfE0A, tglx-hfZtesqFncYOwBW4kG4KsQ,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Caesar Wang

On Monday 02 November 2015 17:32:22 Daniel Lezcano wrote:
> On 11/02/2015 04:33 PM, Arnd Bergmann wrote:
> > On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
> >>   static inline void rk_timer_disable(struct clock_event_device *ce)
> >>   {
> >>          writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
> >> -       dsb();
> >> +       dsb(sy);
> >>   }
> >>
> >>   static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
> >>   {
> >>          writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
> >>                         rk_base(ce) + TIMER_CONTROL_REG);
> >> -       dsb();
> >> +       dsb(sy);
> >>   }
> >>
> >>
> >
> > This will fail the compile test, because dsb() is not available on non-ARM
> > architectures. Would it be enough to just use the normal writel() accessor
> > here?
> 
> That's a good question and I believe we can remove it but I have to 
> setup a rockchip board before doing the changes in order to test.
> 
> I the meantime added the COMPILE_TEST option but restricted it to ARM 
> and ARM64.
> 

Ok. I saw that addition after commenting here, it looks correct this
way, I was just slightly confused by seeing patch 2 first and thought
it was for the same driver.

In general, it would of course be best to allow all drivers to be built
on x86, but your series is already a huge improvement as it is.

	Arnd

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

* [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible
@ 2015-11-02 21:44         ` Arnd Bergmann
  0 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-02 21:44 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 02 November 2015 17:32:22 Daniel Lezcano wrote:
> On 11/02/2015 04:33 PM, Arnd Bergmann wrote:
> > On Monday 02 November 2015 13:56:31 Daniel Lezcano wrote:
> >>   static inline void rk_timer_disable(struct clock_event_device *ce)
> >>   {
> >>          writel_relaxed(TIMER_DISABLE, rk_base(ce) + TIMER_CONTROL_REG);
> >> -       dsb();
> >> +       dsb(sy);
> >>   }
> >>
> >>   static inline void rk_timer_enable(struct clock_event_device *ce, u32 flags)
> >>   {
> >>          writel_relaxed(TIMER_ENABLE | TIMER_INT_UNMASK | flags,
> >>                         rk_base(ce) + TIMER_CONTROL_REG);
> >> -       dsb();
> >> +       dsb(sy);
> >>   }
> >>
> >>
> >
> > This will fail the compile test, because dsb() is not available on non-ARM
> > architectures. Would it be enough to just use the normal writel() accessor
> > here?
> 
> That's a good question and I believe we can remove it but I have to 
> setup a rockchip board before doing the changes in order to test.
> 
> I the meantime added the COMPILE_TEST option but restricted it to ARM 
> and ARM64.
> 

Ok. I saw that addition after commenting here, it looks correct this
way, I was just slightly confused by seeing patch 2 first and thought
it was for the same driver.

In general, it would of course be best to allow all drivers to be built
on x86, but your series is already a huge improvement as it is.

	Arnd

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-02 12:56   ` Daniel Lezcano
  (?)
@ 2015-11-03  0:30     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03  0:30 UTC (permalink / raw)
  To: Daniel Lezcano, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 02.11.2015 21:56, Daniel Lezcano wrote:
> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.

Selecting user-visible symbols is rather discouraged so why not
something like this:

-       def_bool y if ARCH_EXYNOS
-       depends on !ARM64
+       bool "Exynos multi core timer driver"
+       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)

Best regards,
Krzysztof

> 
> Add the COMPILE_TEST option for the compilation test coverage. Due to the
> non portable 'delay' code, this driver is only compilable on ARM.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  arch/arm/mach-exynos/Kconfig | 1 +
>  drivers/clocksource/Kconfig  | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index 3a10f1a..ff10539 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>  	select SRAM
>  	select THERMAL
>  	select MFD_SYSCON
> +	select CLKSRC_EXYNOS_MCT
>  	help
>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>  
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 916c36d..d829cbe 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>  	  This option enables support for the Meta per-thread timers.
>  
>  config CLKSRC_EXYNOS_MCT
> -	def_bool y if ARCH_EXYNOS
> -	depends on !ARM64
> +	bool "Exynos multi core timer driver" if COMPILE_TEST
> +	depends on ARM
>  	help
>  	  Support for Multi Core Timer controller on Exynos SoCs.
>  
> 


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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  0:30     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03  0:30 UTC (permalink / raw)
  To: Daniel Lezcano, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 02.11.2015 21:56, Daniel Lezcano wrote:
> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.

Selecting user-visible symbols is rather discouraged so why not
something like this:

-       def_bool y if ARCH_EXYNOS
-       depends on !ARM64
+       bool "Exynos multi core timer driver"
+       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)

Best regards,
Krzysztof

> 
> Add the COMPILE_TEST option for the compilation test coverage. Due to the
> non portable 'delay' code, this driver is only compilable on ARM.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  arch/arm/mach-exynos/Kconfig | 1 +
>  drivers/clocksource/Kconfig  | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index 3a10f1a..ff10539 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>  	select SRAM
>  	select THERMAL
>  	select MFD_SYSCON
> +	select CLKSRC_EXYNOS_MCT
>  	help
>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>  
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 916c36d..d829cbe 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>  	  This option enables support for the Meta per-thread timers.
>  
>  config CLKSRC_EXYNOS_MCT
> -	def_bool y if ARCH_EXYNOS
> -	depends on !ARM64
> +	bool "Exynos multi core timer driver" if COMPILE_TEST
> +	depends on ARM
>  	help
>  	  Support for Multi Core Timer controller on Exynos SoCs.
>  
> 

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  0:30     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03  0:30 UTC (permalink / raw)
  To: linux-arm-kernel

On 02.11.2015 21:56, Daniel Lezcano wrote:
> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.

Selecting user-visible symbols is rather discouraged so why not
something like this:

-       def_bool y if ARCH_EXYNOS
-       depends on !ARM64
+       bool "Exynos multi core timer driver"
+       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)

Best regards,
Krzysztof

> 
> Add the COMPILE_TEST option for the compilation test coverage. Due to the
> non portable 'delay' code, this driver is only compilable on ARM.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  arch/arm/mach-exynos/Kconfig | 1 +
>  drivers/clocksource/Kconfig  | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index 3a10f1a..ff10539 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>  	select SRAM
>  	select THERMAL
>  	select MFD_SYSCON
> +	select CLKSRC_EXYNOS_MCT
>  	help
>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>  
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 916c36d..d829cbe 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>  	  This option enables support for the Meta per-thread timers.
>  
>  config CLKSRC_EXYNOS_MCT
> -	def_bool y if ARCH_EXYNOS
> -	depends on !ARM64
> +	bool "Exynos multi core timer driver" if COMPILE_TEST
> +	depends on ARM
>  	help
>  	  Support for Multi Core Timer controller on Exynos SoCs.
>  
> 

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-02 12:56   ` Daniel Lezcano
  (?)
@ 2015-11-03  0:54     ` Chanwoo Choi
  -1 siblings, 0 replies; 68+ messages in thread
From: Chanwoo Choi @ 2015-11-03  0:54 UTC (permalink / raw)
  To: Daniel Lezcano, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

Hi,

On 2015년 11월 02일 21:56, Daniel Lezcano wrote:
> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.
> 
> Add the COMPILE_TEST option for the compilation test coverage. Due to the
> non portable 'delay' code, this driver is only compilable on ARM.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  arch/arm/mach-exynos/Kconfig | 1 +
>  drivers/clocksource/Kconfig  | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index 3a10f1a..ff10539 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>  	select SRAM
>  	select THERMAL
>  	select MFD_SYSCON
> +	select CLKSRC_EXYNOS_MCT
>  	help
>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>  
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 916c36d..d829cbe 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>  	  This option enables support for the Meta per-thread timers.
>  
>  config CLKSRC_EXYNOS_MCT
> -	def_bool y if ARCH_EXYNOS
> -	depends on !ARM64
> +	bool "Exynos multi core timer driver" if COMPILE_TEST
> +	depends on ARM
>  	help
>  	  Support for Multi Core Timer controller on Exynos SoCs.
>  
> 

Looks good to me. As you commented, delay_timer is only used on ARM 32bit.
I'm glad to use the 'depends on ARM' instead of reverse dependency.

Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>

Thanks,
Chanwoo Choi

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  0:54     ` Chanwoo Choi
  0 siblings, 0 replies; 68+ messages in thread
From: Chanwoo Choi @ 2015-11-03  0:54 UTC (permalink / raw)
  To: Daniel Lezcano, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

Hi,

On 2015년 11월 02일 21:56, Daniel Lezcano wrote:
> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.
> 
> Add the COMPILE_TEST option for the compilation test coverage. Due to the
> non portable 'delay' code, this driver is only compilable on ARM.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  arch/arm/mach-exynos/Kconfig | 1 +
>  drivers/clocksource/Kconfig  | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index 3a10f1a..ff10539 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>  	select SRAM
>  	select THERMAL
>  	select MFD_SYSCON
> +	select CLKSRC_EXYNOS_MCT
>  	help
>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>  
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 916c36d..d829cbe 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>  	  This option enables support for the Meta per-thread timers.
>  
>  config CLKSRC_EXYNOS_MCT
> -	def_bool y if ARCH_EXYNOS
> -	depends on !ARM64
> +	bool "Exynos multi core timer driver" if COMPILE_TEST
> +	depends on ARM
>  	help
>  	  Support for Multi Core Timer controller on Exynos SoCs.
>  
> 

Looks good to me. As you commented, delay_timer is only used on ARM 32bit.
I'm glad to use the 'depends on ARM' instead of reverse dependency.

Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>

Thanks,
Chanwoo Choi

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  0:54     ` Chanwoo Choi
  0 siblings, 0 replies; 68+ messages in thread
From: Chanwoo Choi @ 2015-11-03  0:54 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On 2015? 11? 02? 21:56, Daniel Lezcano wrote:
> Let the platform's Kconfig to select the clock instead of having a reverse
> dependency from the driver to the platform options.
> 
> Add the COMPILE_TEST option for the compilation test coverage. Due to the
> non portable 'delay' code, this driver is only compilable on ARM.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  arch/arm/mach-exynos/Kconfig | 1 +
>  drivers/clocksource/Kconfig  | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index 3a10f1a..ff10539 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>  	select SRAM
>  	select THERMAL
>  	select MFD_SYSCON
> +	select CLKSRC_EXYNOS_MCT
>  	help
>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>  
> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> index 916c36d..d829cbe 100644
> --- a/drivers/clocksource/Kconfig
> +++ b/drivers/clocksource/Kconfig
> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>  	  This option enables support for the Meta per-thread timers.
>  
>  config CLKSRC_EXYNOS_MCT
> -	def_bool y if ARCH_EXYNOS
> -	depends on !ARM64
> +	bool "Exynos multi core timer driver" if COMPILE_TEST
> +	depends on ARM
>  	help
>  	  Support for Multi Core Timer controller on Exynos SoCs.
>  
> 

Looks good to me. As you commented, delay_timer is only used on ARM 32bit.
I'm glad to use the 'depends on ARM' instead of reverse dependency.

Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>

Thanks,
Chanwoo Choi

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03  0:30     ` Krzysztof Kozlowski
  (?)
@ 2015-11-03  0:59       ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03  0:59 UTC (permalink / raw)
  To: Daniel Lezcano, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
> On 02.11.2015 21:56, Daniel Lezcano wrote:
>> Let the platform's Kconfig to select the clock instead of having a reverse
>> dependency from the driver to the platform options.
> 
> Selecting user-visible symbols is rather discouraged so why not
> something like this:
> 
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver"
> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)

Nope, that was wrong as we loose auto-select on Exynos. Instead:
-       def_bool y if ARCH_EXYNOS
-       depends on !ARM64
+       bool "Exynos multi core timer driver" if ARM
+       depends on ARCH_EXYNOS || COMPILE_TEST
+       default y if ARCH_EXYNOS

This way we avoid select (which is a reverse dependency for the driver),
have it auto-selectable and compile tested on arm.

Best regards,
Krzysztof

> 
>>
>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>> non portable 'delay' code, this driver is only compilable on ARM.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>> ---
>>  arch/arm/mach-exynos/Kconfig | 1 +
>>  drivers/clocksource/Kconfig  | 4 ++--
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>> index 3a10f1a..ff10539 100644
>> --- a/arch/arm/mach-exynos/Kconfig
>> +++ b/arch/arm/mach-exynos/Kconfig
>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>  	select SRAM
>>  	select THERMAL
>>  	select MFD_SYSCON
>> +	select CLKSRC_EXYNOS_MCT
>>  	help
>>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>  
>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>> index 916c36d..d829cbe 100644
>> --- a/drivers/clocksource/Kconfig
>> +++ b/drivers/clocksource/Kconfig
>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>  	  This option enables support for the Meta per-thread timers.
>>  
>>  config CLKSRC_EXYNOS_MCT
>> -	def_bool y if ARCH_EXYNOS
>> -	depends on !ARM64
>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>> +	depends on ARM
>>  	help
>>  	  Support for Multi Core Timer controller on Exynos SoCs.
>>  
>>
> 
> 


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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  0:59       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03  0:59 UTC (permalink / raw)
  To: Daniel Lezcano, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
> On 02.11.2015 21:56, Daniel Lezcano wrote:
>> Let the platform's Kconfig to select the clock instead of having a reverse
>> dependency from the driver to the platform options.
> 
> Selecting user-visible symbols is rather discouraged so why not
> something like this:
> 
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver"
> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)

Nope, that was wrong as we loose auto-select on Exynos. Instead:
-       def_bool y if ARCH_EXYNOS
-       depends on !ARM64
+       bool "Exynos multi core timer driver" if ARM
+       depends on ARCH_EXYNOS || COMPILE_TEST
+       default y if ARCH_EXYNOS

This way we avoid select (which is a reverse dependency for the driver),
have it auto-selectable and compile tested on arm.

Best regards,
Krzysztof

> 
>>
>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>> non portable 'delay' code, this driver is only compilable on ARM.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>> ---
>>  arch/arm/mach-exynos/Kconfig | 1 +
>>  drivers/clocksource/Kconfig  | 4 ++--
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>> index 3a10f1a..ff10539 100644
>> --- a/arch/arm/mach-exynos/Kconfig
>> +++ b/arch/arm/mach-exynos/Kconfig
>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>  	select SRAM
>>  	select THERMAL
>>  	select MFD_SYSCON
>> +	select CLKSRC_EXYNOS_MCT
>>  	help
>>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>  
>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>> index 916c36d..d829cbe 100644
>> --- a/drivers/clocksource/Kconfig
>> +++ b/drivers/clocksource/Kconfig
>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>  	  This option enables support for the Meta per-thread timers.
>>  
>>  config CLKSRC_EXYNOS_MCT
>> -	def_bool y if ARCH_EXYNOS
>> -	depends on !ARM64
>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>> +	depends on ARM
>>  	help
>>  	  Support for Multi Core Timer controller on Exynos SoCs.
>>  
>>
> 
> 

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  0:59       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03  0:59 UTC (permalink / raw)
  To: linux-arm-kernel

On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
> On 02.11.2015 21:56, Daniel Lezcano wrote:
>> Let the platform's Kconfig to select the clock instead of having a reverse
>> dependency from the driver to the platform options.
> 
> Selecting user-visible symbols is rather discouraged so why not
> something like this:
> 
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver"
> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)

Nope, that was wrong as we loose auto-select on Exynos. Instead:
-       def_bool y if ARCH_EXYNOS
-       depends on !ARM64
+       bool "Exynos multi core timer driver" if ARM
+       depends on ARCH_EXYNOS || COMPILE_TEST
+       default y if ARCH_EXYNOS

This way we avoid select (which is a reverse dependency for the driver),
have it auto-selectable and compile tested on arm.

Best regards,
Krzysztof

> 
>>
>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>> non portable 'delay' code, this driver is only compilable on ARM.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>> ---
>>  arch/arm/mach-exynos/Kconfig | 1 +
>>  drivers/clocksource/Kconfig  | 4 ++--
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>> index 3a10f1a..ff10539 100644
>> --- a/arch/arm/mach-exynos/Kconfig
>> +++ b/arch/arm/mach-exynos/Kconfig
>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>  	select SRAM
>>  	select THERMAL
>>  	select MFD_SYSCON
>> +	select CLKSRC_EXYNOS_MCT
>>  	help
>>  	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>  
>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>> index 916c36d..d829cbe 100644
>> --- a/drivers/clocksource/Kconfig
>> +++ b/drivers/clocksource/Kconfig
>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>  	  This option enables support for the Meta per-thread timers.
>>  
>>  config CLKSRC_EXYNOS_MCT
>> -	def_bool y if ARCH_EXYNOS
>> -	depends on !ARM64
>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>> +	depends on ARM
>>  	help
>>  	  Support for Multi Core Timer controller on Exynos SoCs.
>>  
>>
> 
> 

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03  0:59       ` Krzysztof Kozlowski
  (?)
@ 2015-11-03  8:40         ` Daniel Lezcano
  -1 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03  8:40 UTC (permalink / raw)
  To: Krzysztof Kozlowski, tglx
  Cc: john.stultz, linux-kernel, arnd, Russell King, Kukjin Kim,
	moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>> dependency from the driver to the platform options.
>>
>> Selecting user-visible symbols is rather discouraged so why not
>> something like this:
>>
>> -       def_bool y if ARCH_EXYNOS
>> -       depends on !ARM64
>> +       bool "Exynos multi core timer driver"
>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>
> Nope, that was wrong as we loose auto-select on Exynos. Instead:
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver" if ARM
> +       depends on ARCH_EXYNOS || COMPILE_TEST
> +       default y if ARCH_EXYNOS
>
> This way we avoid select (which is a reverse dependency for the driver),
> have it auto-selectable and compile tested on arm.

I think you misunderstood the patch I sent.

It does two things:

1. Follow the thumb of rule of the current Kconfig format

    - The timer driver is selected by the platform (exynos in this case)
    - User can't select the driver in the menuconfig
    - There is no dependency on the platform except for compilation test

2. Add the COMPILE_TEST

    - User can select the driver for compilation testing. This is for 
allyesconfig when doing compilation test coverage (exynos timer could be 
compiled on other platform). As the delay code is not portable, we have 
to restrict the compilation on the ARM platform, this is why there is 
the dependency on ARM.

I am currently looking at splitting the delay code in order to prevent 
this restriction on this driver and some others drivers.


>>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>>> non portable 'delay' code, this driver is only compilable on ARM.
>>>
>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>>> ---
>>>   arch/arm/mach-exynos/Kconfig | 1 +
>>>   drivers/clocksource/Kconfig  | 4 ++--
>>>   2 files changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>>> index 3a10f1a..ff10539 100644
>>> --- a/arch/arm/mach-exynos/Kconfig
>>> +++ b/arch/arm/mach-exynos/Kconfig
>>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>>   	select SRAM
>>>   	select THERMAL
>>>   	select MFD_SYSCON
>>> +	select CLKSRC_EXYNOS_MCT
>>>   	help
>>>   	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>>
>>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>>> index 916c36d..d829cbe 100644
>>> --- a/drivers/clocksource/Kconfig
>>> +++ b/drivers/clocksource/Kconfig
>>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>>   	  This option enables support for the Meta per-thread timers.
>>>
>>>   config CLKSRC_EXYNOS_MCT
>>> -	def_bool y if ARCH_EXYNOS
>>> -	depends on !ARM64
>>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>>> +	depends on ARM
>>>   	help
>>>   	  Support for Multi Core Timer controller on Exynos SoCs.
>>>
>>>
>>
>>
>


-- 
  <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


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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  8:40         ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03  8:40 UTC (permalink / raw)
  To: Krzysztof Kozlowski, tglx
  Cc: moderated list:ARM/SAMSUNG EXYNO...,
	Russell King, arnd, linux-kernel, Kukjin Kim, john.stultz,
	moderated list:ARM SUB-ARCHITECT...

On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>> dependency from the driver to the platform options.
>>
>> Selecting user-visible symbols is rather discouraged so why not
>> something like this:
>>
>> -       def_bool y if ARCH_EXYNOS
>> -       depends on !ARM64
>> +       bool "Exynos multi core timer driver"
>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>
> Nope, that was wrong as we loose auto-select on Exynos. Instead:
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver" if ARM
> +       depends on ARCH_EXYNOS || COMPILE_TEST
> +       default y if ARCH_EXYNOS
>
> This way we avoid select (which is a reverse dependency for the driver),
> have it auto-selectable and compile tested on arm.

I think you misunderstood the patch I sent.

It does two things:

1. Follow the thumb of rule of the current Kconfig format

    - The timer driver is selected by the platform (exynos in this case)
    - User can't select the driver in the menuconfig
    - There is no dependency on the platform except for compilation test

2. Add the COMPILE_TEST

    - User can select the driver for compilation testing. This is for 
allyesconfig when doing compilation test coverage (exynos timer could be 
compiled on other platform). As the delay code is not portable, we have 
to restrict the compilation on the ARM platform, this is why there is 
the dependency on ARM.

I am currently looking at splitting the delay code in order to prevent 
this restriction on this driver and some others drivers.


>>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>>> non portable 'delay' code, this driver is only compilable on ARM.
>>>
>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>>> ---
>>>   arch/arm/mach-exynos/Kconfig | 1 +
>>>   drivers/clocksource/Kconfig  | 4 ++--
>>>   2 files changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>>> index 3a10f1a..ff10539 100644
>>> --- a/arch/arm/mach-exynos/Kconfig
>>> +++ b/arch/arm/mach-exynos/Kconfig
>>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>>   	select SRAM
>>>   	select THERMAL
>>>   	select MFD_SYSCON
>>> +	select CLKSRC_EXYNOS_MCT
>>>   	help
>>>   	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>>
>>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>>> index 916c36d..d829cbe 100644
>>> --- a/drivers/clocksource/Kconfig
>>> +++ b/drivers/clocksource/Kconfig
>>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>>   	  This option enables support for the Meta per-thread timers.
>>>
>>>   config CLKSRC_EXYNOS_MCT
>>> -	def_bool y if ARCH_EXYNOS
>>> -	depends on !ARM64
>>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>>> +	depends on ARM
>>>   	help
>>>   	  Support for Multi Core Timer controller on Exynos SoCs.
>>>
>>>
>>
>>
>


-- 
  <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


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03  8:40         ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03  8:40 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>> dependency from the driver to the platform options.
>>
>> Selecting user-visible symbols is rather discouraged so why not
>> something like this:
>>
>> -       def_bool y if ARCH_EXYNOS
>> -       depends on !ARM64
>> +       bool "Exynos multi core timer driver"
>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>
> Nope, that was wrong as we loose auto-select on Exynos. Instead:
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver" if ARM
> +       depends on ARCH_EXYNOS || COMPILE_TEST
> +       default y if ARCH_EXYNOS
>
> This way we avoid select (which is a reverse dependency for the driver),
> have it auto-selectable and compile tested on arm.

I think you misunderstood the patch I sent.

It does two things:

1. Follow the thumb of rule of the current Kconfig format

    - The timer driver is selected by the platform (exynos in this case)
    - User can't select the driver in the menuconfig
    - There is no dependency on the platform except for compilation test

2. Add the COMPILE_TEST

    - User can select the driver for compilation testing. This is for 
allyesconfig when doing compilation test coverage (exynos timer could be 
compiled on other platform). As the delay code is not portable, we have 
to restrict the compilation on the ARM platform, this is why there is 
the dependency on ARM.

I am currently looking at splitting the delay code in order to prevent 
this restriction on this driver and some others drivers.


>>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>>> non portable 'delay' code, this driver is only compilable on ARM.
>>>
>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>>> ---
>>>   arch/arm/mach-exynos/Kconfig | 1 +
>>>   drivers/clocksource/Kconfig  | 4 ++--
>>>   2 files changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>>> index 3a10f1a..ff10539 100644
>>> --- a/arch/arm/mach-exynos/Kconfig
>>> +++ b/arch/arm/mach-exynos/Kconfig
>>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>>   	select SRAM
>>>   	select THERMAL
>>>   	select MFD_SYSCON
>>> +	select CLKSRC_EXYNOS_MCT
>>>   	help
>>>   	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>>
>>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>>> index 916c36d..d829cbe 100644
>>> --- a/drivers/clocksource/Kconfig
>>> +++ b/drivers/clocksource/Kconfig
>>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>>   	  This option enables support for the Meta per-thread timers.
>>>
>>>   config CLKSRC_EXYNOS_MCT
>>> -	def_bool y if ARCH_EXYNOS
>>> -	depends on !ARM64
>>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>>> +	depends on ARM
>>>   	help
>>>   	  Support for Multi Core Timer controller on Exynos SoCs.
>>>
>>>
>>
>>
>


-- 
  <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

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03  8:40         ` Daniel Lezcano
  (?)
@ 2015-11-03 10:02           ` Arnd Bergmann
  -1 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-03 10:02 UTC (permalink / raw)
  To: Daniel Lezcano
  Cc: Krzysztof Kozlowski, tglx, john.stultz, linux-kernel,
	Russell King, Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> > On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
> >> On 02.11.2015 21:56, Daniel Lezcano wrote:
> >>> Let the platform's Kconfig to select the clock instead of having a reverse
> >>> dependency from the driver to the platform options.
> >>
> >> Selecting user-visible symbols is rather discouraged so why not
> >> something like this:
> >>
> >> -       def_bool y if ARCH_EXYNOS
> >> -       depends on !ARM64
> >> +       bool "Exynos multi core timer driver"
> >> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
> >
> > Nope, that was wrong as we loose auto-select on Exynos. Instead:
> > -       def_bool y if ARCH_EXYNOS
> > -       depends on !ARM64
> > +       bool "Exynos multi core timer driver" if ARM
> > +       depends on ARCH_EXYNOS || COMPILE_TEST
> > +       default y if ARCH_EXYNOS
> >
> > This way we avoid select (which is a reverse dependency for the driver),
> > have it auto-selectable and compile tested on arm.
> 
> I think you misunderstood the patch I sent.
> 
> It does two things:
> 
> 1. Follow the thumb of rule of the current Kconfig format
> 
>     - The timer driver is selected by the platform (exynos in this case)
>     - User can't select the driver in the menuconfig
>     - There is no dependency on the platform except for compilation test
> 
> 2. Add the COMPILE_TEST
> 
>     - User can select the driver for compilation testing. This is for 
> allyesconfig when doing compilation test coverage (exynos timer could be 
> compiled on other platform). As the delay code is not portable, we have 
> to restrict the compilation on the ARM platform, this is why there is 
> the dependency on ARM.
> 
> I am currently looking at splitting the delay code in order to prevent 
> this restriction on this driver and some others drivers.

I suspect this will come up again in the future. The problem is
really that drivers/clocksource has different rules from almost
everything else, by requiring the platform to 'select' the driver.

The second version that Krzysztof posted is how we handle this in
other driver subsystems, and I would generally prefer it to do this
consistently for everything, but John Stultz has in the past argued
strongly for using 'select' in all clocksource drivers. The reason
is that for each platform we know in advance which driver we want,
and there is never a need for the user to have to select the right
one.

	Arnd

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 10:02           ` Arnd Bergmann
  0 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-03 10:02 UTC (permalink / raw)
  To: Daniel Lezcano
  Cc: Krzysztof Kozlowski, moderated list:ARM/SAMSUNG EXYNO...,
	Russell King, linux-kernel, Kukjin Kim, john.stultz, tglx,
	moderated list:ARM SUB-ARCHITECT...

On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> > On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
> >> On 02.11.2015 21:56, Daniel Lezcano wrote:
> >>> Let the platform's Kconfig to select the clock instead of having a reverse
> >>> dependency from the driver to the platform options.
> >>
> >> Selecting user-visible symbols is rather discouraged so why not
> >> something like this:
> >>
> >> -       def_bool y if ARCH_EXYNOS
> >> -       depends on !ARM64
> >> +       bool "Exynos multi core timer driver"
> >> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
> >
> > Nope, that was wrong as we loose auto-select on Exynos. Instead:
> > -       def_bool y if ARCH_EXYNOS
> > -       depends on !ARM64
> > +       bool "Exynos multi core timer driver" if ARM
> > +       depends on ARCH_EXYNOS || COMPILE_TEST
> > +       default y if ARCH_EXYNOS
> >
> > This way we avoid select (which is a reverse dependency for the driver),
> > have it auto-selectable and compile tested on arm.
> 
> I think you misunderstood the patch I sent.
> 
> It does two things:
> 
> 1. Follow the thumb of rule of the current Kconfig format
> 
>     - The timer driver is selected by the platform (exynos in this case)
>     - User can't select the driver in the menuconfig
>     - There is no dependency on the platform except for compilation test
> 
> 2. Add the COMPILE_TEST
> 
>     - User can select the driver for compilation testing. This is for 
> allyesconfig when doing compilation test coverage (exynos timer could be 
> compiled on other platform). As the delay code is not portable, we have 
> to restrict the compilation on the ARM platform, this is why there is 
> the dependency on ARM.
> 
> I am currently looking at splitting the delay code in order to prevent 
> this restriction on this driver and some others drivers.

I suspect this will come up again in the future. The problem is
really that drivers/clocksource has different rules from almost
everything else, by requiring the platform to 'select' the driver.

The second version that Krzysztof posted is how we handle this in
other driver subsystems, and I would generally prefer it to do this
consistently for everything, but John Stultz has in the past argued
strongly for using 'select' in all clocksource drivers. The reason
is that for each platform we know in advance which driver we want,
and there is never a need for the user to have to select the right
one.

	Arnd

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 10:02           ` Arnd Bergmann
  0 siblings, 0 replies; 68+ messages in thread
From: Arnd Bergmann @ 2015-11-03 10:02 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> > On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
> >> On 02.11.2015 21:56, Daniel Lezcano wrote:
> >>> Let the platform's Kconfig to select the clock instead of having a reverse
> >>> dependency from the driver to the platform options.
> >>
> >> Selecting user-visible symbols is rather discouraged so why not
> >> something like this:
> >>
> >> -       def_bool y if ARCH_EXYNOS
> >> -       depends on !ARM64
> >> +       bool "Exynos multi core timer driver"
> >> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
> >
> > Nope, that was wrong as we loose auto-select on Exynos. Instead:
> > -       def_bool y if ARCH_EXYNOS
> > -       depends on !ARM64
> > +       bool "Exynos multi core timer driver" if ARM
> > +       depends on ARCH_EXYNOS || COMPILE_TEST
> > +       default y if ARCH_EXYNOS
> >
> > This way we avoid select (which is a reverse dependency for the driver),
> > have it auto-selectable and compile tested on arm.
> 
> I think you misunderstood the patch I sent.
> 
> It does two things:
> 
> 1. Follow the thumb of rule of the current Kconfig format
> 
>     - The timer driver is selected by the platform (exynos in this case)
>     - User can't select the driver in the menuconfig
>     - There is no dependency on the platform except for compilation test
> 
> 2. Add the COMPILE_TEST
> 
>     - User can select the driver for compilation testing. This is for 
> allyesconfig when doing compilation test coverage (exynos timer could be 
> compiled on other platform). As the delay code is not portable, we have 
> to restrict the compilation on the ARM platform, this is why there is 
> the dependency on ARM.
> 
> I am currently looking at splitting the delay code in order to prevent 
> this restriction on this driver and some others drivers.

I suspect this will come up again in the future. The problem is
really that drivers/clocksource has different rules from almost
everything else, by requiring the platform to 'select' the driver.

The second version that Krzysztof posted is how we handle this in
other driver subsystems, and I would generally prefer it to do this
consistently for everything, but John Stultz has in the past argued
strongly for using 'select' in all clocksource drivers. The reason
is that for each platform we know in advance which driver we want,
and there is never a need for the user to have to select the right
one.

	Arnd

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03 10:02           ` Arnd Bergmann
  (?)
@ 2015-11-03 11:08             ` Daniel Lezcano
  -1 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03 11:08 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Krzysztof Kozlowski, tglx, john.stultz, linux-kernel,
	Russell King, Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 11/03/2015 11:02 AM, Arnd Bergmann wrote:
> On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
>> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
>>> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>>>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>>>> dependency from the driver to the platform options.
>>>>
>>>> Selecting user-visible symbols is rather discouraged so why not
>>>> something like this:
>>>>
>>>> -       def_bool y if ARCH_EXYNOS
>>>> -       depends on !ARM64
>>>> +       bool "Exynos multi core timer driver"
>>>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>>>
>>> Nope, that was wrong as we loose auto-select on Exynos. Instead:
>>> -       def_bool y if ARCH_EXYNOS
>>> -       depends on !ARM64
>>> +       bool "Exynos multi core timer driver" if ARM
>>> +       depends on ARCH_EXYNOS || COMPILE_TEST
>>> +       default y if ARCH_EXYNOS
>>>
>>> This way we avoid select (which is a reverse dependency for the driver),
>>> have it auto-selectable and compile tested on arm.
>>
>> I think you misunderstood the patch I sent.
>>
>> It does two things:
>>
>> 1. Follow the thumb of rule of the current Kconfig format
>>
>>      - The timer driver is selected by the platform (exynos in this case)
>>      - User can't select the driver in the menuconfig
>>      - There is no dependency on the platform except for compilation test
>>
>> 2. Add the COMPILE_TEST
>>
>>      - User can select the driver for compilation testing. This is for
>> allyesconfig when doing compilation test coverage (exynos timer could be
>> compiled on other platform). As the delay code is not portable, we have
>> to restrict the compilation on the ARM platform, this is why there is
>> the dependency on ARM.
>>
>> I am currently looking at splitting the delay code in order to prevent
>> this restriction on this driver and some others drivers.
>
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
>
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

Yes, and I second John in this.



-- 
  <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


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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 11:08             ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03 11:08 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Krzysztof Kozlowski, tglx, john.stultz, linux-kernel,
	Russell King, Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 11/03/2015 11:02 AM, Arnd Bergmann wrote:
> On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
>> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
>>> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>>>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>>>> dependency from the driver to the platform options.
>>>>
>>>> Selecting user-visible symbols is rather discouraged so why not
>>>> something like this:
>>>>
>>>> -       def_bool y if ARCH_EXYNOS
>>>> -       depends on !ARM64
>>>> +       bool "Exynos multi core timer driver"
>>>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>>>
>>> Nope, that was wrong as we loose auto-select on Exynos. Instead:
>>> -       def_bool y if ARCH_EXYNOS
>>> -       depends on !ARM64
>>> +       bool "Exynos multi core timer driver" if ARM
>>> +       depends on ARCH_EXYNOS || COMPILE_TEST
>>> +       default y if ARCH_EXYNOS
>>>
>>> This way we avoid select (which is a reverse dependency for the driver),
>>> have it auto-selectable and compile tested on arm.
>>
>> I think you misunderstood the patch I sent.
>>
>> It does two things:
>>
>> 1. Follow the thumb of rule of the current Kconfig format
>>
>>      - The timer driver is selected by the platform (exynos in this case)
>>      - User can't select the driver in the menuconfig
>>      - There is no dependency on the platform except for compilation test
>>
>> 2. Add the COMPILE_TEST
>>
>>      - User can select the driver for compilation testing. This is for
>> allyesconfig when doing compilation test coverage (exynos timer could be
>> compiled on other platform). As the delay code is not portable, we have
>> to restrict the compilation on the ARM platform, this is why there is
>> the dependency on ARM.
>>
>> I am currently looking at splitting the delay code in order to prevent
>> this restriction on this driver and some others drivers.
>
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
>
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

Yes, and I second John in this.



-- 
  <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

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 11:08             ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03 11:08 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/03/2015 11:02 AM, Arnd Bergmann wrote:
> On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
>> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
>>> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>>>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>>>> dependency from the driver to the platform options.
>>>>
>>>> Selecting user-visible symbols is rather discouraged so why not
>>>> something like this:
>>>>
>>>> -       def_bool y if ARCH_EXYNOS
>>>> -       depends on !ARM64
>>>> +       bool "Exynos multi core timer driver"
>>>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>>>
>>> Nope, that was wrong as we loose auto-select on Exynos. Instead:
>>> -       def_bool y if ARCH_EXYNOS
>>> -       depends on !ARM64
>>> +       bool "Exynos multi core timer driver" if ARM
>>> +       depends on ARCH_EXYNOS || COMPILE_TEST
>>> +       default y if ARCH_EXYNOS
>>>
>>> This way we avoid select (which is a reverse dependency for the driver),
>>> have it auto-selectable and compile tested on arm.
>>
>> I think you misunderstood the patch I sent.
>>
>> It does two things:
>>
>> 1. Follow the thumb of rule of the current Kconfig format
>>
>>      - The timer driver is selected by the platform (exynos in this case)
>>      - User can't select the driver in the menuconfig
>>      - There is no dependency on the platform except for compilation test
>>
>> 2. Add the COMPILE_TEST
>>
>>      - User can select the driver for compilation testing. This is for
>> allyesconfig when doing compilation test coverage (exynos timer could be
>> compiled on other platform). As the delay code is not portable, we have
>> to restrict the compilation on the ARM platform, this is why there is
>> the dependency on ARM.
>>
>> I am currently looking at splitting the delay code in order to prevent
>> this restriction on this driver and some others drivers.
>
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
>
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

Yes, and I second John in this.



-- 
  <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

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03 10:02           ` Arnd Bergmann
  (?)
@ 2015-11-03 12:01             ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03 12:01 UTC (permalink / raw)
  To: Arnd Bergmann, Daniel Lezcano
  Cc: k.kozlowski.k, tglx, john.stultz, linux-kernel, Russell King,
	Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

W dniu 03.11.2015 o 19:02, Arnd Bergmann pisze:
> On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
>> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
>>> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>>>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>>>> dependency from the driver to the platform options.
>>>>
>>>> Selecting user-visible symbols is rather discouraged so why not
>>>> something like this:
>>>>
>>>> -       def_bool y if ARCH_EXYNOS
>>>> -       depends on !ARM64
>>>> +       bool "Exynos multi core timer driver"
>>>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>>>
>>> Nope, that was wrong as we loose auto-select on Exynos. Instead:
>>> -       def_bool y if ARCH_EXYNOS
>>> -       depends on !ARM64
>>> +       bool "Exynos multi core timer driver" if ARM
>>> +       depends on ARCH_EXYNOS || COMPILE_TEST
>>> +       default y if ARCH_EXYNOS
>>>
>>> This way we avoid select (which is a reverse dependency for the driver),
>>> have it auto-selectable and compile tested on arm.
>>
>> I think you misunderstood the patch I sent.
>>
>> It does two things:
>>
>> 1. Follow the thumb of rule of the current Kconfig format
>>
>>     - The timer driver is selected by the platform (exynos in this case)
>>     - User can't select the driver in the menuconfig
>>     - There is no dependency on the platform except for compilation test
>>
>> 2. Add the COMPILE_TEST
>>
>>     - User can select the driver for compilation testing. This is for 
>> allyesconfig when doing compilation test coverage (exynos timer could be 
>> compiled on other platform). As the delay code is not portable, we have 
>> to restrict the compilation on the ARM platform, this is why there is 
>> the dependency on ARM.
>>
>> I am currently looking at splitting the delay code in order to prevent 
>> this restriction on this driver and some others drivers.
> 
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
> 
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

Arnd, Daniel,

Sure, makes sense to me, thanks for explanation. Actually this makes me
thinking that drivers/soc/* should probably follow the same
convention... but not all of them do that.

Anyway the patch worked fine and with explanation I can only confirm:

Tested-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

Best regards,
Krzysztof




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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 12:01             ` Krzysztof Kozlowski
  0 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03 12:01 UTC (permalink / raw)
  To: Arnd Bergmann, Daniel Lezcano
  Cc: k.kozlowski.k, tglx, john.stultz, linux-kernel, Russell King,
	Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

W dniu 03.11.2015 o 19:02, Arnd Bergmann pisze:
> On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
>> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
>>> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>>>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>>>> dependency from the driver to the platform options.
>>>>
>>>> Selecting user-visible symbols is rather discouraged so why not
>>>> something like this:
>>>>
>>>> -       def_bool y if ARCH_EXYNOS
>>>> -       depends on !ARM64
>>>> +       bool "Exynos multi core timer driver"
>>>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>>>
>>> Nope, that was wrong as we loose auto-select on Exynos. Instead:
>>> -       def_bool y if ARCH_EXYNOS
>>> -       depends on !ARM64
>>> +       bool "Exynos multi core timer driver" if ARM
>>> +       depends on ARCH_EXYNOS || COMPILE_TEST
>>> +       default y if ARCH_EXYNOS
>>>
>>> This way we avoid select (which is a reverse dependency for the driver),
>>> have it auto-selectable and compile tested on arm.
>>
>> I think you misunderstood the patch I sent.
>>
>> It does two things:
>>
>> 1. Follow the thumb of rule of the current Kconfig format
>>
>>     - The timer driver is selected by the platform (exynos in this case)
>>     - User can't select the driver in the menuconfig
>>     - There is no dependency on the platform except for compilation test
>>
>> 2. Add the COMPILE_TEST
>>
>>     - User can select the driver for compilation testing. This is for 
>> allyesconfig when doing compilation test coverage (exynos timer could be 
>> compiled on other platform). As the delay code is not portable, we have 
>> to restrict the compilation on the ARM platform, this is why there is 
>> the dependency on ARM.
>>
>> I am currently looking at splitting the delay code in order to prevent 
>> this restriction on this driver and some others drivers.
> 
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
> 
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

Arnd, Daniel,

Sure, makes sense to me, thanks for explanation. Actually this makes me
thinking that drivers/soc/* should probably follow the same
convention... but not all of them do that.

Anyway the patch worked fine and with explanation I can only confirm:

Tested-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

Best regards,
Krzysztof

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 12:01             ` Krzysztof Kozlowski
  0 siblings, 0 replies; 68+ messages in thread
From: Krzysztof Kozlowski @ 2015-11-03 12:01 UTC (permalink / raw)
  To: linux-arm-kernel

W dniu 03.11.2015 o 19:02, Arnd Bergmann pisze:
> On Tuesday 03 November 2015 09:40:02 Daniel Lezcano wrote:
>> On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
>>> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>>>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>>>> dependency from the driver to the platform options.
>>>>
>>>> Selecting user-visible symbols is rather discouraged so why not
>>>> something like this:
>>>>
>>>> -       def_bool y if ARCH_EXYNOS
>>>> -       depends on !ARM64
>>>> +       bool "Exynos multi core timer driver"
>>>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>>>
>>> Nope, that was wrong as we loose auto-select on Exynos. Instead:
>>> -       def_bool y if ARCH_EXYNOS
>>> -       depends on !ARM64
>>> +       bool "Exynos multi core timer driver" if ARM
>>> +       depends on ARCH_EXYNOS || COMPILE_TEST
>>> +       default y if ARCH_EXYNOS
>>>
>>> This way we avoid select (which is a reverse dependency for the driver),
>>> have it auto-selectable and compile tested on arm.
>>
>> I think you misunderstood the patch I sent.
>>
>> It does two things:
>>
>> 1. Follow the thumb of rule of the current Kconfig format
>>
>>     - The timer driver is selected by the platform (exynos in this case)
>>     - User can't select the driver in the menuconfig
>>     - There is no dependency on the platform except for compilation test
>>
>> 2. Add the COMPILE_TEST
>>
>>     - User can select the driver for compilation testing. This is for 
>> allyesconfig when doing compilation test coverage (exynos timer could be 
>> compiled on other platform). As the delay code is not portable, we have 
>> to restrict the compilation on the ARM platform, this is why there is 
>> the dependency on ARM.
>>
>> I am currently looking at splitting the delay code in order to prevent 
>> this restriction on this driver and some others drivers.
> 
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
> 
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

Arnd, Daniel,

Sure, makes sense to me, thanks for explanation. Actually this makes me
thinking that drivers/soc/* should probably follow the same
convention... but not all of them do that.

Anyway the patch worked fine and with explanation I can only confirm:

Tested-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

Best regards,
Krzysztof

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03 12:01             ` Krzysztof Kozlowski
  (?)
@ 2015-11-03 12:04               ` Daniel Lezcano
  -1 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03 12:04 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Arnd Bergmann
  Cc: k.kozlowski.k, tglx, john.stultz, linux-kernel, Russell King,
	Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 11/03/2015 01:01 PM, Krzysztof Kozlowski wrote:
> Anyway the patch worked fine and with explanation I can only confirm:

Great ! Thanks Krzysztof for testing.

   -- Daniel

-- 
  <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


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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 12:04               ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03 12:04 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Arnd Bergmann
  Cc: k.kozlowski.k, tglx, john.stultz, linux-kernel, Russell King,
	Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On 11/03/2015 01:01 PM, Krzysztof Kozlowski wrote:
> Anyway the patch worked fine and with explanation I can only confirm:

Great ! Thanks Krzysztof for testing.

   -- Daniel

-- 
  <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

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 12:04               ` Daniel Lezcano
  0 siblings, 0 replies; 68+ messages in thread
From: Daniel Lezcano @ 2015-11-03 12:04 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/03/2015 01:01 PM, Krzysztof Kozlowski wrote:
> Anyway the patch worked fine and with explanation I can only confirm:

Great ! Thanks Krzysztof for testing.

   -- Daniel

-- 
  <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

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
  2015-11-03 10:02           ` Arnd Bergmann
  (?)
@ 2015-11-03 15:18             ` John Stultz
  -1 siblings, 0 replies; 68+ messages in thread
From: John Stultz @ 2015-11-03 15:18 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Daniel Lezcano, Krzysztof Kozlowski, Thomas Gleixner, lkml,
	Russell King, Kukjin Kim, moderated list:ARM SUB-ARCHITECT...,
	moderated list:ARM/SAMSUNG EXYNO...

On Tue, Nov 3, 2015 at 2:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
>
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

And just to clarify, I don't necessarily think "select" is the right
method, as creating an option that defaults to Y if the right
architecture/platform support is present is fine too.

I just don't want users to have to search deeply through menuconfig to
find a clocksource driver checkbox when they have already selected a
platform and provided enough information for us to know which
clocksource driver is needed.  So my argument its really all about
avoiding user-prompts in kconfig for clocksources.  It is conceptually
easier to do this w/ select, but you can also do it via default y and
proper dependencies.

thanks
-john

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

* Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 15:18             ` John Stultz
  0 siblings, 0 replies; 68+ messages in thread
From: John Stultz @ 2015-11-03 15:18 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Krzysztof Kozlowski, moderated list:ARM/SAMSUNG EXYNO...,
	Russell King, Daniel Lezcano, lkml, Kukjin Kim, Thomas Gleixner,
	moderated list:ARM SUB-ARCHITECT...

On Tue, Nov 3, 2015 at 2:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
>
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

And just to clarify, I don't necessarily think "select" is the right
method, as creating an option that defaults to Y if the right
architecture/platform support is present is fine too.

I just don't want users to have to search deeply through menuconfig to
find a clocksource driver checkbox when they have already selected a
platform and provided enough information for us to know which
clocksource driver is needed.  So my argument its really all about
avoiding user-prompts in kconfig for clocksources.  It is conceptually
easier to do this w/ select, but you can also do it via default y and
proper dependencies.

thanks
-john

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

* [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add COMPILE_TEST option
@ 2015-11-03 15:18             ` John Stultz
  0 siblings, 0 replies; 68+ messages in thread
From: John Stultz @ 2015-11-03 15:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 3, 2015 at 2:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> I suspect this will come up again in the future. The problem is
> really that drivers/clocksource has different rules from almost
> everything else, by requiring the platform to 'select' the driver.
>
> The second version that Krzysztof posted is how we handle this in
> other driver subsystems, and I would generally prefer it to do this
> consistently for everything, but John Stultz has in the past argued
> strongly for using 'select' in all clocksource drivers. The reason
> is that for each platform we know in advance which driver we want,
> and there is never a need for the user to have to select the right
> one.

And just to clarify, I don't necessarily think "select" is the right
method, as creating an option that defaults to Y if the right
architecture/platform support is present is fine too.

I just don't want users to have to search deeply through menuconfig to
find a clocksource driver checkbox when they have already selected a
platform and provided enough information for us to know which
clocksource driver is needed.  So my argument its really all about
avoiding user-prompts in kconfig for clocksources.  It is conceptually
easier to do this w/ select, but you can also do it via default y and
proper dependencies.

thanks
-john

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

end of thread, other threads:[~2015-11-03 15:18 UTC | newest]

Thread overview: 68+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-02 12:56 [PATCH 01/22] clocksource/drivers/pistachio: Add the COMPILE_TEST option Daniel Lezcano
2015-11-02 12:56 ` [PATCH 02/22] clocksource/drivers/mediatek: " Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 12:56 ` [PATCH 03/22] clocksource/drivers/rockchip: Make the driver more compatible Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 15:33   ` Arnd Bergmann
2015-11-02 15:33     ` Arnd Bergmann
2015-11-02 16:32     ` Daniel Lezcano
2015-11-02 16:32       ` Daniel Lezcano
2015-11-02 21:44       ` Arnd Bergmann
2015-11-02 21:44         ` Arnd Bergmann
2015-11-02 21:44         ` Arnd Bergmann
2015-11-02 12:56 ` [PATCH 04/22] clocksource/drivers/rockchip: Add COMPILE_TEST option Daniel Lezcano
2015-11-02 12:56 ` [PATCH 05/22] clocksource/drivers/armada-370-xp: Add the " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 06/22] clocksource/drivers/meson6: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 07/22] clocksource/drivers/orion: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 08/22] clocksource/drivers/digicolor: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 09/22] clocksource/drivers/dw_apb: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 10/22] clocksource/drivers/sun4i: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 11/22] clocksource/drivers/sun5i: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 12/22] clocksource/drivers/tegra2: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 13/22] clocksource/drivers/vt8500: Remove unneeded header Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 12:56 ` [PATCH 14/22] clocksource/drivers/vt8500: Add the COMPILE_TEST option Daniel Lezcano
2015-11-02 12:56 ` [PATCH 15/22] clocksource/drivers/cadence_ttc: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 16/22] clocksource/drivers/asm9260: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 17/22] clocksource/drivers/lpc32xx: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 18/22] clocksource/drivers/nomadik_mtu: " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 19/22] clocksource/drivers/prcmu: Fix Kconfig and add " Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 14:40   ` Linus Walleij
2015-11-02 14:40     ` Linus Walleij
2015-11-02 14:57     ` Daniel Lezcano
2015-11-02 14:57       ` Daniel Lezcano
2015-11-02 12:56 ` [PATCH 20/22] clocksource/drivers/exynos_mct: " Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-02 12:56   ` Daniel Lezcano
2015-11-03  0:30   ` Krzysztof Kozlowski
2015-11-03  0:30     ` Krzysztof Kozlowski
2015-11-03  0:30     ` Krzysztof Kozlowski
2015-11-03  0:59     ` Krzysztof Kozlowski
2015-11-03  0:59       ` Krzysztof Kozlowski
2015-11-03  0:59       ` Krzysztof Kozlowski
2015-11-03  8:40       ` Daniel Lezcano
2015-11-03  8:40         ` Daniel Lezcano
2015-11-03  8:40         ` Daniel Lezcano
2015-11-03 10:02         ` Arnd Bergmann
2015-11-03 10:02           ` Arnd Bergmann
2015-11-03 10:02           ` Arnd Bergmann
2015-11-03 11:08           ` Daniel Lezcano
2015-11-03 11:08             ` Daniel Lezcano
2015-11-03 11:08             ` Daniel Lezcano
2015-11-03 12:01           ` Krzysztof Kozlowski
2015-11-03 12:01             ` Krzysztof Kozlowski
2015-11-03 12:01             ` Krzysztof Kozlowski
2015-11-03 12:04             ` Daniel Lezcano
2015-11-03 12:04               ` Daniel Lezcano
2015-11-03 12:04               ` Daniel Lezcano
2015-11-03 15:18           ` John Stultz
2015-11-03 15:18             ` John Stultz
2015-11-03 15:18             ` John Stultz
2015-11-03  0:54   ` Chanwoo Choi
2015-11-03  0:54     ` Chanwoo Choi
2015-11-03  0:54     ` Chanwoo Choi
2015-11-02 12:56 ` [PATCH 21/22] clocksource/drivers/samsung-pwm: Add the " Daniel Lezcano
2015-11-02 12:56 ` [PATCH 22/22] clocksource/drivers/fsl-ftm: " Daniel Lezcano

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.