2023-07-21 04:48:50

by Mehta, Piyush

[permalink] [raw]
Subject: [PATCH V2 0/2] reset: reset-zynqmp: add support for Versal NET platform

Extended the ZynqMP and versal reset driver to support Versal NET platform,
accordingly added compatible string dt-binding for the Versal NET platform
specific.

The Versal Net device includes more security features in the platform
management controller (PMC) and increases the number of CPUs in the
application processing unit (APU) and the real-time processing unit (RPU).

---
Changes in V2:
- Addressed Krzysztof and Conor review comments:
- Updated the commit message [1/2] with detail description of Versal NET SoC.
- Removed the dt-bindings include versal NET header from the binding documents
as it is not used by the driver.

Link: https://lore.kernel.org/lkml/[email protected]/
---

Piyush Mehta (2):
dt-bindings: reset: Updated binding for Versal-NET reset driver
reset: reset-zynqmp: add support for Versal NET platform

.../devicetree/bindings/reset/xlnx,zynqmp-reset.yaml | 1 +
drivers/reset/reset-zynqmp.c | 7 +++++++
2 files changed, 8 insertions(+)

--
2.25.1



2023-07-21 05:06:14

by Mehta, Piyush

[permalink] [raw]
Subject: [PATCH V2 2/2] reset: reset-zynqmp: add support for Versal NET platform

Updated the reset driver to support Versal NET platform.
As part of adding support for versal NET:
- Added Versal NET specific compatible string.
- Reset Id and number of resets.

Signed-off-by: Piyush Mehta <[email protected]>
---
drivers/reset/reset-zynqmp.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/reset/reset-zynqmp.c b/drivers/reset/reset-zynqmp.c
index 59dc0ff9af9e..2391ac16a180 100644
--- a/drivers/reset/reset-zynqmp.c
+++ b/drivers/reset/reset-zynqmp.c
@@ -14,6 +14,7 @@
#define ZYNQMP_NR_RESETS (ZYNQMP_PM_RESET_END - ZYNQMP_PM_RESET_START)
#define ZYNQMP_RESET_ID ZYNQMP_PM_RESET_START
#define VERSAL_NR_RESETS 95
+#define VERSAL_NET_NR_RESETS 176

struct zynqmp_reset_soc_data {
u32 reset_id;
@@ -88,6 +89,11 @@ static const struct zynqmp_reset_soc_data versal_reset_data = {
.num_resets = VERSAL_NR_RESETS,
};

+static const struct zynqmp_reset_soc_data versal_net_reset_data = {
+ .reset_id = 0,
+ .num_resets = VERSAL_NET_NR_RESETS,
+};
+
static const struct reset_control_ops zynqmp_reset_ops = {
.reset = zynqmp_reset_reset,
.assert = zynqmp_reset_assert,
@@ -122,6 +128,7 @@ static int zynqmp_reset_probe(struct platform_device *pdev)
static const struct of_device_id zynqmp_reset_dt_ids[] = {
{ .compatible = "xlnx,zynqmp-reset", .data = &zynqmp_reset_data, },
{ .compatible = "xlnx,versal-reset", .data = &versal_reset_data, },
+ { .compatible = "xlnx,versal-net-reset", .data = &versal_net_reset_data, },
{ /* sentinel */ },
};

--
2.25.1


2023-08-08 21:44:37

by Philipp Zabel

[permalink] [raw]
Subject: Re: [PATCH V2 0/2] reset: reset-zynqmp: add support for Versal NET platform

On Fr, 2023-07-21 at 09:41 +0530, Piyush Mehta wrote:
> Extended the ZynqMP and versal reset driver to support Versal NET platform,
> accordingly added compatible string dt-binding for the Versal NET platform
> specific.
>
> The Versal Net device includes more security features in the platform
> management controller (PMC) and increases the number of CPUs in the
> application processing unit (APU) and the real-time processing unit (RPU).

Thank you, applied to reset/next.

regards
Philipp