2023-12-21 12:28:21

by Michal Simek

[permalink] [raw]
Subject: [PATCH v3 0/4] dt-bindings: xilinx: Add missing firmware child nodes

Hi,

series is converting missing descriptions for child nodes and also
synchronizing name for power-management discussed with Krzysztof in v1
version available here.
https://lore.kernel.org/r/[email protected]

Thanks,
Michal

Changes in v3:
- s/power-controller/power-management/g
- extend example
- s/power-controller/power-management/g
- align commit message
- s/power-controller/power-management/g
- update subject and commit message to match sed above

Changes in v2:
- Sort nodes by name
- Rename zynqmp-power to power-controller
- Keep only single patch for easier handling as done in v1
- New patch in series
- New patch is series
- New patch is series

Michal Simek (4):
dt-bindings: firmware: xilinx: Describe missing child nodes
dt-bindings: firmware: xilinx: Sort node names (clock-controller)
dt-bindings: power: reset: xilinx: Rename node names in examples
arm64: zynqmp: Rename zynqmp-power node to power-management

.../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 68 ++++++++++++++++---
.../power/reset/xlnx,zynqmp-power.yaml | 4 +-
arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 2 +-
3 files changed, 62 insertions(+), 12 deletions(-)

--
2.36.1



2023-12-21 12:28:36

by Michal Simek

[permalink] [raw]
Subject: [PATCH v3 1/4] dt-bindings: firmware: xilinx: Describe missing child nodes

Firmware node has more than fpga, aes and clock child nodes but also power,
reset, gpio, pinctrl and pcap which are not described yet.
All of them have binding in separate files but there is missing connection
to firmware node that's why describe it.

Signed-off-by: Michal Simek <[email protected]>
---

Changes in v3:
- s/power-controller/power-management/g
- extend example

Changes in v2:
- Sort nodes by name
- Rename zynqmp-power to power-controller
- Keep only single patch for easier handling as done in v1

.../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 50 +++++++++++++++++++
1 file changed, 50 insertions(+)

diff --git a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml
index 98945220c33c..884917edb19d 100644
--- a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml
+++ b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml
@@ -41,6 +41,37 @@ properties:
"#power-domain-cells":
const: 1

+ gpio:
+ $ref: /schemas/gpio/xlnx,zynqmp-gpio-modepin.yaml#
+ description: The gpio node describes connect to PS_MODE pins via firmware
+ interface.
+ type: object
+
+ pcap:
+ $ref: /schemas/fpga/xlnx,zynqmp-pcap-fpga.yaml
+ description: The ZynqMP SoC uses the PCAP (Processor Configuration Port) to
+ configure the Programmable Logic (PL). The configuration uses the
+ firmware interface.
+ type: object
+
+ pinctrl:
+ $ref: /schemas/pinctrl/xlnx,zynqmp-pinctrl.yaml#
+ description: The pinctrl node provides access to pinconfig and pincontrol
+ functionality available in firmware.
+ type: object
+
+ power-management:
+ $ref: /schemas/power/reset/xlnx,zynqmp-power.yaml#
+ description: The zynqmp-power node describes the power management
+ configurations. It will control remote suspend/shutdown interfaces.
+ type: object
+
+ reset-controller:
+ $ref: /schemas/reset/xlnx,zynqmp-reset.yaml#
+ description: The reset-controller node describes connection to the reset
+ functionality via firmware interface.
+ type: object
+
versal-fpga:
$ref: /schemas/fpga/xlnx,versal-fpga.yaml#
description: Compatible of the FPGA device.
@@ -73,7 +104,26 @@ examples:
firmware {
zynqmp_firmware: zynqmp-firmware {
#power-domain-cells = <1>;
+ gpio {
+ compatible = "xlnx,zynqmp-gpio-modepin";
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+ pcap {
+ compatible = "xlnx,zynqmp-pcap-fpga";
+ };
+ pinctrl {
+ compatible = "xlnx,zynqmp-pinctrl";
};
+ power-management {
+ compatible = "xlnx,zynqmp-power";
+ interrupts = <0 35 4>;
+ };
+ reset-controller {
+ compatible = "xlnx,zynqmp-reset";
+ #reset-cells = <1>;
+ };
+ };
};

sata {
--
2.36.1


2023-12-21 12:29:14

by Michal Simek

[permalink] [raw]
Subject: [PATCH v3 2/4] dt-bindings: firmware: xilinx: Sort node names (clock-controller)

Nodes should be sorted that's why move clock-controller to the top of list.

Signed-off-by: Michal Simek <[email protected]>
Acked-by: Krzysztof Kozlowski <[email protected]>
---

(no changes since v2)

Changes in v2:
- New patch in series

.../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml
index 884917edb19d..51dc4e3afd25 100644
--- a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml
+++ b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-firmware.yaml
@@ -41,6 +41,15 @@ properties:
"#power-domain-cells":
const: 1

+ clock-controller:
+ $ref: /schemas/clock/xlnx,versal-clk.yaml#
+ description: The clock controller is a hardware block of Xilinx versal
+ clock tree. It reads required input clock frequencies from the devicetree
+ and acts as clock provider for all clock consumers of PS clocks.list of
+ clock specifiers which are external input clocks to the given clock
+ controller.
+ type: object
+
gpio:
$ref: /schemas/gpio/xlnx,zynqmp-gpio-modepin.yaml#
description: The gpio node describes connect to PS_MODE pins via firmware
@@ -84,15 +93,6 @@ properties:
vector.
type: object

- clock-controller:
- $ref: /schemas/clock/xlnx,versal-clk.yaml#
- description: The clock controller is a hardware block of Xilinx versal
- clock tree. It reads required input clock frequencies from the devicetree
- and acts as clock provider for all clock consumers of PS clocks.list of
- clock specifiers which are external input clocks to the given clock
- controller.
- type: object
-
required:
- compatible

--
2.36.1


2023-12-21 12:30:19

by Michal Simek

[permalink] [raw]
Subject: [PATCH v3 3/4] dt-bindings: power: reset: xilinx: Rename node names in examples

Rename zynqmp-power node name to power-management which is more aligned
with generic node name recommendation.

Signed-off-by: Michal Simek <[email protected]>
---

Changes in v3:
- s/power-controller/power-management/g
- align commit message

Changes in v2:
- New patch is series

.../devicetree/bindings/power/reset/xlnx,zynqmp-power.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.yaml b/Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.yaml
index 45792e216981..799831636194 100644
--- a/Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.yaml
+++ b/Documentation/devicetree/bindings/power/reset/xlnx,zynqmp-power.yaml
@@ -57,7 +57,7 @@ examples:

firmware {
zynqmp-firmware {
- zynqmp-power {
+ power-management {
compatible = "xlnx,zynqmp-power";
interrupts = <0 35 4>;
};
@@ -70,7 +70,7 @@ examples:

firmware {
zynqmp-firmware {
- zynqmp-power {
+ power-management {
compatible = "xlnx,zynqmp-power";
interrupt-parent = <&gic>;
interrupts = <0 35 4>;
--
2.36.1


2023-12-21 12:30:40

by Michal Simek

[permalink] [raw]
Subject: [PATCH v3 4/4] arm64: zynqmp: Rename zynqmp-power node to power-management

Rename zynqmp-power node name to power-management which is more aligned
with generic node name recommendation.

Signed-off-by: Michal Simek <[email protected]>
---

Changes in v3:
- s/power-controller/power-management/g
- update subject and commit message to match sed above

Changes in v2:
- New patch is series

arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/xilinx/zynqmp.dtsi b/arch/arm64/boot/dts/xilinx/zynqmp.dtsi
index eaba466804bc..ea1a9ba16246 100644
--- a/arch/arm64/boot/dts/xilinx/zynqmp.dtsi
+++ b/arch/arm64/boot/dts/xilinx/zynqmp.dtsi
@@ -186,7 +186,7 @@ zynqmp_firmware: zynqmp-firmware {
method = "smc";
bootph-all;

- zynqmp_power: zynqmp-power {
+ zynqmp_power: power-management {
bootph-all;
compatible = "xlnx,zynqmp-power";
interrupt-parent = <&gic>;
--
2.36.1


2023-12-21 20:38:50

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v3 1/4] dt-bindings: firmware: xilinx: Describe missing child nodes

On 21/12/2023 13:27, Michal Simek wrote:
> Firmware node has more than fpga, aes and clock child nodes but also power,
> reset, gpio, pinctrl and pcap which are not described yet.
> All of them have binding in separate files but there is missing connection
> to firmware node that's why describe it.
>
> Signed-off-by: Michal Simek <[email protected]>


Reviewed-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof


2023-12-21 20:50:53

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v3 3/4] dt-bindings: power: reset: xilinx: Rename node names in examples

On 21/12/2023 13:27, Michal Simek wrote:
> Rename zynqmp-power node name to power-management which is more aligned
> with generic node name recommendation.
>
> Signed-off-by: Michal Simek <[email protected]>


Acked-by: Krzysztof Kozlowski <[email protected]>


Best regards,
Krzysztof


2024-01-22 13:21:33

by Michal Simek

[permalink] [raw]
Subject: Re: [PATCH v3 0/4] dt-bindings: xilinx: Add missing firmware child nodes



On 12/21/23 13:27, Michal Simek wrote:
> Hi,
>
> series is converting missing descriptions for child nodes and also
> synchronizing name for power-management discussed with Krzysztof in v1
> version available here.
> https://lore.kernel.org/r/[email protected]
>
> Thanks,
> Michal
>
> Changes in v3:
> - s/power-controller/power-management/g
> - extend example
> - s/power-controller/power-management/g
> - align commit message
> - s/power-controller/power-management/g
> - update subject and commit message to match sed above
>
> Changes in v2:
> - Sort nodes by name
> - Rename zynqmp-power to power-controller
> - Keep only single patch for easier handling as done in v1
> - New patch in series
> - New patch is series
> - New patch is series
>
> Michal Simek (4):
> dt-bindings: firmware: xilinx: Describe missing child nodes
> dt-bindings: firmware: xilinx: Sort node names (clock-controller)
> dt-bindings: power: reset: xilinx: Rename node names in examples
> arm64: zynqmp: Rename zynqmp-power node to power-management
>
> .../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 68 ++++++++++++++++---
> .../power/reset/xlnx,zynqmp-power.yaml | 4 +-
> arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 2 +-
> 3 files changed, 62 insertions(+), 12 deletions(-)
>

Applied 1,2 and 4.

3 has been applied to v6.8-rc1 already by Sebastian as
97b9b383976e ("dt-bindings: power: reset: xilinx: Rename node names in examples")

Thanks,
Michal