devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain
       [not found] <20230825112633.236607-1-ulf.hansson@linaro.org>
@ 2023-08-25 11:26 ` Ulf Hansson
  2023-09-11 13:20   ` Rob Herring
  2023-09-21 11:11   ` Sudeep Holla
  2023-08-25 11:26 ` [PATCH v3 09/13] dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13 Ulf Hansson
  2023-08-25 11:26 ` [PATCH v3 10/13] dt-bindings: power: Clarify performance capabilities of power-domains Ulf Hansson
  2 siblings, 2 replies; 9+ messages in thread
From: Ulf Hansson @ 2023-08-25 11:26 UTC (permalink / raw)
  To: Sudeep Holla, Cristian Marussi, Viresh Kumar, Nishanth Menon,
	Stephen Boyd
  Cc: Nikunj Kela, Prasad Sodagudi, Alexandre Torgue, Ulf Hansson,
	linux-pm, linux-arm-kernel, linux-kernel, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, devicetree, Lorenzo Pieralisi

When an CPU's performance domain is managed through the SCMI firmware,
let's enable us describe this as a consumer of a power-domain provider,
which is the de-facto standard to use for performance domains. In this
case, let's specify a corresponding power-domain-name, to point out the
corresponding index for it.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---

Changes in v3:
	- New patch.

---
 Documentation/devicetree/bindings/arm/cpus.yaml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index 9e6a45eea4e5..d51e6250d6e3 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -305,7 +305,9 @@ properties:
       power-domains property.
 
       For PSCI based platforms, the name corresponding to the index of the PSCI
-      PM domain provider, must be "psci".
+      PM domain provider, must be "psci". For SCMI based platforms, the name
+      corresponding to the index of an SCMI performance domain provider, must be
+      "perf".
 
   qcom,saw:
     $ref: /schemas/types.yaml#/definitions/phandle
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v3 09/13] dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13
       [not found] <20230825112633.236607-1-ulf.hansson@linaro.org>
  2023-08-25 11:26 ` [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain Ulf Hansson
@ 2023-08-25 11:26 ` Ulf Hansson
  2023-09-11 13:20   ` Rob Herring
  2023-08-25 11:26 ` [PATCH v3 10/13] dt-bindings: power: Clarify performance capabilities of power-domains Ulf Hansson
  2 siblings, 1 reply; 9+ messages in thread
From: Ulf Hansson @ 2023-08-25 11:26 UTC (permalink / raw)
  To: Sudeep Holla, Cristian Marussi, Viresh Kumar, Nishanth Menon,
	Stephen Boyd
  Cc: Nikunj Kela, Prasad Sodagudi, Alexandre Torgue, Ulf Hansson,
	linux-pm, linux-arm-kernel, linux-kernel, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, devicetree

The protocol@13 node is describing the performance scaling option for the
ARM SCMI interface, as a clock provider. This is unnecessary limiting, as
performance scaling is in many cases not limited to switching a clock's
frequency.

Therefore, let's extend the binding so the interface can be modelled as a
generic performance domain too. The common way to describe this, is to use
the power-domain DT bindings, so let's use that.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---

Changes in v3:
	- None.

---
 .../devicetree/bindings/firmware/arm,scmi.yaml        | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
index b138f3d23df8..563a87dfb31a 100644
--- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
+++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
@@ -149,8 +149,15 @@ properties:
       '#clock-cells':
         const: 1
 
-    required:
-      - '#clock-cells'
+      '#power-domain-cells':
+        const: 1
+
+    oneOf:
+      - required:
+          - '#clock-cells'
+
+      - required:
+          - '#power-domain-cells'
 
   protocol@14:
     $ref: '#/$defs/protocol-node'
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v3 10/13] dt-bindings: power: Clarify performance capabilities of power-domains
       [not found] <20230825112633.236607-1-ulf.hansson@linaro.org>
  2023-08-25 11:26 ` [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain Ulf Hansson
  2023-08-25 11:26 ` [PATCH v3 09/13] dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13 Ulf Hansson
@ 2023-08-25 11:26 ` Ulf Hansson
  2023-09-11 14:40   ` Rob Herring
  2 siblings, 1 reply; 9+ messages in thread
From: Ulf Hansson @ 2023-08-25 11:26 UTC (permalink / raw)
  To: Sudeep Holla, Cristian Marussi, Viresh Kumar, Nishanth Menon,
	Stephen Boyd
  Cc: Nikunj Kela, Prasad Sodagudi, Alexandre Torgue, Ulf Hansson,
	linux-pm, linux-arm-kernel, linux-kernel, Rafael J . Wysocki,
	Kevin Hilman, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	devicetree

The power-domains bindings has in many years been used to describe so
called performance-domains too. Rather than using a separate binding it has
been convenient to re-use the power-domain bindings, as in some cases it's
in fact a combination of the both that would be the best description.

Therefore, let's make it more clear that the power-domains bindings can be
used to describe a performance-domain too.

Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Kevin Hilman <khilman@kernel.org>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---

Changes in v3:
	- New patch.

---
 .../devicetree/bindings/power/power-domain.yaml | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/Documentation/devicetree/bindings/power/power-domain.yaml b/Documentation/devicetree/bindings/power/power-domain.yaml
index d1235e562041..8fdb529d560b 100644
--- a/Documentation/devicetree/bindings/power/power-domain.yaml
+++ b/Documentation/devicetree/bindings/power/power-domain.yaml
@@ -13,8 +13,9 @@ maintainers:
 
 description: |+
   System on chip designs are often divided into multiple PM domains that can be
-  used for power gating of selected IP blocks for power saving by reduced leakage
-  current.
+  used for power gating of selected IP blocks for power saving by reduced
+  leakage current. Moreover, in some cases the similar PM domains may also be
+  capable of scaling performance for a group of IP blocks.
 
   This device tree binding can be used to bind PM domain consumer devices with
   their PM domains provided by PM domain providers. A PM domain provider can be
@@ -25,7 +26,7 @@ description: |+
 
 properties:
   $nodename:
-    pattern: "^(power-controller|power-domain)([@-].*)?$"
+    pattern: "^(power-controller|power-domain|performance-domain)([@-].*)?$"
 
   domain-idle-states:
     $ref: /schemas/types.yaml#/definitions/phandle-array
@@ -44,11 +45,11 @@ properties:
 
   operating-points-v2:
     description:
-      Phandles to the OPP tables of power domains provided by a power domain
-      provider. If the provider provides a single power domain only or all
-      the power domains provided by the provider have identical OPP tables,
-      then this shall contain a single phandle. Refer to ../opp/opp-v2-base.yaml
-      for more information.
+      Phandles to the OPP tables of power domains that are capable of scaling
+      performance, provided by a power domain provider. If the provider provides
+      a single power domain only or all the power domains provided by the
+      provider have identical OPP tables, then this shall contain a single
+      phandle. Refer to ../opp/opp-v2-base.yaml for more information.
 
   "#power-domain-cells":
     description:
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain
  2023-08-25 11:26 ` [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain Ulf Hansson
@ 2023-09-11 13:20   ` Rob Herring
  2023-09-21 11:11   ` Sudeep Holla
  1 sibling, 0 replies; 9+ messages in thread
From: Rob Herring @ 2023-09-11 13:20 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Sudeep Holla, Viresh Kumar, Cristian Marussi, Lorenzo Pieralisi,
	devicetree, Alexandre Torgue, Stephen Boyd, Conor Dooley,
	Prasad Sodagudi, linux-kernel, Rob Herring, Nikunj Kela,
	Nishanth Menon, Krzysztof Kozlowski, linux-pm, linux-arm-kernel


On Fri, 25 Aug 2023 13:26:28 +0200, Ulf Hansson wrote:
> When an CPU's performance domain is managed through the SCMI firmware,
> let's enable us describe this as a consumer of a power-domain provider,
> which is the de-facto standard to use for performance domains. In this
> case, let's specify a corresponding power-domain-name, to point out the
> corresponding index for it.
> 
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: devicetree@vger.kernel.org
> Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> 
> Changes in v3:
> 	- New patch.
> 
> ---
>  Documentation/devicetree/bindings/arm/cpus.yaml | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 09/13] dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13
  2023-08-25 11:26 ` [PATCH v3 09/13] dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13 Ulf Hansson
@ 2023-09-11 13:20   ` Rob Herring
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2023-09-11 13:20 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Stephen Boyd, Prasad Sodagudi, Nikunj Kela, linux-pm,
	linux-arm-kernel, devicetree, Alexandre Torgue,
	Krzysztof Kozlowski, Viresh Kumar, Cristian Marussi, Conor Dooley,
	Rob Herring, Sudeep Holla, linux-kernel, Nishanth Menon


On Fri, 25 Aug 2023 13:26:29 +0200, Ulf Hansson wrote:
> The protocol@13 node is describing the performance scaling option for the
> ARM SCMI interface, as a clock provider. This is unnecessary limiting, as
> performance scaling is in many cases not limited to switching a clock's
> frequency.
> 
> Therefore, let's extend the binding so the interface can be modelled as a
> generic performance domain too. The common way to describe this, is to use
> the power-domain DT bindings, so let's use that.
> 
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> 
> Changes in v3:
> 	- None.
> 
> ---
>  .../devicetree/bindings/firmware/arm,scmi.yaml        | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 10/13] dt-bindings: power: Clarify performance capabilities of power-domains
  2023-08-25 11:26 ` [PATCH v3 10/13] dt-bindings: power: Clarify performance capabilities of power-domains Ulf Hansson
@ 2023-09-11 14:40   ` Rob Herring
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2023-09-11 14:40 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Sudeep Holla, Kevin Hilman, devicetree, Nishanth Menon,
	Rob Herring, Stephen Boyd, Viresh Kumar, linux-pm, Conor Dooley,
	Alexandre Torgue, linux-kernel, linux-arm-kernel,
	Cristian Marussi, Nikunj Kela, Prasad Sodagudi,
	Rafael J . Wysocki, Krzysztof Kozlowski


On Fri, 25 Aug 2023 13:26:30 +0200, Ulf Hansson wrote:
> The power-domains bindings has in many years been used to describe so
> called performance-domains too. Rather than using a separate binding it has
> been convenient to re-use the power-domain bindings, as in some cases it's
> in fact a combination of the both that would be the best description.
> 
> Therefore, let's make it more clear that the power-domains bindings can be
> used to describe a performance-domain too.
> 
> Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
> Cc: Kevin Hilman <khilman@kernel.org>
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> 
> Changes in v3:
> 	- New patch.
> 
> ---
>  .../devicetree/bindings/power/power-domain.yaml | 17 +++++++++--------
>  1 file changed, 9 insertions(+), 8 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain
  2023-08-25 11:26 ` [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain Ulf Hansson
  2023-09-11 13:20   ` Rob Herring
@ 2023-09-21 11:11   ` Sudeep Holla
  2023-09-21 13:22     ` Ulf Hansson
  1 sibling, 1 reply; 9+ messages in thread
From: Sudeep Holla @ 2023-09-21 11:11 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Cristian Marussi, Sudeep Holla, Viresh Kumar, Nishanth Menon,
	Stephen Boyd, Nikunj Kela, Prasad Sodagudi, Alexandre Torgue,
	linux-pm, linux-arm-kernel, linux-kernel, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, devicetree, Lorenzo Pieralisi

On Fri, Aug 25, 2023 at 01:26:28PM +0200, Ulf Hansson wrote:
> When an CPU's performance domain is managed through the SCMI firmware,
> let's enable us describe this as a consumer of a power-domain provider,
> which is the de-facto standard to use for performance domains. In this
> case, let's specify a corresponding power-domain-name, to point out the
> corresponding index for it.
> 
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: devicetree@vger.kernel.org
> Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> 
> Changes in v3:
> 	- New patch.

This patch and 10/13 are quite generic. I am happy to take it as part of
this series but just thought of checking again if that is what you prefer ?

-- 
Regards,
Sudeep

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain
  2023-09-21 11:11   ` Sudeep Holla
@ 2023-09-21 13:22     ` Ulf Hansson
  2023-09-21 13:35       ` Sudeep Holla
  0 siblings, 1 reply; 9+ messages in thread
From: Ulf Hansson @ 2023-09-21 13:22 UTC (permalink / raw)
  To: Sudeep Holla
  Cc: Cristian Marussi, Viresh Kumar, Nishanth Menon, Stephen Boyd,
	Nikunj Kela, Prasad Sodagudi, Alexandre Torgue, linux-pm,
	linux-arm-kernel, linux-kernel, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, Lorenzo Pieralisi

On Thu, 21 Sept 2023 at 13:11, Sudeep Holla <sudeep.holla@arm.com> wrote:
>
> On Fri, Aug 25, 2023 at 01:26:28PM +0200, Ulf Hansson wrote:
> > When an CPU's performance domain is managed through the SCMI firmware,
> > let's enable us describe this as a consumer of a power-domain provider,
> > which is the de-facto standard to use for performance domains. In this
> > case, let's specify a corresponding power-domain-name, to point out the
> > corresponding index for it.
> >
> > Cc: Rob Herring <robh+dt@kernel.org>
> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> > Cc: Conor Dooley <conor+dt@kernel.org>
> > Cc: devicetree@vger.kernel.org
> > Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > ---
> >
> > Changes in v3:
> >       - New patch.
>
> This patch and 10/13 are quite generic. I am happy to take it as part of
> this series but just thought of checking again if that is what you prefer ?

Yes please, go ahead and pick this up through your scmi tree.

Kind regards
Uffe

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain
  2023-09-21 13:22     ` Ulf Hansson
@ 2023-09-21 13:35       ` Sudeep Holla
  0 siblings, 0 replies; 9+ messages in thread
From: Sudeep Holla @ 2023-09-21 13:35 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Cristian Marussi, Viresh Kumar, Nishanth Menon, Stephen Boyd,
	Nikunj Kela, Prasad Sodagudi, Alexandre Torgue, linux-pm,
	linux-arm-kernel, linux-kernel, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, Lorenzo Pieralisi

On Thu, Sep 21, 2023 at 03:22:54PM +0200, Ulf Hansson wrote:
> On Thu, 21 Sept 2023 at 13:11, Sudeep Holla <sudeep.holla@arm.com> wrote:
> >
> > On Fri, Aug 25, 2023 at 01:26:28PM +0200, Ulf Hansson wrote:
> > > When an CPU's performance domain is managed through the SCMI firmware,
> > > let's enable us describe this as a consumer of a power-domain provider,
> > > which is the de-facto standard to use for performance domains. In this
> > > case, let's specify a corresponding power-domain-name, to point out the
> > > corresponding index for it.
> > >
> > > Cc: Rob Herring <robh+dt@kernel.org>
> > > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> > > Cc: Conor Dooley <conor+dt@kernel.org>
> > > Cc: devicetree@vger.kernel.org
> > > Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > ---
> > >
> > > Changes in v3:
> > >       - New patch.
> >
> > This patch and 10/13 are quite generic. I am happy to take it as part of
> > this series but just thought of checking again if that is what you prefer ?
> 
> Yes please, go ahead and pick this up through your scmi tree.
> 

Thanks, I just need Viresh's ack for cpufreq changes, we are otherwise all
set with the series. I will pull once I have his ack.

-- 
Regards,
Sudeep

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-09-21 17:49 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20230825112633.236607-1-ulf.hansson@linaro.org>
2023-08-25 11:26 ` [PATCH v3 08/13] dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain Ulf Hansson
2023-09-11 13:20   ` Rob Herring
2023-09-21 11:11   ` Sudeep Holla
2023-09-21 13:22     ` Ulf Hansson
2023-09-21 13:35       ` Sudeep Holla
2023-08-25 11:26 ` [PATCH v3 09/13] dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13 Ulf Hansson
2023-09-11 13:20   ` Rob Herring
2023-08-25 11:26 ` [PATCH v3 10/13] dt-bindings: power: Clarify performance capabilities of power-domains Ulf Hansson
2023-09-11 14:40   ` Rob Herring

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).