public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@deeprootsystems.com>
To: Madhusudhan <madhu.cr@ti.com>
Cc: 'Paul Walmsley' <paul@pwsan.com>,
	"'Dasgupta, Romit'" <romit@ti.com>,
	"'linux-omap@vger.kernel.org'" <linux-omap@vger.kernel.org>
Subject: Re: [PATCH] omap-pm: Fixes behaviour of some shared resource framework functions
Date: Wed, 28 Oct 2009 15:45:19 -0700	[thread overview]
Message-ID: <87hbtj3zpc.fsf@deeprootsystems.com> (raw)
In-Reply-To: <003201ca581b$256863c0$544ff780@am.dhcp.ti.com> (Madhusudhan's message of "Wed\, 28 Oct 2009 17\:08\:14 -0500")

"Madhusudhan" <madhu.cr@ti.com> writes:

>> -----Original Message-----
>> From: linux-omap-owner@vger.kernel.org [mailto:linux-omap-
>> owner@vger.kernel.org] On Behalf Of Paul Walmsley
>> Sent: Wednesday, October 28, 2009 1:38 PM
>> To: Kevin Hilman
>> Cc: Dasgupta\, Romit; linux-omap\@vger.kernel.org
>> Subject: Re: [PATCH] omap-pm: Fixes behaviour of some shared resource
>> framework functions
>> 
>> On Tue, 13 Oct 2009, Kevin Hilman wrote:
>> 
>> > "Dasgupta, Romit" <romit@ti.com> writes:
>> >
>> > > (Tested on Zoom2).
>> > >
>> > > 'omap_pm_dsp_set_min_opp' & 'omap_pm_cpu_set_freq' were using their
>> own
>> > > struct device *. This is a problem because invoking these functions
>> from
>> > > different clients would result in setting of the resource level as
>> requested by
>> > > the last caller. Fixes this by introducing a struct device * to the
>> parameter
>> > > list for these functions.
>> > > Signed-off-by: Romit Dasgupta <romit@ti.com>
>> >
>> >
>> > This looks like the right fix to me.
>> >
>> > Paul, any comments?
>> 
>> 
>> Wait a minute, I am retracting my ack.
>> 
>> 
>> Romit, the only caller of omap_pm_dsp_set_min_opp() should be DSPBridge
>> and the only caller of omap_pm_cpu_set_freq() should be CPUFreq.  So the
>> struct device * pointer is not necessary, unless I am missing something.
>> Can you please explain what you're trying to do?
>> 
> I believe that omap_pm_cpu_set_freq() can be called by drivers to setup the
> optimal vdd1 opp, right? For example MMC works at opp1 but the performance
> is certainly better at opp3.When ondemand is enabled drivers need to put
> certain constraints on vdd1 opp otherwise performance will be hurt. So, if
> the API takes care of device level calls then drivers can call this fn.

So, the root use case is a power vs. performance policy decision.  And
using the proposed solution, a single driver gets to make a system
wide policy decision.  I don't like this.

For your MMC usecase, I think we need some clarifications.

What exactly does "better" performance mean.  Is it better throughput
that is needed?  or is it really the MPU side that is not
running/responding fast enough.

If it's throughput, then omap_pm_set_min_bus_tput() should be used.

If it's the MPU, what exactly is the problem with ondemand.  Is it
that it doesn't respond fast enough?  Or that it never switches to a
higher OPP.

Kevin

  reply	other threads:[~2009-10-28 22:45 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-07 12:41 [PATCH] omap-pm: Fixes behaviour of some shared resource framework functions Dasgupta, Romit
2009-10-13 19:06 ` Kevin Hilman
2009-10-28 18:29   ` Paul Walmsley
2009-10-28 18:38   ` Paul Walmsley
2009-10-28 22:08     ` Madhusudhan
2009-10-28 22:45       ` Kevin Hilman [this message]
2009-10-29  7:39         ` Dasgupta, Romit
2009-10-29 11:16           ` Mark Brown
2009-10-29 12:42           ` Cousson, Benoit
2009-10-29 14:52             ` Dasgupta, Romit
2009-10-29 15:42               ` Kevin Hilman
2009-10-29 21:37                 ` Mike Turquette
2009-10-29 22:22                   ` Madhusudhan
2009-10-29 23:32                     ` Kevin Hilman
2009-10-30  9:43                       ` Titiano, Patrick
2009-10-30  7:58                   ` Dasgupta, Romit

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=87hbtj3zpc.fsf@deeprootsystems.com \
    --to=khilman@deeprootsystems.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=madhu.cr@ti.com \
    --cc=paul@pwsan.com \
    --cc=romit@ti.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox