Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757047AbcLBChL (ORCPT ); Thu, 1 Dec 2016 21:37:11 -0500 Received: from mail.kernel.org ([198.145.29.136]:55612 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750831AbcLBChK (ORCPT ); Thu, 1 Dec 2016 21:37:10 -0500 Date: Fri, 2 Dec 2016 10:36:29 +0800 From: Shawn Guo To: Baoyou Xie Cc: robh+dt@kernel.org, mark.rutland@arm.com, catalin.marinas@arm.com, will.deacon@arm.com, jun.nie@linaro.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, xie.baoyou@zte.com.cn, chen.chaokai@zte.com.cn, wang.qiang01@zte.com.cn, Viresh Kumar Subject: Re: arm64: dts: zx: support cpu-freq for zx296718 Message-ID: <20161202023627.GA6657@dragon> References: <1480594135-27273-1-git-send-email-baoyou.xie@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1480594135-27273-1-git-send-email-baoyou.xie@linaro.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3330 Lines: 118 + Viresh, the author of the bindings. On Thu, Dec 01, 2016 at 08:08:55PM +0800, Baoyou Xie wrote: > This patch adds the CPU clock phandle in CPU's node > and uses operating-points-v2 to register operating points. > > So it can be used by cpufreq-dt driver. > > Signed-off-by: Baoyou Xie Just out of curiosity, why is there no '[PATCH]' prefix in the subject? > --- > arch/arm64/boot/dts/zte/zx296718.dtsi | 37 +++++++++++++++++++++++++++++++++++ > 1 file changed, 37 insertions(+) > > diff --git a/arch/arm64/boot/dts/zte/zx296718.dtsi b/arch/arm64/boot/dts/zte/zx296718.dtsi > index 7a1aed7..16f7d5e 100644 > --- a/arch/arm64/boot/dts/zte/zx296718.dtsi > +++ b/arch/arm64/boot/dts/zte/zx296718.dtsi > @@ -44,6 +44,7 @@ > #include > #include > #include > +#include > > / { > compatible = "zte,zx296718"; > @@ -81,6 +82,8 @@ > compatible = "arm,cortex-a53","arm,armv8"; > reg = <0x0 0x0>; > enable-method = "psci"; > + clocks = <&topcrm A53_GATE>; > + operating-points-v2 = <&cluster0_opp>; > }; > > cpu1: cpu@1 { > @@ -88,6 +91,7 @@ > compatible = "arm,cortex-a53","arm,armv8"; > reg = <0x0 0x1>; > enable-method = "psci"; > + operating-points-v2 = <&cluster0_opp>; > }; > > cpu2: cpu@2 { > @@ -95,6 +99,7 @@ > compatible = "arm,cortex-a53","arm,armv8"; > reg = <0x0 0x2>; > enable-method = "psci"; > + operating-points-v2 = <&cluster0_opp>; > }; > > cpu3: cpu@3 { > @@ -102,6 +107,38 @@ > compatible = "arm,cortex-a53","arm,armv8"; > reg = <0x0 0x3>; > enable-method = "psci"; > + operating-points-v2 = <&cluster0_opp>; > + }; > + }; > + > + cluster0_opp: opp_table0 { I know this is how examples in the bindings doc written, but it's recommended to use hyphen rather than underscore in node name. That said, the following naming form is better. cluster0_opp: opp-table0 > + compatible = "operating-points-v2"; > + opp-shared; > + > + opp@500000000 { > + opp-hz = /bits/ 64 <500000000>; > + opp-microvolt = <857000>; > + clock-latency-ns = <500000>; > + }; We prefer to have a newline between nodes. > + opp@648000000 { > + opp-hz = /bits/ 64 <648000000>; > + opp-microvolt = <857000>; > + clock-latency-ns = <500000>; > + }; > + opp@800000000 { > + opp-hz = /bits/ 64 <800000000>; > + opp-microvolt = <882000>; > + clock-latency-ns = <500000>; > + }; > + opp@1000000000 { > + opp-hz = /bits/ 64 <1000000000>; > + opp-microvolt = <892000>; > + clock-latency-ns = <500000>; > + }; > + opp@1188000000 { > + opp-hz = /bits/ 64 <1188000000>; > + opp-microvolt = <1009000>; So we have 5 setpoints with different frequency-voltage pair. I have seen 'clocks' specified in cpu0 node and understand how frequency scaling works. But what about voltage scaling? There is no 'cpu-supply' defined, and how does voltage scale among these opp-microvolt settings? Another related question: if we do not support voltage scaling for now, what's the actually voltage when system is up running? Is that voltage safe for cpu to run at all those 5 frequencies? Shawn > + clock-latency-ns = <500000>; > }; > }; > > -- > 2.7.4 >