[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_JsqK2oAX2jw6GjT7RUWkhL2zPB9=QUQ--S2u-1t852GG7VQ@mail.gmail.com>
Date: Fri, 1 Apr 2016 09:15:09 -0500
From: Rob Herring <robherring2@...il.com>
To: Viresh Kumar <viresh.kumar@...aro.org>
Cc: Arnd Bergmann <arnd@...db.de>,
Rob Herring <rob.herring@...aro.org>,
Krzysztof Kozłowski <k.kozlowski@...sung.com>,
Kukjin Kim <kgene.kim@...sung.com>,
Heiko Stübner <heiko@...ech.de>,
"linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
Matthew McClintock <mmcclint@...eaurora.org>,
xf@...k-chips.com, Rafael Wysocki <rjw@...ysocki.net>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linaro-kernel@...ts.linaro.org" <linaro-kernel@...ts.linaro.org>,
Mason <slash.tmp@...e.fr>
Subject: Re: [PATCH V1 Resend 2/3] cpufreq: dt: Add generic platform-device
creation support
On Fri, Apr 1, 2016 at 5:23 AM, Viresh Kumar <viresh.kumar@...aro.org> wrote:
> Cc'ing Rob and Mason.
>
> On 30-03-16, 09:53, Arnd Bergmann wrote:
>> I think it should be something in the /cpus or the /opp_table hierarchy,
>> not the root of the device tree, but other than that I don't care much
>> whether it's a variation of the oppv2 compatible string or an additional
>> property in any of the nodes.
>
> So you mean for future DT files we can have something like this:
>
> cpus {
> compatible = "operation-points-v2";
> #address-cells = <1>;
> #size-cells = <0>;
>
> cpu@0 {
> compatible = "arm,cortex-a9";
> reg = <0>;
> next-level-cache = <&L2>;
> operating-points-v2 = <&cpu0_opp_table>;
> };
> };
>
> cpu0_opp_table: opp_table0 {
> opp@...0000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <970000 975000 985000>;
> opp-microamp = <70000>;
> clock-latency-ns = <300000>;
> opp-suspend;
> };
> opp@...0000000 {
> opp-hz = /bits/ 64 <1100000000>;
> opp-microvolt = <980000 1000000 1010000>;
> opp-microamp = <80000>;
> clock-latency-ns = <310000>;
> };
> };
> };
>
>
> And the cpufreq-dt driver can match /cpus node's compatible string against
> "operating-points-v2" and create a device at runtime ?
>
> @Rob: Will that be acceptable to you? We are discussing (again) about how to
> probe cpufreq-dt driver automatically for platforms :)
No, I don't think that belongs in /cpus.
Part of the problem is this requires a DT change if you switch between
a platform-specific driver and generic driver.
I don't understand the issue having a little bit of code to parse the
DT and create the device. If you are worried about having a long list
of platforms, you could instead check the tree for operating-points-v2
property in the cpu node and create the device unless the platform is
black-listed.
Rob
Powered by blists - more mailing lists