Subject: [PATCH v4 4/8] arm: OMAP: Move dmtimer driver out of plat-omap to drivers under clocksource

From: [email-masked] (Ladislav Michl)
Date: Fri, 8 Dec 2017 18:20:31 +0100

Daniel,

On Thu, Dec 07, 2017 at 11:54:27AM +0100, Daniel Lezcano wrote:
> On 01/12/2017 06:16, Keerthy wrote:
> > Move the dmtimer driver out of plat-omap to clocksource.
> > So that non-omap devices also could use this.
> > 
> > No Code changes done to the driver file.
> > 
> > Signed-off-by: Keerthy <[email-masked]>
> > Reviewed-by: Sebastian Reichel <[email-masked]>
> > ---
> > 
> > Changes in v3:
> > 
> >   * Added Sebastian's Reviewed-by.
> > 
> > Changes in v2:
> > 
> >   * No code changes in this v2 version. Only enhanced patch
> >     statistics for renames.
> > 
> >  arch/arm/plat-omap/Kconfig                            | 6 ------
> >  arch/arm/plat-omap/Makefile                           | 1 -
> >  drivers/clocksource/Kconfig                           | 6 ++++++
> >  drivers/clocksource/Makefile                          | 1 +
> >  {arch/arm/plat-omap => drivers/clocksource}/dmtimer.c | 0
> >  5 files changed, 7 insertions(+), 7 deletions(-)
> >  rename {arch/arm/plat-omap => drivers/clocksource}/dmtimer.c (100%)
> 
> Take the opportunity to rename it timer-dm.c

seems the drivers/clocksource subdirectory contains what its name state.
However OMAP dual mode timers have also event capture capability, which
I'd like to use to measure pulse/space width and pass measured values
to IR protocol decoders.

Do you have any idea how to split code, so that event capture capability
could be used by other drivers?

Thank you,
	ladis

> > diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig
> > index 7276afe..afc1a1d 100644
> > --- a/arch/arm/plat-omap/Kconfig
> > +++ b/arch/arm/plat-omap/Kconfig
> > @@ -106,12 +106,6 @@ config OMAP3_L2_AUX_SECURE_SERVICE_SET_ID
> >  	help
> >  	  PPA routine service ID for setting L2 auxiliary control register.
> >  
> > -config OMAP_DM_TIMER
> > -	bool "Use dual-mode timer"
> > -	depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS
> > -	help
> > -	 Select this option if you want to use OMAP Dual-Mode timers.
> > -
> >  config OMAP_SERIAL_WAKE
> >  	bool "Enable wake-up events for serial ports"
> >  	depends on ARCH_OMAP1 && OMAP_MUX
> > diff --git a/arch/arm/plat-omap/Makefile b/arch/arm/plat-omap/Makefile
> > index 47e1867..7215ada 100644
> > --- a/arch/arm/plat-omap/Makefile
> > +++ b/arch/arm/plat-omap/Makefile
> > @@ -9,5 +9,4 @@ obj-y := sram.o dma.o counter_32k.o
> >  
> >  # omap_device support (OMAP2+ only at the moment)
> >  
> > -obj-$(CONFIG_OMAP_DM_TIMER) += dmtimer.o
> >  obj-$(CONFIG_OMAP_DEBUG_LEDS) += debug-leds.o
> > diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
> > index c729a88..4da66cf 100644
> > --- a/drivers/clocksource/Kconfig
> > +++ b/drivers/clocksource/Kconfig
> > @@ -46,6 +46,12 @@ config DIGICOLOR_TIMER
> >  	help
> >  	  Enables the support for the digicolor timer driver.
> >  
> > +config OMAP_DM_TIMER
> > +	bool "Use dual-mode timer"
> > +	depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS
> > +	help
> > +	 Select this option if you want to use Dual-Mode timers.
> > +
> 
> So in the clocksource directory the rule is the following:
> 
> The config option is silent except if COMPILE_TEST is set.
> 
> It is the Kconfig's platform which select the driver so there is no deps
> on the ARCH.
> 
> config OMAP_DM_TIMER
> 	bool "Use dual-mode timer" if COMPILE_TEST
> 	help
> 	 Select this option if you want to use Dual-Mode timers.
> 
> Here you will have to make sure the driver compiles on x86.
> 
> >  config DW_APB_TIMER
> >  	bool "DW APB timer driver" if COMPILE_TEST
> >  	help
> > diff --git a/drivers/clocksource/Makefile b/drivers/clocksource/Makefile
> > index 72711f1..b077076 100644
> > --- a/drivers/clocksource/Makefile
> > +++ b/drivers/clocksource/Makefile
> > @@ -16,6 +16,7 @@ obj-$(CONFIG_EM_TIMER_STI)	+= em_sti.o
> >  obj-$(CONFIG_CLKBLD_I8253)	+= i8253.o
> >  obj-$(CONFIG_CLKSRC_MMIO)	+= mmio.o
> >  obj-$(CONFIG_DIGICOLOR_TIMER)	+= timer-digicolor.o
> > +obj-$(CONFIG_OMAP_DM_TIMER)	+= dmtimer.o
> >  obj-$(CONFIG_DW_APB_TIMER)	+= dw_apb_timer.o
> >  obj-$(CONFIG_DW_APB_TIMER_OF)	+= dw_apb_timer_of.o
> >  obj-$(CONFIG_FTTMR010_TIMER)	+= timer-fttmr010.o
> > diff --git a/arch/arm/plat-omap/dmtimer.c b/drivers/clocksource/dmtimer.c
> > similarity index 100%
> > rename from arch/arm/plat-omap/dmtimer.c
> > rename to drivers/clocksource/dmtimer.c
> > 
> 
> 
> -- 
>  <http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs
> 
> Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
> <http://twitter.com/#!/linaroorg> Twitter |
> <http://www.linaro.org/linaro-blog/> Blog
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html