From: Mark Brown <broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org> To: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Cc: Kevin Hilman <khilman-l0cyMroinI0@public.gmane.org>, Nishanth Menon <nm-l0cyMroinI0@public.gmane.org>, Mike Turquette <mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>, linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, cpufreq-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, "Rafael J. Wysocki" <rjw-KKrjLPT3xs0@public.gmane.org>, Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>, Russell King - ARM Linux <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Subject: Re: [PATCH 3/3] cpufreq: Add a generic cpufreq-cpu0 driver Date: Thu, 26 Jul 2012 14:11:21 +0100 [thread overview] Message-ID: <20120726131121.GB7306@sirena.org.uk> (raw) In-Reply-To: <1342713281-31114-4-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> On Thu, Jul 19, 2012 at 11:54:41PM +0800, Shawn Guo wrote: > +Optional properties: > +- transition-latency: Specify the possible maximum transition latency, > + in unit of nanoseconds. This should make it clear that the transition latency being documented here is just that for the core clock change itself, there may be other sources of latency like the regulator ramp time or reprogramming PLLs. > + if (cpu_reg) { > + opp = opp_find_freq_ceil(cpu_dev, &freq_Hz); > + if (IS_ERR(opp)) { > + pr_err("failed to find OPP for %ld\n", freq_Hz); > + return PTR_ERR(opp); > + } > + volt = opp_get_voltage(opp); > + tol = volt * voltage_tolerance / 100; > + volt_old = regulator_get_voltage(cpu_reg); regulator_get_voltage() might be a bit expensive, many regulators will query the hardware every time. Since it's just for diagnostic purposes it'd be better to not bother and let people read the historical information from the logs. > + /* scaling up? scale voltage before frequency */ > + if (cpu_reg && freqs.new > freqs.old) { > + if (regulator_set_voltage(cpu_reg, volt - tol, volt + tol)) { This is a totally sane and sensible use case for specifying a voltage range, we should move it into the regulator core for other users so you can just specify the voltage and the tolerance directly. It is a little sad here as it means that we loose the ability to do frequency only scaling if there's no regulator which is nice.
WARNING: multiple messages have this Message-ID (diff)
From: broonie@opensource.wolfsonmicro.com (Mark Brown) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 3/3] cpufreq: Add a generic cpufreq-cpu0 driver Date: Thu, 26 Jul 2012 14:11:21 +0100 [thread overview] Message-ID: <20120726131121.GB7306@sirena.org.uk> (raw) In-Reply-To: <1342713281-31114-4-git-send-email-shawn.guo@linaro.org> On Thu, Jul 19, 2012 at 11:54:41PM +0800, Shawn Guo wrote: > +Optional properties: > +- transition-latency: Specify the possible maximum transition latency, > + in unit of nanoseconds. This should make it clear that the transition latency being documented here is just that for the core clock change itself, there may be other sources of latency like the regulator ramp time or reprogramming PLLs. > + if (cpu_reg) { > + opp = opp_find_freq_ceil(cpu_dev, &freq_Hz); > + if (IS_ERR(opp)) { > + pr_err("failed to find OPP for %ld\n", freq_Hz); > + return PTR_ERR(opp); > + } > + volt = opp_get_voltage(opp); > + tol = volt * voltage_tolerance / 100; > + volt_old = regulator_get_voltage(cpu_reg); regulator_get_voltage() might be a bit expensive, many regulators will query the hardware every time. Since it's just for diagnostic purposes it'd be better to not bother and let people read the historical information from the logs. > + /* scaling up? scale voltage before frequency */ > + if (cpu_reg && freqs.new > freqs.old) { > + if (regulator_set_voltage(cpu_reg, volt - tol, volt + tol)) { This is a totally sane and sensible use case for specifying a voltage range, we should move it into the regulator core for other users so you can just specify the voltage and the tolerance directly. It is a little sad here as it means that we loose the ability to do frequency only scaling if there's no regulator which is nice.
next prev parent reply other threads:[~2012-07-26 13:11 UTC|newest] Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-07-19 15:54 [PATCH 0/3] Add a generic cpufreq-cpu0 driver Shawn Guo 2012-07-19 15:54 ` Shawn Guo 2012-07-19 15:54 ` [PATCH 1/3] ARM: add cpufreq transiton notifier to adjust loops_per_jiffy for smp Shawn Guo 2012-07-19 15:54 ` Shawn Guo 2012-07-20 6:36 ` Shilimkar, Santosh 2012-07-20 6:36 ` Shilimkar, Santosh 2012-07-20 7:56 ` Shawn Guo 2012-07-20 7:56 ` Shawn Guo 2012-07-20 8:27 ` Shilimkar, Santosh 2012-07-20 8:27 ` Shilimkar, Santosh 2012-07-19 15:54 ` [PATCH 2/3] PM / OPP: Initialize OPP table from device tree Shawn Guo 2012-07-19 15:54 ` Shawn Guo 2012-07-20 6:00 ` Menon, Nishanth 2012-07-20 6:00 ` Menon, Nishanth 2012-07-20 8:46 ` Shawn Guo 2012-07-20 8:46 ` Shawn Guo 2012-07-20 9:04 ` Menon, Nishanth 2012-07-20 9:04 ` Menon, Nishanth 2012-07-19 15:54 ` [PATCH 3/3] cpufreq: Add a generic cpufreq-cpu0 driver Shawn Guo 2012-07-19 15:54 ` Shawn Guo 2012-07-20 6:52 ` Shilimkar, Santosh 2012-07-20 6:52 ` Shilimkar, Santosh [not found] ` <CAMQu2gw32LogXJJa+K5ZjmCZzBNK3FY2wYwZXU8fsftsVzEO2Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2012-07-20 12:33 ` Shawn Guo 2012-07-20 12:33 ` Shawn Guo 2012-07-20 15:50 ` Turquette, Mike 2012-07-20 15:50 ` Turquette, Mike 2012-07-21 5:04 ` Shilimkar, Santosh 2012-07-21 5:04 ` Shilimkar, Santosh 2012-07-21 6:38 ` Shawn Guo 2012-07-21 6:38 ` Shawn Guo 2012-07-27 2:04 ` Richard Zhao 2012-07-27 2:04 ` Richard Zhao 2012-07-30 4:57 ` Shawn Guo 2012-07-30 4:57 ` Shawn Guo 2012-07-20 12:51 ` Richard Zhao 2012-07-20 12:51 ` Richard Zhao 2012-07-20 13:15 ` Shawn Guo 2012-07-20 13:15 ` Shawn Guo [not found] ` <1342713281-31114-4-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> 2012-07-26 13:11 ` Mark Brown [this message] 2012-07-26 13:11 ` Mark Brown [not found] ` <20120726131121.GB7306-GFdadSzt00ze9xe1eoZjHA@public.gmane.org> 2012-07-27 2:13 ` Richard Zhao 2012-07-27 2:13 ` Richard Zhao 2012-07-27 10:08 ` Mark Brown 2012-07-27 10:08 ` Mark Brown 2012-07-30 6:52 ` Shawn Guo 2012-07-30 6:52 ` Shawn Guo 2012-07-30 8:20 ` Shawn Guo 2012-07-30 8:20 ` Shawn Guo 2012-07-30 18:55 ` Mark Brown 2012-07-30 18:55 ` Mark Brown 2012-07-30 18:53 ` Mark Brown 2012-07-30 18:53 ` Mark Brown 2012-07-31 4:20 ` Shawn Guo 2012-07-31 4:20 ` Shawn Guo 2012-07-31 13:40 ` Mark Brown 2012-07-31 13:40 ` Mark Brown 2012-07-27 6:33 ` Richard Zhao 2012-07-27 6:33 ` Richard Zhao 2012-07-30 8:17 ` Shawn Guo 2012-07-30 8:17 ` Shawn Guo 2012-07-30 8:50 ` Richard Zhao 2012-07-30 8:50 ` Richard Zhao 2012-07-30 9:24 ` Shawn Guo 2012-07-30 9:24 ` Shawn Guo 2012-07-19 18:39 ` [PATCH 0/3] " Rafael J. Wysocki 2012-07-19 18:39 ` Rafael J. Wysocki 2012-07-20 0:29 ` Shawn Guo 2012-07-20 0:29 ` Shawn Guo
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=20120726131121.GB7306@sirena.org.uk \ --to=broonie-yzvpicuk2aatku/dhu1wvuem+bqzidxxqq4iyu8u01e@public.gmane.org \ --cc=cpufreq-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \ --cc=khilman-l0cyMroinI0@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \ --cc=linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \ --cc=nm-l0cyMroinI0@public.gmane.org \ --cc=richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org \ --cc=rjw-KKrjLPT3xs0@public.gmane.org \ --cc=shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \ /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: linkBe 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.