* [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states
@ 2020-03-03 15:07 Ulf Hansson
2020-03-03 15:07 ` [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions Ulf Hansson
` (6 more replies)
0 siblings, 7 replies; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
The recently updated bindings to support hierarchical PSCI states, had a poor
quality from the json-schema point of view. This series fixup the related
bindings and silence various errors/warnings from "make dt_binding_check".
The two last patches updates some DTS files from a QCOM SoC, which is the first
one that uses these new bindings. Perhaps those should be queued via arm-soc
instead, but in any case there are included for reference.
Kind regards
Ulf Hansson
Ulf Hansson (7):
dt-bindings: arm: Correct links to idle states definitions
dt-bindings: arm: Fix cpu compatibles in the hierarchical example for
PSCI
dt-bindings: power: Convert domain-idle-states bindings to json-schema
dt-bindings: power: Extend nodename pattern for power-domain providers
dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
arm64: dts: msm8916: Conform to the domain-idle-state DT binding
arm64: dts: msm8916: Conform to the nodename pattern for power-domain
.../devicetree/bindings/arm/cpus.yaml | 2 +-
.../bindings/arm/msm/qcom,idle-state.txt | 2 +-
.../devicetree/bindings/arm/psci.yaml | 41 ++++++------
.../bindings/power/domain-idle-state.txt | 33 ---------
.../bindings/power/domain-idle-state.yaml | 67 +++++++++++++++++++
.../bindings/power/power-domain.yaml | 30 ++++-----
.../bindings/power/power_domain.txt | 2 +-
arch/arm64/boot/dts/qcom/msm8916.dtsi | 13 ++--
8 files changed, 111 insertions(+), 79 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.txt
create mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.yaml
--
2.20.1
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
2020-03-04 14:47 ` Rob Herring
2020-03-03 15:07 ` [PATCH 2/7] dt-bindings: arm: Fix cpu compatibles in the hierarchical example for PSCI Ulf Hansson
` (5 subsequent siblings)
6 siblings, 1 reply; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
The arm,idle-state DT bindings recently got converted to the json-schema,
but some links are still pointing to the old, non-existing, txt file. Let's
update the links to fix this.
Fixes: baac82fe06db ("dt-bindings: arm: Convert arm,idle-state binding to DT schema")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
Documentation/devicetree/bindings/arm/cpus.yaml | 2 +-
Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt | 2 +-
Documentation/devicetree/bindings/arm/psci.yaml | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index f61a5a13fb42..31b391a24b70 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -226,7 +226,7 @@ properties:
$ref: '/schemas/types.yaml#/definitions/phandle-array'
description: |
List of phandles to idle state nodes supported
- by this cpu (see ./idle-states.txt).
+ by this cpu (see ./idle-states.yaml).
capacity-dmips-mhz:
$ref: '/schemas/types.yaml#/definitions/uint32'
diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt b/Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt
index 06df04cc827a..6ce0b212ec6d 100644
--- a/Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt
+++ b/Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt
@@ -81,4 +81,4 @@ Example:
};
};
-[1]. Documentation/devicetree/bindings/arm/idle-states.txt
+[1]. Documentation/devicetree/bindings/arm/idle-states.yaml
diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
index 8ef85420b2ab..f8218e60e3e2 100644
--- a/Documentation/devicetree/bindings/arm/psci.yaml
+++ b/Documentation/devicetree/bindings/arm/psci.yaml
@@ -100,7 +100,7 @@ properties:
bindings in [1]) must specify this property.
[1] Kernel documentation - ARM idle states bindings
- Documentation/devicetree/bindings/arm/idle-states.txt
+ Documentation/devicetree/bindings/arm/idle-states.yaml
"#power-domain-cells":
description:
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 2/7] dt-bindings: arm: Fix cpu compatibles in the hierarchical example for PSCI
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
2020-03-03 15:07 ` [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
2020-03-04 14:47 ` Rob Herring
2020-03-03 15:07 ` [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema Ulf Hansson
` (4 subsequent siblings)
6 siblings, 1 reply; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
Documentation/devicetree/bindings/arm/psci.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
index f8218e60e3e2..540211a080d4 100644
--- a/Documentation/devicetree/bindings/arm/psci.yaml
+++ b/Documentation/devicetree/bindings/arm/psci.yaml
@@ -199,7 +199,7 @@ examples:
CPU0: cpu@0 {
device_type = "cpu";
- compatible = "arm,cortex-a53", "arm,armv8";
+ compatible = "arm,cortex-a53";
reg = <0x0>;
enable-method = "psci";
power-domains = <&CPU_PD0>;
@@ -208,7 +208,7 @@ examples:
CPU1: cpu@1 {
device_type = "cpu";
- compatible = "arm,cortex-a57", "arm,armv8";
+ compatible = "arm,cortex-a53";
reg = <0x100>;
enable-method = "psci";
power-domains = <&CPU_PD1>;
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
2020-03-03 15:07 ` [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions Ulf Hansson
2020-03-03 15:07 ` [PATCH 2/7] dt-bindings: arm: Fix cpu compatibles in the hierarchical example for PSCI Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
2020-03-03 17:02 ` Rob Herring
2020-03-04 14:48 ` Rob Herring
2020-03-03 15:07 ` [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers Ulf Hansson
` (3 subsequent siblings)
6 siblings, 2 replies; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
While converting to the json-schema, let's also take the opportunity to
further specify/clarify some more details about the DT binding.
For example, let's define the label where to put the states nodes, set a
pattern for nodename of the state nodes and finally add an example.
Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
.../devicetree/bindings/arm/psci.yaml | 2 +-
.../bindings/power/domain-idle-state.txt | 33 ---------
.../bindings/power/domain-idle-state.yaml | 67 +++++++++++++++++++
.../bindings/power/power-domain.yaml | 22 +++---
.../bindings/power/power_domain.txt | 2 +-
5 files changed, 79 insertions(+), 47 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.txt
create mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.yaml
diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
index 540211a080d4..0bc3c43a525a 100644
--- a/Documentation/devicetree/bindings/arm/psci.yaml
+++ b/Documentation/devicetree/bindings/arm/psci.yaml
@@ -123,7 +123,7 @@ properties:
to mandate it.
[3] Documentation/devicetree/bindings/power/power_domain.txt
- [4] Documentation/devicetree/bindings/power/domain-idle-state.txt
+ [4] Documentation/devicetree/bindings/power/domain-idle-state.yaml
power-domains:
$ref: '/schemas/types.yaml#/definitions/phandle-array'
diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.txt b/Documentation/devicetree/bindings/power/domain-idle-state.txt
deleted file mode 100644
index eefc7ed22ca2..000000000000
--- a/Documentation/devicetree/bindings/power/domain-idle-state.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-PM Domain Idle State Node:
-
-A domain idle state node represents the state parameters that will be used to
-select the state when there are no active components in the domain.
-
-The state node has the following parameters -
-
-- compatible:
- Usage: Required
- Value type: <string>
- Definition: Must be "domain-idle-state".
-
-- entry-latency-us
- Usage: Required
- Value type: <prop-encoded-array>
- Definition: u32 value representing worst case latency in
- microseconds required to enter the idle state.
- The exit-latency-us duration may be guaranteed
- only after entry-latency-us has passed.
-
-- exit-latency-us
- Usage: Required
- Value type: <prop-encoded-array>
- Definition: u32 value representing worst case latency
- in microseconds required to exit the idle state.
-
-- min-residency-us
- Usage: Required
- Value type: <prop-encoded-array>
- Definition: u32 value representing minimum residency duration
- in microseconds after which the idle state will yield
- power benefits after overcoming the overhead in entering
-i the idle state.
diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.yaml b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
new file mode 100644
index 000000000000..27da43076b85
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
@@ -0,0 +1,67 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: PM Domain Idle States binding description
+
+maintainers:
+ - Ulf Hansson <ulf.hansson@linaro.org>
+
+description:
+ A domain idle state node represents the state parameters that will be used to
+ select the state when there are no active components in the PM domain.
+
+properties:
+ $nodename:
+ const: domain-idle-states
+
+patternProperties:
+ "^(cpu|cluster|domain)-":
+ type: object
+ description:
+ Each state node represents a domain idle state description.
+
+ properties:
+ compatible:
+ const: domain-idle-state
+
+ entry-latency-us:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The worst case latency in microseconds required to enter the idle
+ state. Note that, the exit-latency-us duration may be guaranteed only
+ after the entry-latency-us has passed.
+
+ exit-latency-us:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The worst case latency in microseconds required to exit the idle
+ state.
+
+ min-residency-us:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The minimum residency duration in microseconds after which the idle
+ state will yield power benefits, after overcoming the overhead while
+ entering the idle state.
+
+ required:
+ - compatible
+ - entry-latency-us
+ - exit-latency-us
+ - min-residency-us
+
+examples:
+ - |
+
+ domain-idle-states {
+ domain_retention: domain-retention {
+ compatible = "domain-idle-state";
+ entry-latency-us = <20>;
+ exit-latency-us = <40>;
+ min-residency-us = <80>;
+ };
+ };
+...
diff --git a/Documentation/devicetree/bindings/power/power-domain.yaml b/Documentation/devicetree/bindings/power/power-domain.yaml
index 455b573293ae..207e63ae10f9 100644
--- a/Documentation/devicetree/bindings/power/power-domain.yaml
+++ b/Documentation/devicetree/bindings/power/power-domain.yaml
@@ -29,18 +29,16 @@ properties:
domain-idle-states:
$ref: /schemas/types.yaml#/definitions/phandle-array
- description:
- A phandle of an idle-state that shall be soaked into a generic domain
- power state. The idle state definitions are compatible with
- domain-idle-state specified in
- Documentation/devicetree/bindings/power/domain-idle-state.txt
- phandles that are not compatible with domain-idle-state will be ignored.
- The domain-idle-state property reflects the idle state of this PM domain
- and not the idle states of the devices or sub-domains in the PM domain.
- Devices and sub-domains have their own idle-states independent
- of the parent domain's idle states. In the absence of this property,
- the domain would be considered as capable of being powered-on
- or powered-off.
+ description: |
+ Phandles of idle states that defines the available states for the
+ power-domain provider. The idle state definitions are compatible with the
+ domain-idle-state bindings, specified in ./domain-idle-state.yaml.
+
+ Note that, the domain-idle-state property reflects the idle states of this
+ PM domain and not the idle states of the devices or sub-domains in the PM
+ domain. Devices and sub-domains have their own idle states independent of
+ the parent domain's idle states. In the absence of this property, the
+ domain would be considered as capable of being powered-on or powered-off.
operating-points-v2:
$ref: /schemas/types.yaml#/definitions/phandle-array
diff --git a/Documentation/devicetree/bindings/power/power_domain.txt b/Documentation/devicetree/bindings/power/power_domain.txt
index 5b09b2deb483..08497ef26c7a 100644
--- a/Documentation/devicetree/bindings/power/power_domain.txt
+++ b/Documentation/devicetree/bindings/power/power_domain.txt
@@ -109,4 +109,4 @@ Example:
required-opps = <&domain1_opp_1>;
};
-[1]. Documentation/devicetree/bindings/power/domain-idle-state.txt
+[1]. Documentation/devicetree/bindings/power/domain-idle-state.yaml
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
` (2 preceding siblings ...)
2020-03-03 15:07 ` [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
2020-03-03 17:03 ` Rob Herring
2020-03-03 15:07 ` [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states Ulf Hansson
` (2 subsequent siblings)
6 siblings, 1 reply; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
The existing binding requires the nodename to have a '@', which is a bit
limiting for the wider use case. Therefore, let's extend the pattern to
allow either '@' or '-'.
Additionally, let's update one of the examples to show how the updated
pattern could be used.
Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
Documentation/devicetree/bindings/power/power-domain.yaml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/power/power-domain.yaml b/Documentation/devicetree/bindings/power/power-domain.yaml
index 207e63ae10f9..dc232759013e 100644
--- a/Documentation/devicetree/bindings/power/power-domain.yaml
+++ b/Documentation/devicetree/bindings/power/power-domain.yaml
@@ -25,7 +25,7 @@ description: |+
properties:
$nodename:
- pattern: "^(power-controller|power-domain)(@.*)?$"
+ pattern: "^(power-controller|power-domain)([@-].*)?$"
domain-idle-states:
$ref: /schemas/types.yaml#/definitions/phandle-array
@@ -71,13 +71,13 @@ required:
examples:
- |
- power: power-controller@12340000 {
- compatible = "foo,power-controller";
+ power: power-domain-foo {
+ compatible = "foo,power-domain";
reg = <0x12340000 0x1000>;
#power-domain-cells = <1>;
};
- // The node above defines a power controller that is a PM domain provider and
+ // The node above defines a power domain that is a PM domain provider and
// expects one cell as its phandle argument.
- |
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
` (3 preceding siblings ...)
2020-03-03 15:07 ` [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
2020-03-03 17:06 ` Rob Herring
2020-03-03 15:07 ` [PATCH 6/7] arm64: dts: msm8916: Conform to the domain-idle-state DT binding Ulf Hansson
2020-03-03 15:07 ` [PATCH 7/7] arm64: dts: msm8916: Conform to the nodename pattern for power-domain Ulf Hansson
6 siblings, 1 reply; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
The hierarchical topology with power-domain should be described through
child nodes, rather than as currently described in the PSCI root node. Fix
this by adding a patternProperties with a corresponding reference to the
power-domain DT binding.
Additionally, update the example to conform to the new pattern, but also to
the adjusted domain-idle-state DT binding.
Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
.../devicetree/bindings/arm/psci.yaml | 33 +++++++++----------
1 file changed, 15 insertions(+), 18 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
index 0bc3c43a525a..cae668b61265 100644
--- a/Documentation/devicetree/bindings/arm/psci.yaml
+++ b/Documentation/devicetree/bindings/arm/psci.yaml
@@ -102,11 +102,15 @@ properties:
[1] Kernel documentation - ARM idle states bindings
Documentation/devicetree/bindings/arm/idle-states.yaml
- "#power-domain-cells":
- description:
- The number of cells in a PM domain specifier as per binding in [3].
- Must be 0 as to represent a single PM domain.
+required:
+ - compatible
+ - method
+patternProperties:
+ "^(power-controller|power-domain)([@-].*)?$":
+ $ref: "../power/power-domain.yaml#"
+ type: object
+ description: |
ARM systems can have multiple cores, sometimes in an hierarchical
arrangement. This often, but not always, maps directly to the processor
power topology of the system. Individual nodes in a topology have their
@@ -122,19 +126,9 @@ properties:
helps to implement support for OSI mode and OS implementations may choose
to mandate it.
- [3] Documentation/devicetree/bindings/power/power_domain.txt
+ [3] Documentation/devicetree/bindings/power/power-domain.yaml
[4] Documentation/devicetree/bindings/power/domain-idle-state.yaml
- power-domains:
- $ref: '/schemas/types.yaml#/definitions/phandle-array'
- description:
- List of phandles and PM domain specifiers, as defined by bindings of the
- PM domain provider.
-
-required:
- - compatible
- - method
-
allOf:
- if:
properties:
@@ -224,6 +218,9 @@ examples:
exit-latency-us = <10>;
min-residency-us = <100>;
};
+ };
+
+ domain-idle-states {
CLUSTER_RET: cluster-retention {
compatible = "domain-idle-state";
@@ -247,19 +244,19 @@ examples:
compatible = "arm,psci-1.0";
method = "smc";
- CPU_PD0: cpu-pd0 {
+ CPU_PD0: power-domain-cpu0 {
#power-domain-cells = <0>;
domain-idle-states = <&CPU_PWRDN>;
power-domains = <&CLUSTER_PD>;
};
- CPU_PD1: cpu-pd1 {
+ CPU_PD1: power-domain-cpu1 {
#power-domain-cells = <0>;
domain-idle-states = <&CPU_PWRDN>;
power-domains = <&CLUSTER_PD>;
};
- CLUSTER_PD: cluster-pd {
+ CLUSTER_PD: power-domain-cluster {
#power-domain-cells = <0>;
domain-idle-states = <&CLUSTER_RET>, <&CLUSTER_PWRDN>;
};
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 6/7] arm64: dts: msm8916: Conform to the domain-idle-state DT binding
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
` (4 preceding siblings ...)
2020-03-03 15:07 ` [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
2020-03-03 15:07 ` [PATCH 7/7] arm64: dts: msm8916: Conform to the nodename pattern for power-domain Ulf Hansson
6 siblings, 0 replies; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
arch/arm64/boot/dts/qcom/msm8916.dtsi | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index 9f31064f2374..8f3f19e66cd8 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -165,6 +165,9 @@
min-residency-us = <2000>;
local-timer-stop;
};
+ };
+
+ domain-idle-states {
CLUSTER_RET: cluster-retention {
compatible = "domain-idle-state";
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 7/7] arm64: dts: msm8916: Conform to the nodename pattern for power-domain
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
` (5 preceding siblings ...)
2020-03-03 15:07 ` [PATCH 6/7] arm64: dts: msm8916: Conform to the domain-idle-state DT binding Ulf Hansson
@ 2020-03-03 15:07 ` Ulf Hansson
6 siblings, 0 replies; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 15:07 UTC (permalink / raw)
To: Rob Herring, Sudeep Holla, Lorenzo Pieralisi, devicetree
Cc: Rafael J . Wysocki, Daniel Lezcano, Lina Iyer, Stephen Boyd,
Bjorn Andersson, Benjamin Gaignard, Ulf Hansson,
linux-arm-kernel, linux-pm
The nodename should either start with "power-controller" or "power-domain",
so let's fix this.
Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
arch/arm64/boot/dts/qcom/msm8916.dtsi | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index 8f3f19e66cd8..1dd8da481709 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -191,31 +191,31 @@
compatible = "arm,psci-1.0";
method = "smc";
- CPU_PD0: cpu-pd0 {
+ CPU_PD0: power-domain-cpu0 {
#power-domain-cells = <0>;
power-domains = <&CLUSTER_PD>;
domain-idle-states = <&CPU_SLEEP_0>;
};
- CPU_PD1: cpu-pd1 {
+ CPU_PD1: power-domain-cpu1 {
#power-domain-cells = <0>;
power-domains = <&CLUSTER_PD>;
domain-idle-states = <&CPU_SLEEP_0>;
};
- CPU_PD2: cpu-pd2 {
+ CPU_PD2: power-domain-cpu2 {
#power-domain-cells = <0>;
power-domains = <&CLUSTER_PD>;
domain-idle-states = <&CPU_SLEEP_0>;
};
- CPU_PD3: cpu-pd3 {
+ CPU_PD3: power-domain-cpu3 {
#power-domain-cells = <0>;
power-domains = <&CLUSTER_PD>;
domain-idle-states = <&CPU_SLEEP_0>;
};
- CLUSTER_PD: cluster-pd {
+ CLUSTER_PD: power-domain-cluster {
#power-domain-cells = <0>;
domain-idle-states = <&CLUSTER_RET>, <&CLUSTER_PWRDN>;
};
--
2.20.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema
2020-03-03 15:07 ` [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema Ulf Hansson
@ 2020-03-03 17:02 ` Rob Herring
2020-03-03 20:45 ` Ulf Hansson
2020-03-04 14:48 ` Rob Herring
1 sibling, 1 reply; 21+ messages in thread
From: Rob Herring @ 2020-03-03 17:02 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, devicetree, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, linux-arm-kernel, linux-pm
On Tue, Mar 03, 2020 at 04:07:45PM +0100, Ulf Hansson wrote:
> While converting to the json-schema, let's also take the opportunity to
> further specify/clarify some more details about the DT binding.
>
> For example, let's define the label where to put the states nodes, set a
> pattern for nodename of the state nodes and finally add an example.
>
> Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> .../devicetree/bindings/arm/psci.yaml | 2 +-
> .../bindings/power/domain-idle-state.txt | 33 ---------
> .../bindings/power/domain-idle-state.yaml | 67 +++++++++++++++++++
> .../bindings/power/power-domain.yaml | 22 +++---
> .../bindings/power/power_domain.txt | 2 +-
> 5 files changed, 79 insertions(+), 47 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.txt
> create mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.yaml
>
> diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> index 540211a080d4..0bc3c43a525a 100644
> --- a/Documentation/devicetree/bindings/arm/psci.yaml
> +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> @@ -123,7 +123,7 @@ properties:
> to mandate it.
>
> [3] Documentation/devicetree/bindings/power/power_domain.txt
> - [4] Documentation/devicetree/bindings/power/domain-idle-state.txt
> + [4] Documentation/devicetree/bindings/power/domain-idle-state.yaml
>
> power-domains:
> $ref: '/schemas/types.yaml#/definitions/phandle-array'
> diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.txt b/Documentation/devicetree/bindings/power/domain-idle-state.txt
> deleted file mode 100644
> index eefc7ed22ca2..000000000000
> --- a/Documentation/devicetree/bindings/power/domain-idle-state.txt
> +++ /dev/null
> @@ -1,33 +0,0 @@
> -PM Domain Idle State Node:
> -
> -A domain idle state node represents the state parameters that will be used to
> -select the state when there are no active components in the domain.
> -
> -The state node has the following parameters -
> -
> -- compatible:
> - Usage: Required
> - Value type: <string>
> - Definition: Must be "domain-idle-state".
> -
> -- entry-latency-us
> - Usage: Required
> - Value type: <prop-encoded-array>
> - Definition: u32 value representing worst case latency in
> - microseconds required to enter the idle state.
> - The exit-latency-us duration may be guaranteed
> - only after entry-latency-us has passed.
> -
> -- exit-latency-us
> - Usage: Required
> - Value type: <prop-encoded-array>
> - Definition: u32 value representing worst case latency
> - in microseconds required to exit the idle state.
> -
> -- min-residency-us
> - Usage: Required
> - Value type: <prop-encoded-array>
> - Definition: u32 value representing minimum residency duration
> - in microseconds after which the idle state will yield
> - power benefits after overcoming the overhead in entering
> -i the idle state.
> diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.yaml b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> new file mode 100644
> index 000000000000..27da43076b85
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> @@ -0,0 +1,67 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: PM Domain Idle States binding description
> +
> +maintainers:
> + - Ulf Hansson <ulf.hansson@linaro.org>
> +
> +description:
> + A domain idle state node represents the state parameters that will be used to
> + select the state when there are no active components in the PM domain.
> +
> +properties:
> + $nodename:
> + const: domain-idle-states
> +
> +patternProperties:
> + "^(cpu|cluster|domain)-":
> + type: object
> + description:
> + Each state node represents a domain idle state description.
> +
> + properties:
> + compatible:
> + const: domain-idle-state
> +
> + entry-latency-us:
> + $ref: /schemas/types.yaml#/definitions/uint32
You don't need a type because the core schema defines it for all
standard units.
> + description:
> + The worst case latency in microseconds required to enter the idle
> + state. Note that, the exit-latency-us duration may be guaranteed only
> + after the entry-latency-us has passed.
> +
> + exit-latency-us:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + The worst case latency in microseconds required to exit the idle
> + state.
> +
> + min-residency-us:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + The minimum residency duration in microseconds after which the idle
> + state will yield power benefits, after overcoming the overhead while
> + entering the idle state.
> +
> + required:
> + - compatible
> + - entry-latency-us
> + - exit-latency-us
> + - min-residency-us
additionalProperties: false
Do we have cases of adding additional properties?
I can fix these up when applying.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers
2020-03-03 15:07 ` [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers Ulf Hansson
@ 2020-03-03 17:03 ` Rob Herring
2020-03-03 20:46 ` Ulf Hansson
0 siblings, 1 reply; 21+ messages in thread
From: Rob Herring @ 2020-03-03 17:03 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, devicetree, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, linux-arm-kernel, linux-pm
On Tue, Mar 03, 2020 at 04:07:46PM +0100, Ulf Hansson wrote:
> The existing binding requires the nodename to have a '@', which is a bit
> limiting for the wider use case. Therefore, let's extend the pattern to
> allow either '@' or '-'.
That's fine, but...
> Additionally, let's update one of the examples to show how the updated
> pattern could be used.
>
> Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> Documentation/devicetree/bindings/power/power-domain.yaml | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/power/power-domain.yaml b/Documentation/devicetree/bindings/power/power-domain.yaml
> index 207e63ae10f9..dc232759013e 100644
> --- a/Documentation/devicetree/bindings/power/power-domain.yaml
> +++ b/Documentation/devicetree/bindings/power/power-domain.yaml
> @@ -25,7 +25,7 @@ description: |+
>
> properties:
> $nodename:
> - pattern: "^(power-controller|power-domain)(@.*)?$"
> + pattern: "^(power-controller|power-domain)([@-].*)?$"
>
> domain-idle-states:
> $ref: /schemas/types.yaml#/definitions/phandle-array
> @@ -71,13 +71,13 @@ required:
>
> examples:
> - |
> - power: power-controller@12340000 {
> - compatible = "foo,power-controller";
> + power: power-domain-foo {
> + compatible = "foo,power-domain";
> reg = <0x12340000 0x1000>;
When you have 'reg' you should have a unit-address.
> #power-domain-cells = <1>;
> };
>
> - // The node above defines a power controller that is a PM domain provider and
> + // The node above defines a power domain that is a PM domain provider and
> // expects one cell as its phandle argument.
>
> - |
> --
> 2.20.1
>
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
2020-03-03 15:07 ` [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states Ulf Hansson
@ 2020-03-03 17:06 ` Rob Herring
2020-03-03 20:50 ` Ulf Hansson
0 siblings, 1 reply; 21+ messages in thread
From: Rob Herring @ 2020-03-03 17:06 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, devicetree, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, linux-arm-kernel, linux-pm
On Tue, Mar 03, 2020 at 04:07:47PM +0100, Ulf Hansson wrote:
> The hierarchical topology with power-domain should be described through
> child nodes, rather than as currently described in the PSCI root node. Fix
> this by adding a patternProperties with a corresponding reference to the
> power-domain DT binding.
>
> Additionally, update the example to conform to the new pattern, but also to
> the adjusted domain-idle-state DT binding.
>
> Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> .../devicetree/bindings/arm/psci.yaml | 33 +++++++++----------
> 1 file changed, 15 insertions(+), 18 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> index 0bc3c43a525a..cae668b61265 100644
> --- a/Documentation/devicetree/bindings/arm/psci.yaml
> +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> @@ -102,11 +102,15 @@ properties:
> [1] Kernel documentation - ARM idle states bindings
> Documentation/devicetree/bindings/arm/idle-states.yaml
>
> - "#power-domain-cells":
> - description:
> - The number of cells in a PM domain specifier as per binding in [3].
> - Must be 0 as to represent a single PM domain.
> +required:
> + - compatible
> + - method
No need to move this.
>
> +patternProperties:
> + "^(power-controller|power-domain)([@-].*)?$":
> + $ref: "../power/power-domain.yaml#"
This has to be under an 'allOf' or the rest of the properties are
ignored.
> + type: object
> + description: |
> ARM systems can have multiple cores, sometimes in an hierarchical
> arrangement. This often, but not always, maps directly to the processor
> power topology of the system. Individual nodes in a topology have their
> @@ -122,19 +126,9 @@ properties:
> helps to implement support for OSI mode and OS implementations may choose
> to mandate it.
>
> - [3] Documentation/devicetree/bindings/power/power_domain.txt
> + [3] Documentation/devicetree/bindings/power/power-domain.yaml
> [4] Documentation/devicetree/bindings/power/domain-idle-state.yaml
>
> - power-domains:
> - $ref: '/schemas/types.yaml#/definitions/phandle-array'
> - description:
> - List of phandles and PM domain specifiers, as defined by bindings of the
> - PM domain provider.
> -
> -required:
> - - compatible
> - - method
> -
> allOf:
> - if:
> properties:
> @@ -224,6 +218,9 @@ examples:
> exit-latency-us = <10>;
> min-residency-us = <100>;
> };
> + };
> +
> + domain-idle-states {
>
> CLUSTER_RET: cluster-retention {
> compatible = "domain-idle-state";
> @@ -247,19 +244,19 @@ examples:
> compatible = "arm,psci-1.0";
> method = "smc";
>
> - CPU_PD0: cpu-pd0 {
> + CPU_PD0: power-domain-cpu0 {
> #power-domain-cells = <0>;
> domain-idle-states = <&CPU_PWRDN>;
> power-domains = <&CLUSTER_PD>;
> };
>
> - CPU_PD1: cpu-pd1 {
> + CPU_PD1: power-domain-cpu1 {
> #power-domain-cells = <0>;
> domain-idle-states = <&CPU_PWRDN>;
> power-domains = <&CLUSTER_PD>;
> };
>
> - CLUSTER_PD: cluster-pd {
> + CLUSTER_PD: power-domain-cluster {
> #power-domain-cells = <0>;
> domain-idle-states = <&CLUSTER_RET>, <&CLUSTER_PWRDN>;
> };
> --
> 2.20.1
>
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema
2020-03-03 17:02 ` Rob Herring
@ 2020-03-03 20:45 ` Ulf Hansson
2020-03-03 21:17 ` Rob Herring
0 siblings, 1 reply; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 20:45 UTC (permalink / raw)
To: Rob Herring
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Tue, 3 Mar 2020 at 18:02, Rob Herring <robh@kernel.org> wrote:
>
> On Tue, Mar 03, 2020 at 04:07:45PM +0100, Ulf Hansson wrote:
> > While converting to the json-schema, let's also take the opportunity to
> > further specify/clarify some more details about the DT binding.
> >
> > For example, let's define the label where to put the states nodes, set a
> > pattern for nodename of the state nodes and finally add an example.
> >
> > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > ---
> > .../devicetree/bindings/arm/psci.yaml | 2 +-
> > .../bindings/power/domain-idle-state.txt | 33 ---------
> > .../bindings/power/domain-idle-state.yaml | 67 +++++++++++++++++++
> > .../bindings/power/power-domain.yaml | 22 +++---
> > .../bindings/power/power_domain.txt | 2 +-
> > 5 files changed, 79 insertions(+), 47 deletions(-)
> > delete mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.txt
> > create mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> > index 540211a080d4..0bc3c43a525a 100644
> > --- a/Documentation/devicetree/bindings/arm/psci.yaml
> > +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> > @@ -123,7 +123,7 @@ properties:
> > to mandate it.
> >
> > [3] Documentation/devicetree/bindings/power/power_domain.txt
> > - [4] Documentation/devicetree/bindings/power/domain-idle-state.txt
> > + [4] Documentation/devicetree/bindings/power/domain-idle-state.yaml
> >
> > power-domains:
> > $ref: '/schemas/types.yaml#/definitions/phandle-array'
> > diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.txt b/Documentation/devicetree/bindings/power/domain-idle-state.txt
> > deleted file mode 100644
> > index eefc7ed22ca2..000000000000
> > --- a/Documentation/devicetree/bindings/power/domain-idle-state.txt
> > +++ /dev/null
> > @@ -1,33 +0,0 @@
> > -PM Domain Idle State Node:
> > -
> > -A domain idle state node represents the state parameters that will be used to
> > -select the state when there are no active components in the domain.
> > -
> > -The state node has the following parameters -
> > -
> > -- compatible:
> > - Usage: Required
> > - Value type: <string>
> > - Definition: Must be "domain-idle-state".
> > -
> > -- entry-latency-us
> > - Usage: Required
> > - Value type: <prop-encoded-array>
> > - Definition: u32 value representing worst case latency in
> > - microseconds required to enter the idle state.
> > - The exit-latency-us duration may be guaranteed
> > - only after entry-latency-us has passed.
> > -
> > -- exit-latency-us
> > - Usage: Required
> > - Value type: <prop-encoded-array>
> > - Definition: u32 value representing worst case latency
> > - in microseconds required to exit the idle state.
> > -
> > -- min-residency-us
> > - Usage: Required
> > - Value type: <prop-encoded-array>
> > - Definition: u32 value representing minimum residency duration
> > - in microseconds after which the idle state will yield
> > - power benefits after overcoming the overhead in entering
> > -i the idle state.
> > diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.yaml b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> > new file mode 100644
> > index 000000000000..27da43076b85
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> > @@ -0,0 +1,67 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: PM Domain Idle States binding description
> > +
> > +maintainers:
> > + - Ulf Hansson <ulf.hansson@linaro.org>
> > +
> > +description:
> > + A domain idle state node represents the state parameters that will be used to
> > + select the state when there are no active components in the PM domain.
> > +
> > +properties:
> > + $nodename:
> > + const: domain-idle-states
> > +
> > +patternProperties:
> > + "^(cpu|cluster|domain)-":
> > + type: object
> > + description:
> > + Each state node represents a domain idle state description.
> > +
> > + properties:
> > + compatible:
> > + const: domain-idle-state
> > +
> > + entry-latency-us:
> > + $ref: /schemas/types.yaml#/definitions/uint32
>
> You don't need a type because the core schema defines it for all
> standard units.
Okay, I noticed some skips this, but wanted rather to clear and fuzzy.
In any case, yes, let's remove it.
>
> > + description:
> > + The worst case latency in microseconds required to enter the idle
> > + state. Note that, the exit-latency-us duration may be guaranteed only
> > + after the entry-latency-us has passed.
> > +
> > + exit-latency-us:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description:
> > + The worst case latency in microseconds required to exit the idle
> > + state.
> > +
> > + min-residency-us:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description:
> > + The minimum residency duration in microseconds after which the idle
> > + state will yield power benefits, after overcoming the overhead while
> > + entering the idle state.
> > +
> > + required:
> > + - compatible
> > + - entry-latency-us
> > + - exit-latency-us
> > + - min-residency-us
>
> additionalProperties: false
>
> Do we have cases of adding additional properties?
I might, but I am not sure what's the correct way to deal with that.
What I am wondering about is the "arm,psci-suspend-param" property,
currently defined as part of the PSCI bindings (psci.yaml).
I am not sure that's correct to define it as a PSCI binding. Shouldn't
it rather be a part of the idle state bindings (idle-states.yaml) and
the domain idle states binding ($subject patch)?
What do you think?
In any case, we probably want to fix this on top, if we should care.
>
> I can fix these up when applying.
Thanks a lot!
Kind regards
Uffe
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers
2020-03-03 17:03 ` Rob Herring
@ 2020-03-03 20:46 ` Ulf Hansson
0 siblings, 0 replies; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 20:46 UTC (permalink / raw)
To: Rob Herring
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Tue, 3 Mar 2020 at 18:04, Rob Herring <robh@kernel.org> wrote:
>
> On Tue, Mar 03, 2020 at 04:07:46PM +0100, Ulf Hansson wrote:
> > The existing binding requires the nodename to have a '@', which is a bit
> > limiting for the wider use case. Therefore, let's extend the pattern to
> > allow either '@' or '-'.
>
> That's fine, but...
>
> > Additionally, let's update one of the examples to show how the updated
> > pattern could be used.
> >
> > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > ---
> > Documentation/devicetree/bindings/power/power-domain.yaml | 8 ++++----
> > 1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/power/power-domain.yaml b/Documentation/devicetree/bindings/power/power-domain.yaml
> > index 207e63ae10f9..dc232759013e 100644
> > --- a/Documentation/devicetree/bindings/power/power-domain.yaml
> > +++ b/Documentation/devicetree/bindings/power/power-domain.yaml
> > @@ -25,7 +25,7 @@ description: |+
> >
> > properties:
> > $nodename:
> > - pattern: "^(power-controller|power-domain)(@.*)?$"
> > + pattern: "^(power-controller|power-domain)([@-].*)?$"
> >
> > domain-idle-states:
> > $ref: /schemas/types.yaml#/definitions/phandle-array
> > @@ -71,13 +71,13 @@ required:
> >
> > examples:
> > - |
> > - power: power-controller@12340000 {
> > - compatible = "foo,power-controller";
> > + power: power-domain-foo {
> > + compatible = "foo,power-domain";
> > reg = <0x12340000 0x1000>;
>
> When you have 'reg' you should have a unit-address.
Yes, of course, thanks!
[...]
Kind regards
Uffe
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
2020-03-03 17:06 ` Rob Herring
@ 2020-03-03 20:50 ` Ulf Hansson
2020-03-04 14:53 ` Rob Herring
0 siblings, 1 reply; 21+ messages in thread
From: Ulf Hansson @ 2020-03-03 20:50 UTC (permalink / raw)
To: Rob Herring
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Tue, 3 Mar 2020 at 18:06, Rob Herring <robh@kernel.org> wrote:
>
> On Tue, Mar 03, 2020 at 04:07:47PM +0100, Ulf Hansson wrote:
> > The hierarchical topology with power-domain should be described through
> > child nodes, rather than as currently described in the PSCI root node. Fix
> > this by adding a patternProperties with a corresponding reference to the
> > power-domain DT binding.
> >
> > Additionally, update the example to conform to the new pattern, but also to
> > the adjusted domain-idle-state DT binding.
> >
> > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > ---
> > .../devicetree/bindings/arm/psci.yaml | 33 +++++++++----------
> > 1 file changed, 15 insertions(+), 18 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> > index 0bc3c43a525a..cae668b61265 100644
> > --- a/Documentation/devicetree/bindings/arm/psci.yaml
> > +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> > @@ -102,11 +102,15 @@ properties:
> > [1] Kernel documentation - ARM idle states bindings
> > Documentation/devicetree/bindings/arm/idle-states.yaml
> >
> > - "#power-domain-cells":
> > - description:
> > - The number of cells in a PM domain specifier as per binding in [3].
> > - Must be 0 as to represent a single PM domain.
> > +required:
> > + - compatible
> > + - method
>
> No need to move this.
Okay.
>
> >
> > +patternProperties:
> > + "^(power-controller|power-domain)([@-].*)?$":
> > + $ref: "../power/power-domain.yaml#"
>
> This has to be under an 'allOf' or the rest of the properties are
> ignored.
Sure, I had the feeling that something was missing. Thanks for reviewing!
[...]
Looks like I should a v2 of the series, or do you prefer to apply some
of the patches before I resend?
Kind regards
Uffe
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema
2020-03-03 20:45 ` Ulf Hansson
@ 2020-03-03 21:17 ` Rob Herring
0 siblings, 0 replies; 21+ messages in thread
From: Rob Herring @ 2020-03-03 21:17 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Tue, Mar 3, 2020 at 2:46 PM Ulf Hansson <ulf.hansson@linaro.org> wrote:
>
> On Tue, 3 Mar 2020 at 18:02, Rob Herring <robh@kernel.org> wrote:
> >
> > On Tue, Mar 03, 2020 at 04:07:45PM +0100, Ulf Hansson wrote:
> > > While converting to the json-schema, let's also take the opportunity to
> > > further specify/clarify some more details about the DT binding.
> > >
> > > For example, let's define the label where to put the states nodes, set a
> > > pattern for nodename of the state nodes and finally add an example.
> > >
> > > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > ---
> > > .../devicetree/bindings/arm/psci.yaml | 2 +-
> > > .../bindings/power/domain-idle-state.txt | 33 ---------
> > > .../bindings/power/domain-idle-state.yaml | 67 +++++++++++++++++++
> > > .../bindings/power/power-domain.yaml | 22 +++---
> > > .../bindings/power/power_domain.txt | 2 +-
> > > 5 files changed, 79 insertions(+), 47 deletions(-)
> > > delete mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.txt
> > > create mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.yaml
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> > > index 540211a080d4..0bc3c43a525a 100644
> > > --- a/Documentation/devicetree/bindings/arm/psci.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> > > @@ -123,7 +123,7 @@ properties:
> > > to mandate it.
> > >
> > > [3] Documentation/devicetree/bindings/power/power_domain.txt
> > > - [4] Documentation/devicetree/bindings/power/domain-idle-state.txt
> > > + [4] Documentation/devicetree/bindings/power/domain-idle-state.yaml
> > >
> > > power-domains:
> > > $ref: '/schemas/types.yaml#/definitions/phandle-array'
> > > diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.txt b/Documentation/devicetree/bindings/power/domain-idle-state.txt
> > > deleted file mode 100644
> > > index eefc7ed22ca2..000000000000
> > > --- a/Documentation/devicetree/bindings/power/domain-idle-state.txt
> > > +++ /dev/null
> > > @@ -1,33 +0,0 @@
> > > -PM Domain Idle State Node:
> > > -
> > > -A domain idle state node represents the state parameters that will be used to
> > > -select the state when there are no active components in the domain.
> > > -
> > > -The state node has the following parameters -
> > > -
> > > -- compatible:
> > > - Usage: Required
> > > - Value type: <string>
> > > - Definition: Must be "domain-idle-state".
> > > -
> > > -- entry-latency-us
> > > - Usage: Required
> > > - Value type: <prop-encoded-array>
> > > - Definition: u32 value representing worst case latency in
> > > - microseconds required to enter the idle state.
> > > - The exit-latency-us duration may be guaranteed
> > > - only after entry-latency-us has passed.
> > > -
> > > -- exit-latency-us
> > > - Usage: Required
> > > - Value type: <prop-encoded-array>
> > > - Definition: u32 value representing worst case latency
> > > - in microseconds required to exit the idle state.
> > > -
> > > -- min-residency-us
> > > - Usage: Required
> > > - Value type: <prop-encoded-array>
> > > - Definition: u32 value representing minimum residency duration
> > > - in microseconds after which the idle state will yield
> > > - power benefits after overcoming the overhead in entering
> > > -i the idle state.
> > > diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.yaml b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> > > new file mode 100644
> > > index 000000000000..27da43076b85
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> > > @@ -0,0 +1,67 @@
> > > +# SPDX-License-Identifier: GPL-2.0
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: PM Domain Idle States binding description
> > > +
> > > +maintainers:
> > > + - Ulf Hansson <ulf.hansson@linaro.org>
> > > +
> > > +description:
> > > + A domain idle state node represents the state parameters that will be used to
> > > + select the state when there are no active components in the PM domain.
> > > +
> > > +properties:
> > > + $nodename:
> > > + const: domain-idle-states
> > > +
> > > +patternProperties:
> > > + "^(cpu|cluster|domain)-":
> > > + type: object
> > > + description:
> > > + Each state node represents a domain idle state description.
> > > +
> > > + properties:
> > > + compatible:
> > > + const: domain-idle-state
> > > +
> > > + entry-latency-us:
> > > + $ref: /schemas/types.yaml#/definitions/uint32
> >
> > You don't need a type because the core schema defines it for all
> > standard units.
>
> Okay, I noticed some skips this, but wanted rather to clear and fuzzy.
>
> In any case, yes, let's remove it.
>
> >
> > > + description:
> > > + The worst case latency in microseconds required to enter the idle
> > > + state. Note that, the exit-latency-us duration may be guaranteed only
> > > + after the entry-latency-us has passed.
> > > +
> > > + exit-latency-us:
> > > + $ref: /schemas/types.yaml#/definitions/uint32
> > > + description:
> > > + The worst case latency in microseconds required to exit the idle
> > > + state.
> > > +
> > > + min-residency-us:
> > > + $ref: /schemas/types.yaml#/definitions/uint32
> > > + description:
> > > + The minimum residency duration in microseconds after which the idle
> > > + state will yield power benefits, after overcoming the overhead while
> > > + entering the idle state.
> > > +
> > > + required:
> > > + - compatible
> > > + - entry-latency-us
> > > + - exit-latency-us
> > > + - min-residency-us
> >
> > additionalProperties: false
> >
> > Do we have cases of adding additional properties?
>
> I might, but I am not sure what's the correct way to deal with that.
I was thinking more like a vendor adding properties. Is this a base
class that can be extended or every possible property is defined here.
Actually, with the matching on $nodename, we have to put any additions
in here or do a custom 'select'. In any case, I think we can cross
than when/if we get there.
> What I am wondering about is the "arm,psci-suspend-param" property,
> currently defined as part of the PSCI bindings (psci.yaml).
>
> I am not sure that's correct to define it as a PSCI binding. Shouldn't
> it rather be a part of the idle state bindings (idle-states.yaml) and
> the domain idle states binding ($subject patch)?
Indeed it should be moved here.
>
> What do you think?
>
> In any case, we probably want to fix this on top, if we should care.
Yes, that's fine.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions
2020-03-03 15:07 ` [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions Ulf Hansson
@ 2020-03-04 14:47 ` Rob Herring
0 siblings, 0 replies; 21+ messages in thread
From: Rob Herring @ 2020-03-04 14:47 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, devicetree, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Ulf Hansson, linux-arm-kernel, linux-pm
On Tue, 3 Mar 2020 16:07:43 +0100, Ulf Hansson wrote:
> The arm,idle-state DT bindings recently got converted to the json-schema,
> but some links are still pointing to the old, non-existing, txt file. Let's
> update the links to fix this.
>
> Fixes: baac82fe06db ("dt-bindings: arm: Convert arm,idle-state binding to DT schema")
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> Documentation/devicetree/bindings/arm/cpus.yaml | 2 +-
> Documentation/devicetree/bindings/arm/msm/qcom,idle-state.txt | 2 +-
> Documentation/devicetree/bindings/arm/psci.yaml | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
>
Applied, thanks.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 2/7] dt-bindings: arm: Fix cpu compatibles in the hierarchical example for PSCI
2020-03-03 15:07 ` [PATCH 2/7] dt-bindings: arm: Fix cpu compatibles in the hierarchical example for PSCI Ulf Hansson
@ 2020-03-04 14:47 ` Rob Herring
0 siblings, 0 replies; 21+ messages in thread
From: Rob Herring @ 2020-03-04 14:47 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, devicetree, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Ulf Hansson, linux-arm-kernel, linux-pm
On Tue, 3 Mar 2020 16:07:44 +0100, Ulf Hansson wrote:
> Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> Documentation/devicetree/bindings/arm/psci.yaml | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
Applied, thanks.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema
2020-03-03 15:07 ` [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema Ulf Hansson
2020-03-03 17:02 ` Rob Herring
@ 2020-03-04 14:48 ` Rob Herring
1 sibling, 0 replies; 21+ messages in thread
From: Rob Herring @ 2020-03-04 14:48 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, devicetree, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Ulf Hansson, linux-arm-kernel, linux-pm
On Tue, 3 Mar 2020 16:07:45 +0100, Ulf Hansson wrote:
> While converting to the json-schema, let's also take the opportunity to
> further specify/clarify some more details about the DT binding.
>
> For example, let's define the label where to put the states nodes, set a
> pattern for nodename of the state nodes and finally add an example.
>
> Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> .../devicetree/bindings/arm/psci.yaml | 2 +-
> .../bindings/power/domain-idle-state.txt | 33 ---------
> .../bindings/power/domain-idle-state.yaml | 67 +++++++++++++++++++
> .../bindings/power/power-domain.yaml | 22 +++---
> .../bindings/power/power_domain.txt | 2 +-
> 5 files changed, 79 insertions(+), 47 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.txt
> create mode 100644 Documentation/devicetree/bindings/power/domain-idle-state.yaml
>
Applied, thanks.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
2020-03-03 20:50 ` Ulf Hansson
@ 2020-03-04 14:53 ` Rob Herring
2020-03-06 18:29 ` Rob Herring
0 siblings, 1 reply; 21+ messages in thread
From: Rob Herring @ 2020-03-04 14:53 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Tue, Mar 03, 2020 at 09:50:08PM +0100, Ulf Hansson wrote:
> On Tue, 3 Mar 2020 at 18:06, Rob Herring <robh@kernel.org> wrote:
> >
> > On Tue, Mar 03, 2020 at 04:07:47PM +0100, Ulf Hansson wrote:
> > > The hierarchical topology with power-domain should be described through
> > > child nodes, rather than as currently described in the PSCI root node. Fix
> > > this by adding a patternProperties with a corresponding reference to the
> > > power-domain DT binding.
> > >
> > > Additionally, update the example to conform to the new pattern, but also to
> > > the adjusted domain-idle-state DT binding.
> > >
> > > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > ---
> > > .../devicetree/bindings/arm/psci.yaml | 33 +++++++++----------
> > > 1 file changed, 15 insertions(+), 18 deletions(-)
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> > > index 0bc3c43a525a..cae668b61265 100644
> > > --- a/Documentation/devicetree/bindings/arm/psci.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> > > @@ -102,11 +102,15 @@ properties:
> > > [1] Kernel documentation - ARM idle states bindings
> > > Documentation/devicetree/bindings/arm/idle-states.yaml
> > >
> > > - "#power-domain-cells":
> > > - description:
> > > - The number of cells in a PM domain specifier as per binding in [3].
> > > - Must be 0 as to represent a single PM domain.
> > > +required:
> > > + - compatible
> > > + - method
> >
> > No need to move this.
>
> Okay.
>
> >
> > >
> > > +patternProperties:
> > > + "^(power-controller|power-domain)([@-].*)?$":
> > > + $ref: "../power/power-domain.yaml#"
> >
> > This has to be under an 'allOf' or the rest of the properties are
> > ignored.
>
> Sure, I had the feeling that something was missing. Thanks for reviewing!
>
> [...]
>
> Looks like I should a v2 of the series, or do you prefer to apply some
> of the patches before I resend?
Applied 1-3. I'll wait for v2 of 4 and 5.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
2020-03-04 14:53 ` Rob Herring
@ 2020-03-06 18:29 ` Rob Herring
2020-03-09 7:10 ` Ulf Hansson
0 siblings, 1 reply; 21+ messages in thread
From: Rob Herring @ 2020-03-06 18:29 UTC (permalink / raw)
To: Ulf Hansson
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Wed, Mar 4, 2020 at 8:53 AM Rob Herring <robh@kernel.org> wrote:
>
> On Tue, Mar 03, 2020 at 09:50:08PM +0100, Ulf Hansson wrote:
> > On Tue, 3 Mar 2020 at 18:06, Rob Herring <robh@kernel.org> wrote:
> > >
> > > On Tue, Mar 03, 2020 at 04:07:47PM +0100, Ulf Hansson wrote:
> > > > The hierarchical topology with power-domain should be described through
> > > > child nodes, rather than as currently described in the PSCI root node. Fix
> > > > this by adding a patternProperties with a corresponding reference to the
> > > > power-domain DT binding.
> > > >
> > > > Additionally, update the example to conform to the new pattern, but also to
> > > > the adjusted domain-idle-state DT binding.
> > > >
> > > > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > > ---
> > > > .../devicetree/bindings/arm/psci.yaml | 33 +++++++++----------
> > > > 1 file changed, 15 insertions(+), 18 deletions(-)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> > > > index 0bc3c43a525a..cae668b61265 100644
> > > > --- a/Documentation/devicetree/bindings/arm/psci.yaml
> > > > +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> > > > @@ -102,11 +102,15 @@ properties:
> > > > [1] Kernel documentation - ARM idle states bindings
> > > > Documentation/devicetree/bindings/arm/idle-states.yaml
> > > >
> > > > - "#power-domain-cells":
> > > > - description:
> > > > - The number of cells in a PM domain specifier as per binding in [3].
> > > > - Must be 0 as to represent a single PM domain.
> > > > +required:
> > > > + - compatible
> > > > + - method
> > >
> > > No need to move this.
> >
> > Okay.
> >
> > >
> > > >
> > > > +patternProperties:
> > > > + "^(power-controller|power-domain)([@-].*)?$":
> > > > + $ref: "../power/power-domain.yaml#"
> > >
> > > This has to be under an 'allOf' or the rest of the properties are
> > > ignored.
> >
> > Sure, I had the feeling that something was missing. Thanks for reviewing!
> >
> > [...]
> >
> > Looks like I should a v2 of the series, or do you prefer to apply some
> > of the patches before I resend?
>
> Applied 1-3. I'll wait for v2 of 4 and 5.
In order to fix all warnings by rc5, I fixed up and applied patches 4 and 5.
Rob
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states
2020-03-06 18:29 ` Rob Herring
@ 2020-03-09 7:10 ` Ulf Hansson
0 siblings, 0 replies; 21+ messages in thread
From: Ulf Hansson @ 2020-03-09 7:10 UTC (permalink / raw)
To: Rob Herring
Cc: Sudeep Holla, Lorenzo Pieralisi, DTML, Rafael J . Wysocki,
Daniel Lezcano, Lina Iyer, Stephen Boyd, Bjorn Andersson,
Benjamin Gaignard, Linux ARM, Linux PM
On Fri, 6 Mar 2020 at 19:29, Rob Herring <robh@kernel.org> wrote:
>
> On Wed, Mar 4, 2020 at 8:53 AM Rob Herring <robh@kernel.org> wrote:
> >
> > On Tue, Mar 03, 2020 at 09:50:08PM +0100, Ulf Hansson wrote:
> > > On Tue, 3 Mar 2020 at 18:06, Rob Herring <robh@kernel.org> wrote:
> > > >
> > > > On Tue, Mar 03, 2020 at 04:07:47PM +0100, Ulf Hansson wrote:
> > > > > The hierarchical topology with power-domain should be described through
> > > > > child nodes, rather than as currently described in the PSCI root node. Fix
> > > > > this by adding a patternProperties with a corresponding reference to the
> > > > > power-domain DT binding.
> > > > >
> > > > > Additionally, update the example to conform to the new pattern, but also to
> > > > > the adjusted domain-idle-state DT binding.
> > > > >
> > > > > Fixes: a3f048b5424e ("dt: psci: Update DT bindings to support hierarchical PSCI states")
> > > > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > > > ---
> > > > > .../devicetree/bindings/arm/psci.yaml | 33 +++++++++----------
> > > > > 1 file changed, 15 insertions(+), 18 deletions(-)
> > > > >
> > > > > diff --git a/Documentation/devicetree/bindings/arm/psci.yaml b/Documentation/devicetree/bindings/arm/psci.yaml
> > > > > index 0bc3c43a525a..cae668b61265 100644
> > > > > --- a/Documentation/devicetree/bindings/arm/psci.yaml
> > > > > +++ b/Documentation/devicetree/bindings/arm/psci.yaml
> > > > > @@ -102,11 +102,15 @@ properties:
> > > > > [1] Kernel documentation - ARM idle states bindings
> > > > > Documentation/devicetree/bindings/arm/idle-states.yaml
> > > > >
> > > > > - "#power-domain-cells":
> > > > > - description:
> > > > > - The number of cells in a PM domain specifier as per binding in [3].
> > > > > - Must be 0 as to represent a single PM domain.
> > > > > +required:
> > > > > + - compatible
> > > > > + - method
> > > >
> > > > No need to move this.
> > >
> > > Okay.
> > >
> > > >
> > > > >
> > > > > +patternProperties:
> > > > > + "^(power-controller|power-domain)([@-].*)?$":
> > > > > + $ref: "../power/power-domain.yaml#"
> > > >
> > > > This has to be under an 'allOf' or the rest of the properties are
> > > > ignored.
> > >
> > > Sure, I had the feeling that something was missing. Thanks for reviewing!
> > >
> > > [...]
> > >
> > > Looks like I should a v2 of the series, or do you prefer to apply some
> > > of the patches before I resend?
> >
> > Applied 1-3. I'll wait for v2 of 4 and 5.
>
> In order to fix all warnings by rc5, I fixed up and applied patches 4 and 5.
Thanks a lot, looks good!
Kind regards
Uffe
^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2020-03-09 7:11 UTC | newest]
Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-03 15:07 [PATCH 0/7] dt-bindings: arm: Fix bindings used for hierarchical PSCI states Ulf Hansson
2020-03-03 15:07 ` [PATCH 1/7] dt-bindings: arm: Correct links to idle states definitions Ulf Hansson
2020-03-04 14:47 ` Rob Herring
2020-03-03 15:07 ` [PATCH 2/7] dt-bindings: arm: Fix cpu compatibles in the hierarchical example for PSCI Ulf Hansson
2020-03-04 14:47 ` Rob Herring
2020-03-03 15:07 ` [PATCH 3/7] dt-bindings: power: Convert domain-idle-states bindings to json-schema Ulf Hansson
2020-03-03 17:02 ` Rob Herring
2020-03-03 20:45 ` Ulf Hansson
2020-03-03 21:17 ` Rob Herring
2020-03-04 14:48 ` Rob Herring
2020-03-03 15:07 ` [PATCH 4/7] dt-bindings: power: Extend nodename pattern for power-domain providers Ulf Hansson
2020-03-03 17:03 ` Rob Herring
2020-03-03 20:46 ` Ulf Hansson
2020-03-03 15:07 ` [PATCH 5/7] dt-bindings: arm: Fixup the DT bindings for hierarchical PSCI states Ulf Hansson
2020-03-03 17:06 ` Rob Herring
2020-03-03 20:50 ` Ulf Hansson
2020-03-04 14:53 ` Rob Herring
2020-03-06 18:29 ` Rob Herring
2020-03-09 7:10 ` Ulf Hansson
2020-03-03 15:07 ` [PATCH 6/7] arm64: dts: msm8916: Conform to the domain-idle-state DT binding Ulf Hansson
2020-03-03 15:07 ` [PATCH 7/7] arm64: dts: msm8916: Conform to the nodename pattern for power-domain Ulf Hansson
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).