* [PATCH 0/2] dpll: zl3073x: add Microchip ZL30643 support
@ 2026-07-23 23:09 ` Vincent Jardin
0 siblings, 0 replies; 8+ 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] 8+ messages in thread
* [PATCH 0/2] dpll: zl3073x: add Microchip ZL30643 support
@ 2026-07-23 23:09 ` Vincent Jardin
0 siblings, 0 replies; 8+ messages in thread
From: Vincent Jardin @ 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] 8+ messages in thread
* [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible
2026-07-23 23:09 ` Vincent Jardin
@ 2026-07-23 23:09 ` Vincent Jardin
-1 siblings, 0 replies; 8+ 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] 8+ messages in thread
* [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible
@ 2026-07-23 23:09 ` Vincent Jardin
0 siblings, 0 replies; 8+ messages in thread
From: Vincent Jardin @ 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. 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] 8+ messages in thread
* [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support
2026-07-23 23:09 ` Vincent Jardin
@ 2026-07-23 23:09 ` Vincent Jardin
-1 siblings, 0 replies; 8+ 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] 8+ messages in thread
* [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support
@ 2026-07-23 23:09 ` Vincent Jardin
0 siblings, 0 replies; 8+ messages in thread
From: Vincent Jardin @ 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
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] 8+ messages in thread
* Re: [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible
2026-07-23 23:09 ` Vincent Jardin
(?)
@ 2026-07-24 16:46 ` Conor Dooley
-1 siblings, 0 replies; 8+ 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] 8+ messages in thread
* Re: [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible
2026-07-23 23:09 ` Vincent Jardin
(?)
(?)
@ 2026-07-24 23:09 ` sashiko-bot
-1 siblings, 0 replies; 8+ messages in thread
From: sashiko-bot @ 2026-07-24 23:09 UTC (permalink / raw)
To: Vincent Jardin; +Cc: devicetree, robh, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Incomplete Implementation: Missing driver support for microchip,zl30643.
--
--- Patch [1]: [PATCH 1/2] dt-bindings: dpll: zl3073x: add ZL30643 compatible ---
commit 890eef3f2bfb25bd5d633b88f0a74281dde779f7
Author: Vincent Jardin <vjardin@free.fr>
dt-bindings: dpll: zl3073x: add ZL30643 compatible
This commit adds the microchip,zl30643 compatible string to the ZL3073x
family device tree binding schema.
> diff --git a/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml b/Documentation/devicetree/bindings/dpll/microchip,zl30731.yaml
> index fa5a8f8e390cd..13ea55c2c1467 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
[Severity: Medium]
Are there accompanying driver changes for this new compatible string, or is
this regression expected to be addressed in a subsequent patch in a series?
If a device tree uses this new compatible string, it appears the device will
fail to bind and probe. The zl3073x_i2c_of_match table in
drivers/dpll/zl3073x/i2c.c and the zl3073x_spi_of_match table in
drivers/dpll/zl3073x/spi.c currently do not include "microchip,zl30643".
Additionally, the commit message mentions the ZL30643 has a chip ID of
0x0E3B, but this ID is missing from the zl3073x_chip_ids array in
drivers/dpll/zl3073x/core.c. Without it, zl3073x_dev_probe() will fail to
identify the device and return -ENODEV.
> - microchip,zl30731
> - microchip,zl30732
> - microchip,zl30733
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260724-for-upstream-zl30643-v1-0-ea93ba4d85c8@free.fr?part=1
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-07-24 23:09 UTC | newest]
Thread overview: 8+ 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 ` Vincent Jardin
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
2026-07-24 16:46 ` Conor Dooley
2026-07-24 23:09 ` sashiko-bot
2026-07-23 23:09 ` [PATCH 2/2] dpll: zl3073x: add ZL30643 chip support Vincent Jardin via B4 Relay
2026-07-23 23:09 ` Vincent Jardin
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.