All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jon Hunter <jon-hunter@ti.com>
To: "Hiremath, Vaibhav" <hvaibhav@ti.com>
Cc: Tony Lindgren <tony@atomide.com>,
	"Hilman, Kevin" <khilman@ti.com>, Paul Walmsley <paul@pwsan.com>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	"Cousson, Benoit" <b-cousson@ti.com>,
	"marc.zyngier@arm.com" <marc.zyngier@arm.com>,
	Ming Lei <tom.leiming@gmail.com>, "Balbi, Felipe" <balbi@ti.com>,
	"Shilimkar, Santosh" <santosh.shilimkar@ti.com>,
	"johnstul@us.ibm.com" <johnstul@us.ibm.com>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"DebBarma, Tarun Kanti" <tarun.kanti@ti.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 1/3] ARM: OMAP2+: 32k-counter: Use hwmod lookup to	check presence of 32k timer
Date: Mon, 9 Apr 2012 15:18:22 -0500	[thread overview]
Message-ID: <4F83440E.70502@ti.com> (raw)
In-Reply-To: <79CD15C6BA57404B839C016229A409A83184ABEF@DBDE01.ent.ti.com>

Hi Vaibhav,

On 04/09/2012 01:19 AM, Hiremath, Vaibhav wrote:

[...]

> Let me summarize it here again,
>
> Currently, the timer code is using config option CONFIG_OMAP_32K_TIMER,
> to choose between 32ksync counter and gptimer; it is compile time option.
> If user wants to use gptimer for HR ticks, he must build the kernel without
> CONFIG_OMAP_32K_TIMER option.
>
> AM335x family of devices doesn't have 32ksync_counter available, only option
> here is to use gptimer for kernel clocksource and clockevents.
>
> So in order to support, multi-omap build including devices like AM335x, we
> must get rid of this option CONFIG_OMAP_32K_TIMER, atleast from clocksource
> registration perspective.
>
> So that means, we need to have some mechanism to handle or detect available
> clocksource runtime. Options would be,
>
>   - Use HWMOD to detect availability of 32ksync_counter, else fallback
>     to gptimer. [This was my original patch]
>
>     But this restricts the use of gptimer completely on omap architecture,
>     where we have 32ksync counter module.

True, but we would always want to use the 32k timer if CONFIG_PM is 
specified. So what I am saying is that if a device has a 32ksync timer 
and CONFIG_PM is defined, we always want to use the 32ksync timer and a 
gptimer should never be used.

So we should/must restrict the use of a gptimer is CONFIG_PM is enabled 
for devices that have the 32ksync timer.

>   - So the next solution is to still keep compile time option, so that user
>     will get to use gptimer atleast just changing the kernel config option.
>
>     But, still, this is going to be kernel rebuild.
>
>   - Next option came up was, register both the timers and override using
>     kernel parameter.
>
>     This will work only if, both the timers run at same rate/frequency; since
>     we have one more layer here setup_sched_clock(), which actually can be
>     called only once.
>
>   - Next option suggested by Santosh, is to use kernel parameter as in parse
>     it early, to make decision on if user wants to override default
>     clocksource (32ksync)
>
>     This is something will work for us and solves all above issues.

What happens if PM is enabled? Can you still override the default? I 
don't think this should be allowed for devices with a 32ksync timer.

Jon

WARNING: multiple messages have this Message-ID (diff)
From: jon-hunter@ti.com (Jon Hunter)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/3] ARM: OMAP2+: 32k-counter: Use hwmod lookup to	check presence of 32k timer
Date: Mon, 9 Apr 2012 15:18:22 -0500	[thread overview]
Message-ID: <4F83440E.70502@ti.com> (raw)
In-Reply-To: <79CD15C6BA57404B839C016229A409A83184ABEF@DBDE01.ent.ti.com>

Hi Vaibhav,

On 04/09/2012 01:19 AM, Hiremath, Vaibhav wrote:

[...]

> Let me summarize it here again,
>
> Currently, the timer code is using config option CONFIG_OMAP_32K_TIMER,
> to choose between 32ksync counter and gptimer; it is compile time option.
> If user wants to use gptimer for HR ticks, he must build the kernel without
> CONFIG_OMAP_32K_TIMER option.
>
> AM335x family of devices doesn't have 32ksync_counter available, only option
> here is to use gptimer for kernel clocksource and clockevents.
>
> So in order to support, multi-omap build including devices like AM335x, we
> must get rid of this option CONFIG_OMAP_32K_TIMER, atleast from clocksource
> registration perspective.
>
> So that means, we need to have some mechanism to handle or detect available
> clocksource runtime. Options would be,
>
>   - Use HWMOD to detect availability of 32ksync_counter, else fallback
>     to gptimer. [This was my original patch]
>
>     But this restricts the use of gptimer completely on omap architecture,
>     where we have 32ksync counter module.

True, but we would always want to use the 32k timer if CONFIG_PM is 
specified. So what I am saying is that if a device has a 32ksync timer 
and CONFIG_PM is defined, we always want to use the 32ksync timer and a 
gptimer should never be used.

So we should/must restrict the use of a gptimer is CONFIG_PM is enabled 
for devices that have the 32ksync timer.

>   - So the next solution is to still keep compile time option, so that user
>     will get to use gptimer atleast just changing the kernel config option.
>
>     But, still, this is going to be kernel rebuild.
>
>   - Next option came up was, register both the timers and override using
>     kernel parameter.
>
>     This will work only if, both the timers run at same rate/frequency; since
>     we have one more layer here setup_sched_clock(), which actually can be
>     called only once.
>
>   - Next option suggested by Santosh, is to use kernel parameter as in parse
>     it early, to make decision on if user wants to override default
>     clocksource (32ksync)
>
>     This is something will work for us and solves all above issues.

What happens if PM is enabled? Can you still override the default? I 
don't think this should be allowed for devices with a 32ksync timer.

Jon

  reply	other threads:[~2012-04-09 20:18 UTC|newest]

Thread overview: 146+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-19 14:28 [PATCH 0/3] ARM: OMAP1/2+: 32k-timer: Add hwmod lookup for 32k-timer Vaibhav Hiremath
2012-01-19 14:28 ` Vaibhav Hiremath
2012-01-19 14:28 ` [PATCH 1/3] ARM: OMAP2+: 32k-counter: Use hwmod lookup to check presence of 32k timer Vaibhav Hiremath
2012-01-19 14:28   ` Vaibhav Hiremath
2012-01-23 23:38   ` Kevin Hilman
2012-01-23 23:38     ` Kevin Hilman
2012-01-24  8:53     ` Hiremath, Vaibhav
2012-01-24  8:53       ` Hiremath, Vaibhav
2012-01-24 17:47       ` Kevin Hilman
2012-01-24 17:47         ` Kevin Hilman
2012-02-01  8:00         ` Hiremath, Vaibhav
2012-02-01  8:00           ` Hiremath, Vaibhav
2012-03-13 11:37     ` Ming Lei
2012-03-13 11:37       ` Ming Lei
2012-03-19 11:11       ` Hiremath, Vaibhav
2012-03-19 11:11         ` Hiremath, Vaibhav
2012-03-19 11:44         ` Ming Lei
2012-03-19 11:44           ` Ming Lei
2012-03-19 12:15           ` Santosh Shilimkar
2012-03-19 12:15             ` Santosh Shilimkar
2012-03-21 11:42             ` Hiremath, Vaibhav
2012-03-21 11:42               ` Hiremath, Vaibhav
2012-03-21 14:00               ` Shilimkar, Santosh
2012-03-21 14:00                 ` Shilimkar, Santosh
2012-03-28 14:16                 ` Hiremath, Vaibhav
2012-03-28 14:16                   ` Hiremath, Vaibhav
2012-03-28 14:20                   ` Shilimkar, Santosh
2012-03-28 14:20                     ` Shilimkar, Santosh
2012-03-28 14:37                     ` Hiremath, Vaibhav
2012-03-28 14:37                       ` Hiremath, Vaibhav
2012-03-28 14:49                       ` Shilimkar, Santosh
2012-03-28 14:49                         ` Shilimkar, Santosh
2012-03-30  6:34                         ` Hiremath, Vaibhav
2012-03-30  6:34                           ` Hiremath, Vaibhav
2012-03-30  7:41                           ` Shilimkar, Santosh
2012-03-30  7:41                             ` Shilimkar, Santosh
2012-03-30  8:32                             ` Hiremath, Vaibhav
2012-03-30  8:32                               ` Hiremath, Vaibhav
2012-03-30  8:38                               ` Santosh Shilimkar
2012-03-30  8:38                                 ` Santosh Shilimkar
2012-03-30  9:12                                 ` Hiremath, Vaibhav
2012-03-30  9:12                                   ` Hiremath, Vaibhav
2012-03-30  9:20                                   ` Shilimkar, Santosh
2012-03-30  9:20                                     ` Shilimkar, Santosh
2012-03-30  9:28                                     ` Hiremath, Vaibhav
2012-03-30  9:28                                       ` Hiremath, Vaibhav
2012-03-30  9:42                                       ` Shilimkar, Santosh
2012-03-30  9:42                                         ` Shilimkar, Santosh
2012-03-30 11:29                                         ` Hiremath, Vaibhav
2012-03-30 11:29                                           ` Hiremath, Vaibhav
2012-03-30 11:35                                           ` Santosh Shilimkar
2012-03-30 11:35                                             ` Santosh Shilimkar
2012-03-31  1:30                                     ` Ming Lei
2012-03-31  1:30                                       ` Ming Lei
2012-03-31  6:30                                       ` Shilimkar, Santosh
2012-03-31  6:30                                         ` Shilimkar, Santosh
2012-03-31  8:39                                         ` Ming Lei
2012-03-31  8:39                                           ` Ming Lei
2012-03-31 19:10                                           ` Shilimkar, Santosh
2012-03-31 19:10                                             ` Shilimkar, Santosh
2012-04-01  1:39                                             ` Ming Lei
2012-04-01  1:39                                               ` Ming Lei
2012-04-01  5:53                                               ` Shilimkar, Santosh
2012-04-01  5:53                                                 ` Shilimkar, Santosh
2012-04-02 18:35                                                 ` Kevin Hilman
2012-04-02 18:35                                                   ` Kevin Hilman
2012-04-03  5:50                                                   ` Shilimkar, Santosh
2012-04-03  5:50                                                     ` Shilimkar, Santosh
2012-04-03 15:35                                                   ` Hiremath, Vaibhav
2012-04-03 15:35                                                     ` Hiremath, Vaibhav
2012-04-04  9:04                                                     ` Shilimkar, Santosh
2012-04-04  9:04                                                       ` Shilimkar, Santosh
2012-04-04 10:39                                                       ` Hiremath, Vaibhav
2012-04-04 10:39                                                         ` Hiremath, Vaibhav
2012-04-05  9:36                                                       ` Hiremath, Vaibhav
2012-04-05  9:36                                                         ` Hiremath, Vaibhav
2012-04-05  9:52                                                         ` Russell King - ARM Linux
2012-04-05  9:52                                                           ` Russell King - ARM Linux
2012-04-05 10:31                                                           ` Hiremath, Vaibhav
2012-04-05 10:31                                                             ` Hiremath, Vaibhav
2012-04-05 10:46                                                             ` Santosh Shilimkar
2012-04-05 10:46                                                               ` Santosh Shilimkar
2012-04-05 21:33                                                             ` Kevin Hilman
2012-04-05 21:33                                                               ` Kevin Hilman
2012-04-06  5:21                                                               ` Hiremath, Vaibhav
2012-04-06  5:21                                                                 ` Hiremath, Vaibhav
2012-04-06 18:04                                                                 ` Tony Lindgren
2012-04-06 18:04                                                                   ` Tony Lindgren
2012-04-09  6:19                                                                   ` Hiremath, Vaibhav
2012-04-09  6:19                                                                     ` Hiremath, Vaibhav
2012-04-09 20:18                                                                     ` Jon Hunter [this message]
2012-04-09 20:18                                                                       ` Jon Hunter
2012-04-10  5:42                                                                       ` Hiremath, Vaibhav
2012-04-10  5:42                                                                         ` Hiremath, Vaibhav
2012-04-10  8:44                                                                       ` Russell King - ARM Linux
2012-04-10  8:44                                                                         ` Russell King - ARM Linux
2012-04-10  8:57                                                                         ` Santosh Shilimkar
2012-04-10  8:57                                                                           ` Santosh Shilimkar
2012-04-10  9:29                                                                           ` Russell King - ARM Linux
2012-04-10  9:29                                                                             ` Russell King - ARM Linux
2012-04-10  9:51                                                                             ` Shilimkar, Santosh
2012-04-10  9:51                                                                               ` Shilimkar, Santosh
2012-04-10 21:03                                                                               ` Jon Hunter
2012-04-10 21:03                                                                                 ` Jon Hunter
2012-04-11  1:00                                                                               ` Ming Lei
2012-04-11  1:00                                                                                 ` Ming Lei
2012-04-11  7:47                                                                                 ` Shilimkar, Santosh
2012-04-11  7:47                                                                                   ` Shilimkar, Santosh
2012-04-06 21:18                                                                 ` Kevin Hilman
2012-04-06 21:18                                                                   ` Kevin Hilman
2012-04-09  6:25                                                                   ` Hiremath, Vaibhav
2012-04-09  6:25                                                                     ` Hiremath, Vaibhav
2012-03-21 11:29           ` Hiremath, Vaibhav
2012-03-21 11:29             ` Hiremath, Vaibhav
2012-03-23  8:20             ` Ming Lei
2012-03-23  8:20               ` Ming Lei
2012-03-30  6:39               ` Hiremath, Vaibhav
2012-03-30  6:39                 ` Hiremath, Vaibhav
2012-03-05 22:55   ` Tony Lindgren
2012-03-05 22:55     ` Tony Lindgren
2012-03-07  9:48     ` Hiremath, Vaibhav
2012-03-07  9:48       ` Hiremath, Vaibhav
2012-03-09 17:58     ` Hiremath, Vaibhav
2012-03-09 17:58       ` Hiremath, Vaibhav
2012-03-12  9:39       ` Felipe Balbi
2012-03-12  9:39         ` Felipe Balbi
2012-03-12  9:48         ` Hiremath, Vaibhav
2012-03-12  9:48           ` Hiremath, Vaibhav
2012-03-12 10:17           ` Felipe Balbi
2012-03-12 10:17             ` Felipe Balbi
2012-03-12 10:39             ` Hiremath, Vaibhav
2012-03-12 10:39               ` Hiremath, Vaibhav
2012-01-19 14:28 ` [PATCH 2/3] ARM: OMAP2/3: Add idle_st bits for ST_32KSYNC timer to prcm-common header Vaibhav Hiremath
2012-01-19 14:28   ` Vaibhav Hiremath
2012-03-05 22:56   ` Tony Lindgren
2012-03-05 22:56     ` Tony Lindgren
2012-03-07  9:49     ` Hiremath, Vaibhav
2012-03-07  9:49       ` Hiremath, Vaibhav
2012-01-19 14:28 ` [PATCH 3/3] ARM: OMAP2+: hwmod data: Add 32k-sync timer data to hwmod database Vaibhav Hiremath
2012-01-19 14:28   ` Vaibhav Hiremath
2012-01-23  8:47 ` [PATCH 0/3] ARM: OMAP1/2+: 32k-timer: Add hwmod lookup for 32k-timer Hiremath, Vaibhav
2012-01-23  8:47   ` Hiremath, Vaibhav
2012-03-05 22:57   ` Tony Lindgren
2012-03-05 22:57     ` Tony Lindgren
2012-03-07  9:50     ` Hiremath, Vaibhav
2012-03-07  9:50       ` Hiremath, Vaibhav

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F83440E.70502@ti.com \
    --to=jon-hunter@ti.com \
    --cc=b-cousson@ti.com \
    --cc=balbi@ti.com \
    --cc=hvaibhav@ti.com \
    --cc=johnstul@us.ibm.com \
    --cc=khilman@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=marc.zyngier@arm.com \
    --cc=paul@pwsan.com \
    --cc=santosh.shilimkar@ti.com \
    --cc=tarun.kanti@ti.com \
    --cc=tom.leiming@gmail.com \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.