linux-omap.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tero Kristo <t-kristo@ti.com>
To: Kevin Hilman <khilman@ti.com>
Cc: linux-omap@vger.kernel.org, nm@ti.com
Subject: Re: [PATCHv4 12/15] vc: omap3: auto_ret / auto_off support
Date: Mon, 12 Dec 2011 11:53:05 +0200	[thread overview]
Message-ID: <1323683585.31914.20.camel@sokoban> (raw)
In-Reply-To: <87iplpcxl8.fsf@ti.com>

On Fri, 2011-12-09 at 12:13 -0800, Kevin Hilman wrote:
> Tero Kristo <t-kristo@ti.com> writes:
> 
> > Voltage code will now enable / disable auto_ret / auto_off dynamically
> > according to the voltagedomain usecounts. This is accomplished via
> > the usage of the voltdm callback functions for sleep / wakeup.
> >
> > Signed-off-by: Tero Kristo <t-kristo@ti.com>
> 
> [...]
> 
> > -static void __init omap3_vc_init_channel(struct voltagedomain *voltdm)
> > +static void omap3_set_core_off_timings(struct voltagedomain *voltdm)
> >  {
> > +	u32 tstart, tshut;
> 
> nit: insert blank line here

Okay.

> 
> > +	omap_pm_get_oscillator(&tstart, &tshut);
> > +	omap3_set_clksetup(tstart, voltdm);
> >  	omap3_set_off_timings(voltdm);
> >  }
> >  
> > +static void omap3_vc_channel_sleep(struct voltagedomain *voltdm)
> > +{
> > +	/* Set off timings if entering off */
> > +	if (voltdm->target_state == PWRDM_POWER_OFF)
> > +		omap3_set_off_timings(voltdm);
> > +	else
> > +		omap3_set_i2c_timings(voltdm, 0);
> 
> Comment probably applies more to patch 2 since that's where it was
> introduced, but this is where I got confused, so mentioning it here:
> 
> Calling this 'set_i2c_timings' is a bit confusing IMO because reading
> the code there is a choice between 'i2c' timings and 'off' timings.
> Maybe just calling these 'ret' and 'off' timings will be better for
> readability.

Well, actually, you can use i2c timings when scaling voltage to off
level also. You have following options for voltage scaling on omap3:

- scale to ret level (0.975V) using i2c command
- scale to off level (0.6V) using i2c command
- switch to off (0V) using pmic scripts

I was kind of trying to reflect this here, even though the pmic script
support is missing.

> 
> > +}
> > +
> > +static void omap3_vc_channel_wakeup(struct voltagedomain *voltdm)
> > +{
> > +}
> 
> nit: empty function not needed since code checks for non-NULL function
> pointer.

Yea can drop that away, I left it there because I thought it might need
some beef in it at some point.

> 
> > +static void omap3_vc_core_sleep(struct voltagedomain *voltdm)
> > +{
> > +	u8 mode;
> > +
> > +	switch (voltdm->target_state) {
> > +	case PWRDM_POWER_OFF:
> > +		mode = OMAP3430_AUTO_OFF_MASK;
> > +		break;
> > +	case PWRDM_POWER_RET:
> > +		mode = OMAP3430_AUTO_RET_MASK;
> > +		break;
> > +	default:
> > +		mode = OMAP3430_AUTO_SLEEP_MASK;
> > +		break;
> > +	}
> > +
> > +	if (mode & OMAP3430_AUTO_OFF_MASK)
> 
> AND vs. == ?

Oh yea, some strange logic here for sure, I'll change that to ==. :)

> 
> speaking of which, this function probably needs a comment mentioning
> that these bits are all mutually exclusive (with a TRM reference.)

Can add that too.

-Tero



  reply	other threads:[~2011-12-12  9:53 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-25 15:49 [PATCHv4 00/15] voltdm cleanup + auto-ret / auto-off support Tero Kristo
2011-11-25 15:49 ` [PATCHv4 01/15] OMAP3+: PM: VP: use uV for max and min voltage limits Tero Kristo
2011-12-09 18:07   ` Kevin Hilman
2011-12-12  9:39     ` Tero Kristo
2011-11-25 15:49 ` [PATCHv4 02/15] omap3+: voltage: parameter segregation Tero Kristo
2011-11-29 18:26   ` Menon, Nishanth
2011-11-30 10:07     ` Tero Kristo
2011-11-30 12:31       ` Menon, Nishanth
2011-11-30 13:04         ` Tero Kristo
2011-11-30 10:11   ` Jean Pihet
2011-11-25 15:49 ` [PATCHv4 03/15] omap: voltage: add definition for pmic startup / shutdown times Tero Kristo
2011-11-25 15:49 ` [PATCHv4 04/15] omap4: add " Tero Kristo
2011-11-29 18:30   ` Menon, Nishanth
2011-11-30  9:45     ` Tero Kristo
2011-11-30 12:20       ` Menon, Nishanth
2011-11-30 13:08         ` Tero Kristo
2011-11-25 15:49 ` [PATCHv4 05/15] omap: add support for oscillator setup Tero Kristo
2011-12-09 18:27   ` Kevin Hilman
2011-12-12  9:40     ` Tero Kristo
2011-11-25 15:49 ` [PATCHv4 06/15] omap3+: vp: use new vp_params for calculating vddmin and vddmax Tero Kristo
2011-11-29 18:34   ` Menon, Nishanth
2011-11-25 15:49 ` [PATCHv4 07/15] omap3+: voltage: use oscillator data to calculate setup times Tero Kristo
2011-11-25 15:49 ` [PATCHv4 08/15] omap4: use pmic params for calculating pmic " Tero Kristo
2011-11-25 15:49 ` [PATCHv4 09/15] TEMP: OMAP3: beagle rev-c4: enable OPP6 Tero Kristo
2011-11-25 15:49 ` [PATCHv4 10/15] omap: beagle: set oscillator startup time to 10ms for rev c4 Tero Kristo
2011-12-09 19:11   ` Kevin Hilman
2011-12-12  9:42     ` Tero Kristo
2011-11-25 15:49 ` [PATCHv4 11/15] omap3+: voltage/pwrdm/clkdm/clock add recursive usecount tracking Tero Kristo
2011-11-30  9:52   ` Jean Pihet
2011-11-30 10:11     ` Tero Kristo
2011-12-09 19:37   ` Kevin Hilman
2011-12-12  9:45     ` Tero Kristo
2011-11-25 15:49 ` [PATCHv4 12/15] vc: omap3: auto_ret / auto_off support Tero Kristo
2011-12-09 20:13   ` Kevin Hilman
2011-12-12  9:53     ` Tero Kristo [this message]
2011-12-12 15:05       ` Kevin Hilman
2011-11-25 15:49 ` [PATCHv4 13/15] omap3: fix usecount tracking Tero Kristo
2011-11-25 15:49 ` [PATCHv4 14/15] omap3: voltage: fix channel configuration Tero Kristo
2011-11-25 15:49 ` [PATCHv4 15/15] omap: pm: wait for domain wakeup if changing state of idle domain Tero Kristo
2011-11-30 10:06 ` [PATCHv4 00/15] voltdm cleanup + auto-ret / auto-off support Jean Pihet
2011-11-30 10:19   ` Tero Kristo
2011-12-09 20:23 ` Kevin Hilman
2011-12-12  9:38   ` Tero Kristo

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=1323683585.31914.20.camel@sokoban \
    --to=t-kristo@ti.com \
    --cc=khilman@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=nm@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;
as well as URLs for NNTP newsgroup(s).