Netdev List
 help / color / mirror / Atom feed
* [PATCH 0/2] dpll: zl3073x: add Microchip ZL30643 support
@ 2026-07-23 23:09 Vincent Jardin via B4 Relay
  2026-07-23 23:09 ` [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible Vincent Jardin via B4 Relay
  2026-07-23 23:09 ` [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support Vincent Jardin via B4 Relay
  0 siblings, 2 replies; 5+ messages in thread
From: Vincent Jardin via B4 Relay @ 2026-07-23 23:09 UTC (permalink / raw)
  To: Ivan Vecera, Prathosh Satish, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Vadim Fedorenko, Arkadiusz Kubalewski, Jiri Pirko
  Cc: netdev, devicetree, linux-kernel, Vincent Jardin

The Microchip ZL30643 (chip ID 0x0E3B) is a 3 DPLL channel member
of the ZL3073x family.

Patch 1 adds the binding.
Patch 2 registers the chip in the driver: the chip-info table and the
I2C, SPI and OF device-ID match tables.

It was tested on an LX2160A board with a ZL30733 and a ZL30643, both
are probed and they expose their DPLL channels.

Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
Vincent Jardin (2):
      dt-bindings: dpll: zl3073x: add ZL30643 compatible
      dpll: zl3073x: add ZL30643 chip support

 Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml | 1 +
 drivers/dpll/zl3073x/core.c                                   | 1 +
 drivers/dpll/zl3073x/i2c.c                                    | 2 ++
 drivers/dpll/zl3073x/spi.c                                    | 2 ++
 4 files changed, 6 insertions(+)
---
base-commit: 248951ddc14de84de3910f9b13f51491a8cd91df
change-id: 20260724-for-upstream-zl30643-8b23267b974f

Best regards,
-- 
Vincent Jardin <vjardin@free.fr>



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

* [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible
  2026-07-23 23:09 [PATCH 0/2] dpll: zl3073x: add Microchip ZL30643 support Vincent Jardin via B4 Relay
@ 2026-07-23 23:09 ` Vincent Jardin via B4 Relay
  2026-07-24 16:46   ` Conor Dooley
  2026-07-23 23:09 ` [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support Vincent Jardin via B4 Relay
  1 sibling, 1 reply; 5+ messages in thread
From: Vincent Jardin via B4 Relay @ 2026-07-23 23:09 UTC (permalink / raw)
  To: Ivan Vecera, Prathosh Satish, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Vadim Fedorenko, Arkadiusz Kubalewski, Jiri Pirko
  Cc: netdev, devicetree, linux-kernel, Vincent Jardin

From: Vincent Jardin <vjardin@free.fr>

The Microchip ZL30643 (chip ID 0x0E3B) is a 3 DPLL channel member
of the ZL3073x family. Add its compatible string to the binding enum.

Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
 Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml b/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
index fa5a8f8e390c..13ea55c2c146 100644
--- a/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
+++ b/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
@@ -18,6 +18,7 @@ description:
 properties:
   compatible:
     enum:
+      - microchip,zl30643
       - microchip,zl30731
       - microchip,zl30732
       - microchip,zl30733

-- 
2.43.0



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

* [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support
  2026-07-23 23:09 [PATCH 0/2] dpll: zl3073x: add Microchip ZL30643 support Vincent Jardin via B4 Relay
  2026-07-23 23:09 ` [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible Vincent Jardin via B4 Relay
@ 2026-07-23 23:09 ` Vincent Jardin via B4 Relay
  2026-07-27  8:36   ` Ivan Vecera
  1 sibling, 1 reply; 5+ messages in thread
From: Vincent Jardin via B4 Relay @ 2026-07-23 23:09 UTC (permalink / raw)
  To: Ivan Vecera, Prathosh Satish, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Vadim Fedorenko, Arkadiusz Kubalewski, Jiri Pirko
  Cc: netdev, devicetree, linux-kernel, Vincent Jardin

From: Vincent Jardin <vjardin@free.fr>

Register the Microchip ZL30643 (chip ID 0x0E3B), it is a 3 DPLL channel
of the ZL3073x family.

Once register, for instance, we get:

  devlink dev param set spi/spi0.0 name clock_id value 3733 cmode driverinit
  devlink dev reload spi/spi0.0
  devlink dev param set spi/spi2.1 name clock_id value 3643 cmode driverinit
  devlink dev reload spi/spi2.1

  dpll device show | grep clock-id
    clock-id: 3733
    clock-id: 3733
    clock-id: 3733
    clock-id: 3643
    clock-id: 3643
    clock-id: 3643

Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
 drivers/dpll/zl3073x/core.c | 1 +
 drivers/dpll/zl3073x/i2c.c  | 2 ++
 drivers/dpll/zl3073x/spi.c  | 2 ++
 3 files changed, 5 insertions(+)

diff --git a/drivers/dpll/zl3073x/core.c b/drivers/dpll/zl3073x/core.c
index 8e6416a4741d..4d07f69efb44 100644
--- a/drivers/dpll/zl3073x/core.c
+++ b/drivers/dpll/zl3073x/core.c
@@ -25,6 +25,7 @@
 
 static const struct zl3073x_chip_info zl3073x_chip_ids[] = {
 	ZL_CHIP_INFO(0x0E30, 2, ZL3073X_FLAG_REF_PHASE_COMP_32),
+	ZL_CHIP_INFO(0x0E3B, 3, ZL3073X_FLAG_REF_PHASE_COMP_32),
 	ZL_CHIP_INFO(0x0E93, 1, ZL3073X_FLAG_REF_PHASE_COMP_32),
 	ZL_CHIP_INFO(0x0E94, 2, ZL3073X_FLAG_REF_PHASE_COMP_32),
 	ZL_CHIP_INFO(0x0E95, 3, ZL3073X_FLAG_REF_PHASE_COMP_32),
diff --git a/drivers/dpll/zl3073x/i2c.c b/drivers/dpll/zl3073x/i2c.c
index 4a23340e29d0..f12c6306a85b 100644
--- a/drivers/dpll/zl3073x/i2c.c
+++ b/drivers/dpll/zl3073x/i2c.c
@@ -26,6 +26,7 @@ static int zl3073x_i2c_probe(struct i2c_client *client)
 }
 
 static const struct i2c_device_id zl3073x_i2c_id[] = {
+	{ .name = "zl30643" },
 	{ .name = "zl30731" },
 	{ .name = "zl30732" },
 	{ .name = "zl30733" },
@@ -36,6 +37,7 @@ static const struct i2c_device_id zl3073x_i2c_id[] = {
 MODULE_DEVICE_TABLE(i2c, zl3073x_i2c_id);
 
 static const struct of_device_id zl3073x_i2c_of_match[] = {
+	{ .compatible = "microchip,zl30643" },
 	{ .compatible = "microchip,zl30731" },
 	{ .compatible = "microchip,zl30732" },
 	{ .compatible = "microchip,zl30733" },
diff --git a/drivers/dpll/zl3073x/spi.c b/drivers/dpll/zl3073x/spi.c
index f024f42b78d0..d56c8d8ecc28 100644
--- a/drivers/dpll/zl3073x/spi.c
+++ b/drivers/dpll/zl3073x/spi.c
@@ -26,6 +26,7 @@ static int zl3073x_spi_probe(struct spi_device *spi)
 }
 
 static const struct spi_device_id zl3073x_spi_id[] = {
+	{ "zl30643" },
 	{ "zl30731" },
 	{ "zl30732" },
 	{ "zl30733" },
@@ -36,6 +37,7 @@ static const struct spi_device_id zl3073x_spi_id[] = {
 MODULE_DEVICE_TABLE(spi, zl3073x_spi_id);
 
 static const struct of_device_id zl3073x_spi_of_match[] = {
+	{ .compatible = "microchip,zl30643" },
 	{ .compatible = "microchip,zl30731" },
 	{ .compatible = "microchip,zl30732" },
 	{ .compatible = "microchip,zl30733" },

-- 
2.43.0



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

* Re: [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible
  2026-07-23 23:09 ` [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible Vincent Jardin via B4 Relay
@ 2026-07-24 16:46   ` Conor Dooley
  0 siblings, 0 replies; 5+ messages in thread
From: Conor Dooley @ 2026-07-24 16:46 UTC (permalink / raw)
  To: vjardin
  Cc: Ivan Vecera, Prathosh Satish, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Vadim Fedorenko, Arkadiusz Kubalewski, Jiri Pirko,
	netdev, devicetree, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1086 bytes --]

On Fri, Jul 24, 2026 at 01:09:12AM +0200, Vincent Jardin via B4 Relay wrote:
> From: Vincent Jardin <vjardin@free.fr>
> 
> The Microchip ZL30643 (chip ID 0x0E3B) is a 3 DPLL channel member
> of the ZL3073x family. Add its compatible string to the binding enum.
> 
> Signed-off-by: Vincent Jardin <vjardin@free.fr>

What about this device makes it incomaptible with existing ones?

Cheers,
Conor.

> ---
>  Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml b/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
> index fa5a8f8e390c..13ea55c2c146 100644
> --- a/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
> +++ b/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
> @@ -18,6 +18,7 @@ description:
>  properties:
>    compatible:
>      enum:
> +      - microchip,zl30643
>        - microchip,zl30731
>        - microchip,zl30732
>        - microchip,zl30733
> 
> -- 
> 2.43.0
> 
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

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

* Re: [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support
  2026-07-23 23:09 ` [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support Vincent Jardin via B4 Relay
@ 2026-07-27  8:36   ` Ivan Vecera
  0 siblings, 0 replies; 5+ messages in thread
From: Ivan Vecera @ 2026-07-27  8:36 UTC (permalink / raw)
  To: vjardin, Vincent Jardin via B4 Relay, Prathosh Satish,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vadim Fedorenko,
	Arkadiusz Kubalewski, Jiri Pirko
  Cc: netdev, devicetree, linux-kernel, Vincent Jardin



24. července 2026 1:09:13 SELČ, Vincent Jardin via B4 Relay <devnull+vjardin.free.fr@kernel.org> napsal:
>From: Vincent Jardin <vjardin@free.fr>
>
>Register the Microchip ZL30643 (chip ID 0x0E3B), it is a 3 DPLL channel
>of the ZL3073x family.
>
>Once register, for instance, we get:
>
>  devlink dev param set spi/spi0.0 name clock_id value 3733 cmode driverinit
>  devlink dev reload spi/spi0.0
>  devlink dev param set spi/spi2.1 name clock_id value 3643 cmode driverinit
>  devlink dev reload spi/spi2.1
>
>  dpll device show | grep clock-id
>    clock-id: 3733
>    clock-id: 3733
>    clock-id: 3733
>    clock-id: 3643
>    clock-id: 3643
>    clock-id: 3643
>
>Signed-off-by: Vincent Jardin <vjardin@free.fr>
>---
> drivers/dpll/zl3073x/core.c | 1 +
> drivers/dpll/zl3073x/i2c.c  | 2 ++
> drivers/dpll/zl3073x/spi.c  | 2 ++
> 3 files changed, 5 insertions(+)
>

Hi Vincent,
I'm not sure that all driver's functionality is supported by ZL3064x. Did you test everything?

I need to check datasheets for this chip models, maybe some device flags will be needed.

Thanks
Ivan

>diff --git a/drivers/dpll/zl3073x/core.c b/drivers/dpll/zl3073x/core.c
>index 8e6416a4741d..4d07f69efb44 100644
>--- a/drivers/dpll/zl3073x/core.c
>+++ b/drivers/dpll/zl3073x/core.c
>@@ -25,6 +25,7 @@
> 
> static const struct zl3073x_chip_info zl3073x_chip_ids[] = {
> 	ZL_CHIP_INFO(0x0E30, 2, ZL3073X_FLAG_REF_PHASE_COMP_32),
>+	ZL_CHIP_INFO(0x0E3B, 3, ZL3073X_FLAG_REF_PHASE_COMP_32),
> 	ZL_CHIP_INFO(0x0E93, 1, ZL3073X_FLAG_REF_PHASE_COMP_32),
> 	ZL_CHIP_INFO(0x0E94, 2, ZL3073X_FLAG_REF_PHASE_COMP_32),
> 	ZL_CHIP_INFO(0x0E95, 3, ZL3073X_FLAG_REF_PHASE_COMP_32),
>diff --git a/drivers/dpll/zl3073x/i2c.c b/drivers/dpll/zl3073x/i2c.c
>index 4a23340e29d0..f12c6306a85b 100644
>--- a/drivers/dpll/zl3073x/i2c.c
>+++ b/drivers/dpll/zl3073x/i2c.c
>@@ -26,6 +26,7 @@ static int zl3073x_i2c_probe(struct i2c_client *client)
> }
> 
> static const struct i2c_device_id zl3073x_i2c_id[] = {
>+	{ .name = "zl30643" },
> 	{ .name = "zl30731" },
> 	{ .name = "zl30732" },
> 	{ .name = "zl30733" },
>@@ -36,6 +37,7 @@ static const struct i2c_device_id zl3073x_i2c_id[] = {
> MODULE_DEVICE_TABLE(i2c, zl3073x_i2c_id);
> 
> static const struct of_device_id zl3073x_i2c_of_match[] = {
>+	{ .compatible = "microchip,zl30643" },
> 	{ .compatible = "microchip,zl30731" },
> 	{ .compatible = "microchip,zl30732" },
> 	{ .compatible = "microchip,zl30733" },
>diff --git a/drivers/dpll/zl3073x/spi.c b/drivers/dpll/zl3073x/spi.c
>index f024f42b78d0..d56c8d8ecc28 100644
>--- a/drivers/dpll/zl3073x/spi.c
>+++ b/drivers/dpll/zl3073x/spi.c
>@@ -26,6 +26,7 @@ static int zl3073x_spi_probe(struct spi_device *spi)
> }
> 
> static const struct spi_device_id zl3073x_spi_id[] = {
>+	{ "zl30643" },
> 	{ "zl30731" },
> 	{ "zl30732" },
> 	{ "zl30733" },
>@@ -36,6 +37,7 @@ static const struct spi_device_id zl3073x_spi_id[] = {
> MODULE_DEVICE_TABLE(spi, zl3073x_spi_id);
> 
> static const struct of_device_id zl3073x_spi_of_match[] = {
>+	{ .compatible = "microchip,zl30643" },
> 	{ .compatible = "microchip,zl30731" },
> 	{ .compatible = "microchip,zl30732" },
> 	{ .compatible = "microchip,zl30733" },
>


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

end of thread, other threads:[~2026-07-27  8:36 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-23 23:09 [PATCH 0/2] dpll: zl3073x: add Microchip ZL30643 support Vincent Jardin via B4 Relay
2026-07-23 23:09 ` [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible Vincent Jardin via B4 Relay
2026-07-24 16:46   ` Conor Dooley
2026-07-23 23:09 ` [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support Vincent Jardin via B4 Relay
2026-07-27  8:36   ` Ivan Vecera

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox