All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: linux-arm-kernel@lists.infradead.org
Cc: "Rob Herring" <robherring2@gmail.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"Lukasz Majewski" <l.majewski@samsung.com>,
	"Kukjin Kim" <kgene.kim@samsung.com>,
	"Thomas Abraham" <ta.omasab@gmail.com>,
	"Heiko Stübner" <heiko@sntech.de>,
	"Rob Herring" <rob.herring@linaro.org>,
	"Viresh Kumar" <viresh.kumar@linaro.org>,
	"Tomasz Figa" <t.figa@samsung.com>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	"cpufreq@vger.kernel.org" <cpufreq@vger.kernel.org>,
	linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
	"Thomas P Abraham" <thomas.ab@samsung.com>,
	"Grant Likely" <grant.likely@linaro.org>,
	"Mike Turquette" <mturquette@linaro.org>,
	"Shawn Guo" <shawn.guo@linaro.org>
Subject: Re: [PATCH v4 7/8] ARM: Exynos: switch to using generic cpufreq-cpu0 driver
Date: Wed, 14 May 2014 16:33:46 +0200	[thread overview]
Message-ID: <11343238.VgTHVsC3iv@wuerfel> (raw)
In-Reply-To: <CAL_JsqL0Yi=SjAm0BtS_2SO2xg8kOaLsydo9m6qcZgb+Pcpa8Q@mail.gmail.com>

On Wednesday 14 May 2014 08:45:23 Rob Herring wrote:
> On Wed, May 14, 2014 at 8:18 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Wednesday 14 May 2014 18:44:46 Viresh Kumar wrote:
> >> On 14 May 2014 18:41, Heiko Stübner <heiko@sntech.de> wrote:
> >> > Am Mittwoch, 14. Mai 2014, 18:35:29 schrieb Viresh Kumar:
> >> >> On 14 May 2014 18:20, Arnd Bergmann <arnd@arndb.de> wrote:
> >> >> > Could we please come up with a way to probe this from DT in the
> >> >> > cpufreq-cpu0 driver itself, so we don't have to add a device in every
> >> >> > platform using it?
> >>
> >> >> Its followed that way because DT Maintainers had strong objections
> >> >> to creating virtual device nodes and haven't allowed creation of nodes
> >> >> for cpufreq drivers.. For which there is no physical device, as CPU already
> >> >> has a separate node..
> >> >
> >> > as we already have the "enable-method" property for enabling/disabling cpus,
> >> > would something like a "scaling-method" be feasible?
> >
> > Good idea to put it as a property into the CPU node.
> 
> We already have properties which indicate this driver can be used by a
> platform: opp table and a clock for the cpu. If this information is
> not sufficient to determine whether you can use this driver or not,
> then you simply need to match against the platform. Perhaps the match
> list should be a blacklist rather than a whitelist, so new platforms
> work without a kernel change.

We'd not only need a blacklist, but also a way to tell whether we
want to use the cpu0 or the big/little implementation, which currently
have indistinguishable bindings.

> Alternatively, create a new OPP binding that addresses this and all
> the other limitations in the current OPP binding.

Yes.

> >> Lets see what DT maintainers have to say on this, I would rather go for a
> >> more straight forward name: "scaling-driver"  ..
> >
> > Both sound fine to me.
> 
> The fact that linux needs a way to create a platform device to enable
> a certain driver is not a DT problem. I proposed a solution for how to
> get this out of the platform code [1], but evidently we want people to
> open code the exceptions and adding boilerplate helpers will just
> encourage the exceptions.

I think the only benefit we have from using platform devices at all
for cpufreq (not for cpuidle, which has a similar problem) is module
autoloading. I think your patch doesn't actually help with that.

	Arnd

WARNING: multiple messages have this Message-ID (diff)
From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 7/8] ARM: Exynos: switch to using generic cpufreq-cpu0 driver
Date: Wed, 14 May 2014 16:33:46 +0200	[thread overview]
Message-ID: <11343238.VgTHVsC3iv@wuerfel> (raw)
In-Reply-To: <CAL_JsqL0Yi=SjAm0BtS_2SO2xg8kOaLsydo9m6qcZgb+Pcpa8Q@mail.gmail.com>

On Wednesday 14 May 2014 08:45:23 Rob Herring wrote:
> On Wed, May 14, 2014 at 8:18 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Wednesday 14 May 2014 18:44:46 Viresh Kumar wrote:
> >> On 14 May 2014 18:41, Heiko St?bner <heiko@sntech.de> wrote:
> >> > Am Mittwoch, 14. Mai 2014, 18:35:29 schrieb Viresh Kumar:
> >> >> On 14 May 2014 18:20, Arnd Bergmann <arnd@arndb.de> wrote:
> >> >> > Could we please come up with a way to probe this from DT in the
> >> >> > cpufreq-cpu0 driver itself, so we don't have to add a device in every
> >> >> > platform using it?
> >>
> >> >> Its followed that way because DT Maintainers had strong objections
> >> >> to creating virtual device nodes and haven't allowed creation of nodes
> >> >> for cpufreq drivers.. For which there is no physical device, as CPU already
> >> >> has a separate node..
> >> >
> >> > as we already have the "enable-method" property for enabling/disabling cpus,
> >> > would something like a "scaling-method" be feasible?
> >
> > Good idea to put it as a property into the CPU node.
> 
> We already have properties which indicate this driver can be used by a
> platform: opp table and a clock for the cpu. If this information is
> not sufficient to determine whether you can use this driver or not,
> then you simply need to match against the platform. Perhaps the match
> list should be a blacklist rather than a whitelist, so new platforms
> work without a kernel change.

We'd not only need a blacklist, but also a way to tell whether we
want to use the cpu0 or the big/little implementation, which currently
have indistinguishable bindings.

> Alternatively, create a new OPP binding that addresses this and all
> the other limitations in the current OPP binding.

Yes.

> >> Lets see what DT maintainers have to say on this, I would rather go for a
> >> more straight forward name: "scaling-driver"  ..
> >
> > Both sound fine to me.
> 
> The fact that linux needs a way to create a platform device to enable
> a certain driver is not a DT problem. I proposed a solution for how to
> get this out of the platform code [1], but evidently we want people to
> open code the exceptions and adding boilerplate helpers will just
> encourage the exceptions.

I think the only benefit we have from using platform devices at all
for cpufreq (not for cpuidle, which has a similar problem) is module
autoloading. I think your patch doesn't actually help with that.

	Arnd

  reply	other threads:[~2014-05-14 14:33 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-14  1:11 [PATCH v4 0/8] cpufreq: use cpufreq-cpu0 driver for exynos based platforms Thomas Abraham
2014-05-14  1:11 ` Thomas Abraham
2014-05-14  1:11 ` Thomas Abraham
2014-05-14  1:11 ` [PATCH v4 1/8] cpufreq: cpufreq-cpu0: allow use of optional boost mode frequencies Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-14  3:46   ` Viresh Kumar
2014-05-14  3:46     ` Viresh Kumar
2014-05-14  6:17     ` Lukasz Majewski
2014-05-14  6:17       ` Lukasz Majewski
2014-05-14  6:20       ` Viresh Kumar
2014-05-14  6:20         ` Viresh Kumar
2014-05-14 13:43         ` Thomas Abraham
2014-05-14 13:43           ` Thomas Abraham
2014-05-14 13:50           ` Viresh Kumar
2014-05-14 13:50             ` Viresh Kumar
2014-05-14 14:18             ` Thomas Abraham
2014-05-14 14:18               ` Thomas Abraham
2014-05-14 14:20               ` Viresh Kumar
2014-05-14 14:20                 ` Viresh Kumar
2014-05-14  1:11 ` [PATCH v4 2/8] clk: samsung: change scope of samsung clock lock to global Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-14  3:50   ` Viresh Kumar
2014-05-14  3:50     ` Viresh Kumar
2014-05-14 13:26     ` Thomas Abraham
2014-05-14 13:26       ` Thomas Abraham
2014-05-16 12:30   ` Tomasz Figa
2014-05-16 12:30     ` Tomasz Figa
2014-05-14  1:11 ` [PATCH v4 3/8] clk: samsung: add infrastructure to register cpu clocks Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-15 18:18   ` Doug Anderson
2014-05-15 18:18     ` Doug Anderson
2014-05-15 19:17     ` Heiko Stübner
2014-05-15 19:17       ` Heiko Stübner
2014-05-15 19:36       ` Doug Anderson
2014-05-15 19:36         ` Doug Anderson
2014-05-15 19:36         ` Doug Anderson
2014-05-15 20:12         ` Heiko Stübner
2014-05-15 20:12           ` Heiko Stübner
2014-05-15 20:26           ` Doug Anderson
2014-05-15 20:26             ` Doug Anderson
2014-05-16  4:55             ` Thomas Abraham
2014-05-16  4:55               ` Thomas Abraham
2014-05-16 17:17   ` Tomasz Figa
2014-05-16 17:17     ` Tomasz Figa
2014-05-23 14:41     ` Thomas Abraham
2014-05-23 14:41       ` Thomas Abraham
2014-05-23 14:50       ` Tomasz Figa
2014-05-23 14:50         ` Tomasz Figa
2014-05-14  1:11 ` [PATCH v4 4/8] Documentation: devicetree: add cpu clock configuration data binding for Exynos4/5 Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-16 23:24   ` Tomasz Figa
2014-05-16 23:24     ` Tomasz Figa
2014-05-17  0:00     ` Tomasz Figa
2014-05-17  0:00       ` Tomasz Figa
2014-05-26  6:05     ` Thomas Abraham
2014-05-26  6:05       ` Thomas Abraham
2014-05-26 11:02       ` Tomasz Figa
2014-05-26 11:02         ` Tomasz Figa
2014-05-14  1:11 ` [PATCH v4 5/8] clk: exynos: use cpu-clock provider type to represent arm clock Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-14 21:37   ` Mike Turquette
2014-05-14 21:37     ` Mike Turquette
2014-05-15  7:48     ` Thomas Abraham
2014-05-15  7:48       ` Thomas Abraham
2014-05-15  8:10       ` Lukasz Majewski
2014-05-15  8:10         ` Lukasz Majewski
2014-05-15  9:59         ` Thomas Abraham
2014-05-15  9:59           ` Thomas Abraham
2014-05-16  5:14     ` Thomas Abraham
2014-05-16  5:14       ` Thomas Abraham
2014-05-16 23:57   ` Tomasz Figa
2014-05-16 23:57     ` Tomasz Figa
2014-05-14  1:11 ` [PATCH v4 6/8] ARM: dts: Exynos: add cpu nodes, opp and cpu clock configuration data Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-16 23:16   ` Tomasz Figa
2014-05-16 23:16     ` Tomasz Figa
2014-05-14  1:11 ` [PATCH v4 7/8] ARM: Exynos: switch to using generic cpufreq-cpu0 driver Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-14 12:50   ` Arnd Bergmann
2014-05-14 12:50     ` Arnd Bergmann
2014-05-14 13:05     ` Viresh Kumar
2014-05-14 13:05       ` Viresh Kumar
2014-05-14 13:11       ` Heiko Stübner
2014-05-14 13:11         ` Heiko Stübner
2014-05-14 13:14         ` Viresh Kumar
2014-05-14 13:14           ` Viresh Kumar
2014-05-14 13:14           ` Viresh Kumar
2014-05-14 13:18           ` Arnd Bergmann
2014-05-14 13:18             ` Arnd Bergmann
2014-05-14 13:45             ` Rob Herring
2014-05-14 13:45               ` Rob Herring
2014-05-14 13:45               ` Rob Herring
2014-05-14 14:33               ` Arnd Bergmann [this message]
2014-05-14 14:33                 ` Arnd Bergmann
2014-07-08  5:15                 ` Viresh Kumar
2014-07-08  5:15                   ` Viresh Kumar
2014-05-14 14:03         ` Thomas Abraham
2014-05-14 14:03           ` Thomas Abraham
2014-05-14 14:03           ` Thomas Abraham
2014-05-14 14:09           ` Sudeep Holla
2014-05-14 14:09             ` Sudeep Holla
2014-05-14 14:09             ` Sudeep Holla
2014-05-14 14:09     ` Thomas Abraham
2014-05-14 14:09       ` Thomas Abraham
2014-05-17  0:04   ` Tomasz Figa
2014-05-17  0:04     ` Tomasz Figa
2014-05-14  1:11 ` [PATCH v4 8/8] cpufreq: exynos: remove all exynos specific cpufreq driver support Thomas Abraham
2014-05-14  1:11   ` Thomas Abraham
2014-05-14  3:57   ` Viresh Kumar
2014-05-14  3:57     ` Viresh Kumar
2014-05-14  7:20   ` Lukasz Majewski
2014-05-14  7:20     ` Lukasz Majewski
2014-05-14 13:53     ` Thomas Abraham
2014-05-14 13:53       ` Thomas Abraham
2014-05-14 12:51 ` [PATCH v4 0/8] cpufreq: use cpufreq-cpu0 driver for exynos based platforms Arnd Bergmann
2014-05-14 12:51   ` Arnd Bergmann
2014-05-14 13:07   ` Viresh Kumar
2014-05-14 13:07     ` Viresh Kumar
2014-05-14 13:16     ` Arnd Bergmann
2014-05-14 13:16       ` Arnd Bergmann
2014-05-17  0:14 ` Tomasz Figa
2014-05-17  0:14   ` Tomasz Figa
2014-05-17  0:14   ` Tomasz Figa

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=11343238.VgTHVsC3iv@wuerfel \
    --to=arnd@arndb.de \
    --cc=cpufreq@vger.kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=grant.likely@linaro.org \
    --cc=heiko@sntech.de \
    --cc=kgene.kim@samsung.com \
    --cc=l.majewski@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=mturquette@linaro.org \
    --cc=rjw@rjwysocki.net \
    --cc=rob.herring@linaro.org \
    --cc=robherring2@gmail.com \
    --cc=shawn.guo@linaro.org \
    --cc=t.figa@samsung.com \
    --cc=ta.omasab@gmail.com \
    --cc=thomas.ab@samsung.com \
    --cc=viresh.kumar@linaro.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: 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.