All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH-V6 0/3] ARM: OMAP: Make OMAP clocksource source selection runtime
@ 2012-05-02 13:56 ` Vaibhav Hiremath
  0 siblings, 0 replies; 28+ messages in thread
From: Vaibhav Hiremath @ 2012-05-02 13:56 UTC (permalink / raw)
  To: linux-omap
  Cc: tony, khilman, paul, santosh.shilimkar, b-cousson,
	linux-arm-kernel, Vaibhav Hiremath

Current OMAP code supports couple of clocksource options based
on compilation flag (CONFIG_OMAP_32K_TIMER). The 32KHz sync-timer
and a gptimer which can run on 32KHz or system clock (e.g 38.4 MHz)

This patch series cleans up the existing 32k-sync timer implementation,
movind SoC init code to respective files (mach-omap1/timer32k.c and
mach-omap2/timer.c) and uses kernel parameter to override the default
clocksource of "counter_32k", also in order to support some OMAP based
derivative SoCs like AM33XX which doesn't have 32K sync-timer hardware IP,
adds hwmod lookup for omap2+ devices, and if lookup fails then
fall back to gp-timer.

if(use_gptimer_clksrc == true)
	gptimer clocksource init;
else if (counter_32 init == false)
	/* Fallback to gptimer */
	gptimer clocksource init(;

With this, we should be able to support multi-omap boot
including devices with/without 32k-sync timer.

This patch-series has been boot tested on AM37xEVM platform, it
would be helpful if somebody help me to validate it on OMAP1/2
platforms.

The patches are also available at (based on linux-omap/master) -
https://github.com/hvaibhav/am335x-linux   32ksync-timer-cleanup

History:
========
Changes from V5:
http://www.mail-archive.com/linux-omap@vger.kernel.org/msg67163.html
	- 2 of the original patch-series (1/3 and 2/3) has already been
	  accepted and queued by Paul, so removing them.
	  Also, add 2 new patches,
		- OMAP2 timer32k cleanup, check for return values.
		- Changed name of system timers, "gp timer" => "gp_timer".
	- Moved SoC specific init code to respective files
	  (mach-omap1/timer32k.c and mach-omap2/timer.c)

Changes from V4:
http://www.mail-archive.com/linux-omap@vger.kernel.org/msg67019.html
	- Fix the possible bug, leftover the cnt addr argument to
	  clocksource_mmio_init().

Changes from V3:
http://www.mail-archive.com/linux-omap@vger.kernel.org/msg66462.html
	- Fixed all review comments from Kevin H
		* Moved counter_32k CR register offset handling to
		  counter_32k.c file, so now, calling funtion don't have
		  to maintain or add offset to base addr.
		* Added comment for function omap_init_clocksource_32k()
		* Used resource_size() for calculate size
		* Convert WARN_ON to pr_warn

Changes from V2:
http://lists.infradead.org/pipermail/linux-arm-kernel/2012-March/092037.html
	- Added early_param support to read clocksource selection
	  from user through kernel parameter ("clocksource=")
	- Converted to ocp_if changes from Paul

Changes from V1:
http://lists.infradead.org/pipermail/linux-arm-kernel/2012-January/081037.html
	- Based on Tony's comment, added pbase & size argument to
	  omap_init_clocksource_32k(), to avoid cpu_is_xxx() check.
	- Added commit description based on discussion on list
	  (Thanks to Santosh here)
	- Reorder patch sequence




Vaibhav Hiremath (3):
  ARM: OMAP1: FIX: check possible error condition in timer_init
  ARM: OMAP2+: Replace space=>underscore in the name field of system
    timers
  ARM: OMAP: Make OMAP clocksource source selection using kernel param

 arch/arm/mach-omap1/common.h             |   10 ++-
 arch/arm/mach-omap1/time.c               |   16 +----
 arch/arm/mach-omap1/timer32k.c           |   28 ++++++-
 arch/arm/mach-omap2/timer.c              |  118 +++++++++++++++++++++++------
 arch/arm/plat-omap/counter_32k.c         |   91 ++++++++++-------------
 arch/arm/plat-omap/include/plat/common.h |    2 +-
 6 files changed, 167 insertions(+), 98 deletions(-)


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

end of thread, other threads:[~2012-05-07 12:40 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-02 13:56 [PATCH-V6 0/3] ARM: OMAP: Make OMAP clocksource source selection runtime Vaibhav Hiremath
2012-05-02 13:56 ` Vaibhav Hiremath
2012-05-02 13:56 ` [PATCH-V6 1/3] ARM: OMAP1: FIX: check possible error condition in timer_init Vaibhav Hiremath
2012-05-02 13:56   ` Vaibhav Hiremath
2012-05-02 20:08   ` Kevin Hilman
2012-05-02 20:08     ` Kevin Hilman
2012-05-04 17:43     ` Tony Lindgren
2012-05-04 17:43       ` Tony Lindgren
2012-05-04 19:45       ` Janusz Krzysztofik
2012-05-04 19:45         ` Janusz Krzysztofik
2012-05-02 13:56 ` [PATCH-V6 2/3] ARM: OMAP2+: Replace space=>underscore in the name field of system timers Vaibhav Hiremath
2012-05-02 13:56   ` Vaibhav Hiremath
2012-05-02 20:09   ` Kevin Hilman
2012-05-02 20:09     ` Kevin Hilman
2012-05-02 13:56 ` [PATCH-V6 3/3] ARM: OMAP: Make OMAP clocksource source selection using kernel param Vaibhav Hiremath
2012-05-02 13:56   ` Vaibhav Hiremath
2012-05-02 20:39   ` Kevin Hilman
2012-05-02 20:39     ` Kevin Hilman
2012-05-03  8:06     ` Hiremath, Vaibhav
2012-05-03  8:06       ` Hiremath, Vaibhav
2012-05-02 19:56 ` [PATCH-V6 0/3] ARM: OMAP: Make OMAP clocksource source selection runtime Jon Hunter
2012-05-02 19:56   ` Jon Hunter
2012-05-03  5:07   ` Hiremath, Vaibhav
2012-05-03  5:07     ` Hiremath, Vaibhav
2012-05-03 18:19     ` Jon Hunter
2012-05-03 18:19       ` Jon Hunter
2012-05-07 12:39       ` Cousson, Benoit
2012-05-07 12:39         ` Cousson, Benoit

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.