* [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support
@ 2025-05-15 15:56 Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD Ioana Ciornei
` (5 more replies)
0 siblings, 6 replies; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
The MDIO mux on the LX2160AQDS, LX2162AQDS and LS1028AQDS boards never
worked in mainline. The DT files were submitted initially as-is, and
there is a downstream driver for the QIXIS CPLD device:
https://github.com/nxp-qoriq/linux/blob/lf-6.12.y/drivers/soc/fsl/qixis_ctrl.c
Since the HW works with the already existing
driver/mfd/similar-mfd-i2c.c driver, extend the list of compatible
strings to also cover these 3 new boards, instead of trying to upstream
a duplicate driver.
This patch set also adapts the DT nodes for each of the affected boards
so that we match on the new compatible strings. Since we want the QIXIS
CPLD to have child nodes with "reg" and the current format lacks that,
change the compatible string so that we make it clear that by using the
simple-mfd-i2c driver we expect dt nodes children with the reg property.
Since the QDS (QorIQ Development System) boards are not made to deploy
any production software on them, but rather made to be used exclusively
by engineers to test/prototype SoC features, breaking compatibility with
device trees is not an issue.
The last patch describes the two on-board RGMII PHYs found on the
LX2160AQDS boards which make use of the MDIO bus found behind the CPLD
driven MDIO mux.
Changes in v3:
- 1/6: reworded the commit message, updated the regex to only accept
children with bus addressing, removed unnecessary '|'
Changes in v2:
- 1/6: renamed the compatible strings so that it does not mention the i2c
part, which is redundant
- 1/6: remove the description from the reg property
- 1/6: reordered the properties when mentioned in the required section
- 1/6: updated the example so that it actually reflects the expected DT
- 2/6: use the new compatible strings
- 3,4,5/6: updated the commit message to explain better the context
- 3,4,5/6: used the new compatible string
Ioana Ciornei (5):
dt-bindings: mfd: add bindings for QIXIS CPLD
mfd: simple-mfd-i2c: add compatible string for Layerscape QIXIS CPLD
arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c
driver
arm64: dts: lx2162a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c
driver
arm64: dts: lx2160a-qds: add the two on-board RGMII PHYs
Vladimir Oltean (1):
arm64: dts: ls1028a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c
driver
.../mfd/fsl,ls1028a-qds-qixis-cpld.yaml | 65 +++++++++++++++++++
.../boot/dts/freescale/fsl-ls1028a-qds.dts | 9 +--
.../boot/dts/freescale/fsl-lx2160a-qds.dts | 28 +++++++-
.../boot/dts/freescale/fsl-lx2162a-qds.dts | 8 ++-
drivers/mfd/simple-mfd-i2c.c | 3 +
5 files changed, 103 insertions(+), 10 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mfd/fsl,ls1028a-qds-qixis-cpld.yaml
--
2.25.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
@ 2025-05-15 15:56 ` Ioana Ciornei
2025-05-16 19:38 ` Krzysztof Kozlowski
2025-05-15 15:56 ` [PATCH v3 2/6] mfd: simple-mfd-i2c: add compatible string for Layerscape " Ioana Ciornei
` (4 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
Add device tree bindings for the board management controller - QIXIS
CPLD - found on some Layerscape based boards such as LX2162A-QDS,
LX2160AQDS, LS1028AQDS etc.
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
Changes in v3:
- reworded the commit message, updated the regex to only accept
children with bus addressing, removed unnecessary '|'
Changes in v2:
- renamed the compatible strings so that it does not mention the i2c
part, which is redundant
- remove the description from the reg property
- reordered the properties when mentioned in the required section
- updated the example so that it actually reflects the expected DT
.../mfd/fsl,ls1028a-qds-qixis-cpld.yaml | 65 +++++++++++++++++++
1 file changed, 65 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/fsl,ls1028a-qds-qixis-cpld.yaml
diff --git a/Documentation/devicetree/bindings/mfd/fsl,ls1028a-qds-qixis-cpld.yaml b/Documentation/devicetree/bindings/mfd/fsl,ls1028a-qds-qixis-cpld.yaml
new file mode 100644
index 000000000000..e54aee572092
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/fsl,ls1028a-qds-qixis-cpld.yaml
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/fsl,ls1028a-qds-qixis-cpld.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NXP's QIXIS CPLD board management controller
+
+maintainers:
+ - Ioana Ciornei <ioana.ciornei@nxp.com>
+
+description:
+ The board management controller found on some Layerscape boards contains
+ different IP blocks like GPIO controllers, interrupt controllers, reg-muxes
+ etc. The QIXIS CPLD on these boards presents itself as an I2C device.
+
+properties:
+ compatible:
+ enum:
+ - fsl,ls1028a-qds-qixis-cpld
+ - fsl,lx2160a-qds-qixis-cpld
+ - fsl,lx2162a-qds-qixis-cpld
+
+ reg:
+ maxItems: 1
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+patternProperties:
+ '^mux-controller(@[a-f0-9]+)$':
+ $ref: /schemas/mux/reg-mux.yaml#
+
+required:
+ - compatible
+ - reg
+ - "#address-cells"
+ - "#size-cells"
+
+additionalProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ cpld@66 {
+ compatible = "fsl,lx2160a-qds-qixis-cpld";
+ reg = <0x66>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ mux: mux-controller@54 {
+ compatible = "reg-mux";
+ reg = <0x54>;
+ #mux-control-cells = <1>;
+ mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
+ <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
+ };
+ };
+ };
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 2/6] mfd: simple-mfd-i2c: add compatible string for Layerscape QIXIS CPLD
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD Ioana Ciornei
@ 2025-05-15 15:56 ` Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 3/6] arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver Ioana Ciornei
` (3 subsequent siblings)
5 siblings, 0 replies; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
The QIXIS CPLD found on Layerscape boards such as LX2160AQDS, LS1028AQDS
etc deals with power-on-reset timing, muxing etc. Use the simple-mfd-i2c
as its core driver by adding an individual compatible string for each
board. By using the simple-mfd-i2c driver any child device will have
access to the i2c regmap created by it.
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
Changes in v3:
- none
Changes in v2:
- use the new compatible strings
drivers/mfd/simple-mfd-i2c.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/mfd/simple-mfd-i2c.c b/drivers/mfd/simple-mfd-i2c.c
index 22159913bea0..2ae47282e658 100644
--- a/drivers/mfd/simple-mfd-i2c.c
+++ b/drivers/mfd/simple-mfd-i2c.c
@@ -99,6 +99,9 @@ static const struct of_device_id simple_mfd_i2c_of_match[] = {
{ .compatible = "maxim,max5970", .data = &maxim_max5970},
{ .compatible = "maxim,max5978", .data = &maxim_max5970},
{ .compatible = "maxim,max77705-battery", .data = &maxim_mon_max77705},
+ { .compatible = "fsl,lx2160a-qds-qixis-cpld" },
+ { .compatible = "fsl,lx2162a-qds-qixis-cpld" },
+ { .compatible = "fsl,ls1028a-qds-qixis-cpld" },
{}
};
MODULE_DEVICE_TABLE(of, simple_mfd_i2c_of_match);
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 3/6] arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 2/6] mfd: simple-mfd-i2c: add compatible string for Layerscape " Ioana Ciornei
@ 2025-05-15 15:56 ` Ioana Ciornei
2025-05-16 19:40 ` Krzysztof Kozlowski
2025-05-15 15:56 ` [PATCH v3 4/6] arm64: dts: lx2162a-qds: " Ioana Ciornei
` (2 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
The MDIO mux on the LX2160A-QDS never worked in mainline. This is
because the on-board QIXIS FPGA does not have a driver that could probe
it and register an I2C regmap for it which could, afterwards, be used by
the child devices - such as the mux-controller.
There is a downstream driver for the QIXIS CPLD:
https://github.com/nxp-qoriq/linux/blob/lf-6.12.y/drivers/soc/fsl/qixis_ctrl.c
That driver is very similar to the already existing drivers/mfd/simple-mfd-i2c.c,
and the hardware works with the simple-mfd-i2c driver, so there isn't
any reason to upstream the other one.
Since we want the QIXIS CPLD to have child nodes with "reg" and the
current format lacks that, change the compatible string so that we make
it clear that by using the simple-mfd-i2c driver, and its
fsl,lx2160a-qds-qixis-cpld compatible, we expect dt nodes children with
the reg property.
Since the QDS (QorIQ Development System) boards are not made to deploy
any production software on them, but rather made to be used exclusively
by engineers to test/prototype SoC features, breaking compatibility with
device trees is not an issue.
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
Changes in v3:
- none
Changes in v2:
- updated the commit message to explain better the context
- used the new compatible string
arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts
index 4d721197d837..426fb4c39ab8 100644
--- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts
@@ -240,12 +240,14 @@ &i2c0 {
status = "okay";
fpga@66 {
- compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
- "simple-mfd";
+ compatible = "fsl,lx2160a-qds-qixis-cpld";
reg = <0x66>;
+ #address-cells = <1>;
+ #size-cells = <0>;
- mux: mux-controller {
+ mux: mux-controller@54 {
compatible = "reg-mux";
+ reg = <0x54>;
#mux-control-cells = <1>;
mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
<0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 4/6] arm64: dts: lx2162a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
` (2 preceding siblings ...)
2025-05-15 15:56 ` [PATCH v3 3/6] arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver Ioana Ciornei
@ 2025-05-15 15:56 ` Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 5/6] arm64: dts: ls1028a-qds: " Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 6/6] arm64: dts: lx2160a-qds: add the two on-board RGMII PHYs Ioana Ciornei
5 siblings, 0 replies; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
The MDIO mux on the LX2162A-QDS never worked in mainline. This is
because the on-board QIXIS FPGA does not have a driver that could probe
it and register an I2C regmap for it which could, afterwards, be used by
the child devices - such as the mux-controller.
There is a downstream driver for the QIXIS CPLD:
https://github.com/nxp-qoriq/linux/blob/lf-6.12.y/drivers/soc/fsl/qixis_ctrl.c
That driver is very similar to the already existing drivers/mfd/simple-mfd-i2c.c,
and the hardware works with the simple-mfd-i2c driver, so there isn't
any reason to upstream the other one.
Since we want the QIXIS CPLD to have child nodes with "reg" and the
current format lacks that, change the compatible string so that we make
it clear that by using the simple-mfd-i2c driver, and its
fsl,lx2162a-qds-qixis-cpld compatible, we expect dt nodes children with
the reg property.
Since the QDS (QorIQ Development System) boards are not made to deploy
any production software on them, but rather made to be used exclusively
by engineers to test/prototype SoC features, breaking compatibility with
device trees is not an issue.
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
Changes in v3:
- none
Changes in v2:
- updated the commit message to explain better the context
- used the new compatible string
arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
index 9f5ff1ffe7d5..9c0c7724d569 100644
--- a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
@@ -267,12 +267,14 @@ &i2c0 {
status = "okay";
fpga@66 {
- compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
- "simple-mfd";
+ compatible = "fsl,lx2162a-qds-qixis-cpld";
reg = <0x66>;
+ #address-cells = <1>;
+ #size-cells = <0>;
- mux: mux-controller {
+ mux: mux-controller@54 {
compatible = "reg-mux";
+ reg = <0x54>;
#mux-control-cells = <1>;
mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
<0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 5/6] arm64: dts: ls1028a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
` (3 preceding siblings ...)
2025-05-15 15:56 ` [PATCH v3 4/6] arm64: dts: lx2162a-qds: " Ioana Ciornei
@ 2025-05-15 15:56 ` Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 6/6] arm64: dts: lx2160a-qds: add the two on-board RGMII PHYs Ioana Ciornei
5 siblings, 0 replies; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
From: Vladimir Oltean <vladimir.oltean@nxp.com>
The MDIO mux on the LS1028AA-QDS never worked in mainline. This is
because the on-board QIXIS FPGA does not have a driver that could probe
it and register an I2C regmap for it which could, afterwards, be used by
the child devices - such as the mux-controller.
There is a downstream driver for the QIXIS CPLD:
https://github.com/nxp-qoriq/linux/blob/lf-6.12.y/drivers/soc/fsl/qixis_ctrl.c
That driver is very similar to the already existing drivers/mfd/simple-mfd-i2c.c,
and the hardware works with the simple-mfd-i2c driver, so there isn't
any reason to upstream the other one.
Since we want the QIXIS CPLD to have child nodes with "reg" and the
current format lacks that, change the compatible string so that we make
it clear that by using the simple-mfd-i2c driver, and its
fsl,ls1028a-qds-qixis-cpld compatible, we expect dt nodes children with
the reg property.
Since the QDS (QorIQ Development System) boards are not made to deploy
any production software on them, but rather made to be used exclusively
by engineers to test/prototype SoC features, breaking compatibility with
device trees is not an issue.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
Changes in v3:
- none
Changes in v2:
- updated the commit message to explain better the context
- used the new compatible string
arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
index 0bb2f28a0441..40e1bae52ef5 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
@@ -338,17 +338,18 @@ sgtl5000: audio-codec@a {
};
fpga@66 {
- compatible = "fsl,ls1028aqds-fpga", "fsl,fpga-qixis-i2c",
- "simple-mfd";
+ compatible = "fsl,ls1028a-qds-qixis-cpld";
reg = <0x66>;
+ #address-cells = <1>;
+ #size-cells = <0>;
- mux: mux-controller {
+ mux: mux-controller@54 {
compatible = "reg-mux";
+ reg = <0x54>;
#mux-control-cells = <1>;
mux-reg-masks = <0x54 0xf0>; /* 0: reg 0x54, bits 7:4 */
};
};
-
};
&i2c1 {
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 6/6] arm64: dts: lx2160a-qds: add the two on-board RGMII PHYs
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
` (4 preceding siblings ...)
2025-05-15 15:56 ` [PATCH v3 5/6] arm64: dts: ls1028a-qds: " Ioana Ciornei
@ 2025-05-15 15:56 ` Ioana Ciornei
5 siblings, 0 replies; 9+ messages in thread
From: Ioana Ciornei @ 2025-05-15 15:56 UTC (permalink / raw)
To: lee, robh, krzk+dt, conor+dt, shawnguo, devicetree, linux-kernel,
linux-arm-kernel, vladimir.oltean
Cc: Ioana Ciornei
Describe the two LX2160AQDS on-board RGMII PHYs on their respective MDIO
buses behind the MDIO multiplexer.
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
Changes in v3:
- none
Changes in v2:
- none
.../boot/dts/freescale/fsl-lx2160a-qds.dts | 20 +++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts
index 426fb4c39ab8..be65fb559107 100644
--- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-qds.dts
@@ -43,12 +43,22 @@ mdio@0 { /* On-board PHY #1 RGMI1*/
reg = <0x00>;
#address-cells = <1>;
#size-cells = <0>;
+
+ rgmii_phy1: ethernet-phy@1 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x1>;
+ };
};
mdio@8 { /* On-board PHY #2 RGMI2*/
reg = <0x8>;
#address-cells = <1>;
#size-cells = <0>;
+
+ rgmii_phy2: ethernet-phy@2 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x2>;
+ };
};
mdio@18 { /* Slot #1 */
@@ -169,6 +179,16 @@ &crypto {
status = "okay";
};
+&dpmac17 {
+ phy-handle = <&rgmii_phy1>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dpmac18 {
+ phy-handle = <&rgmii_phy2>;
+ phy-connection-type = "rgmii-id";
+};
+
&dspi0 {
status = "okay";
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD
2025-05-15 15:56 ` [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD Ioana Ciornei
@ 2025-05-16 19:38 ` Krzysztof Kozlowski
0 siblings, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-16 19:38 UTC (permalink / raw)
To: Ioana Ciornei, lee, robh, krzk+dt, conor+dt, shawnguo, devicetree,
linux-kernel, linux-arm-kernel, vladimir.oltean
On 15/05/2025 17:56, Ioana Ciornei wrote:
> + const: 1
> +
> + "#size-cells":
> + const: 0
> +
> +patternProperties:
> + '^mux-controller(@[a-f0-9]+)$':
Drop ()
> + $ref: /schemas/mux/reg-mux.yaml#
> +
> +required
> + - compatible
> + - reg
> + - "#address-cells"
Keep consistent quotes, either ' or "
> + - "#size-cells"
> +
> +additionalProperties: false
> +
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 3/6] arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver
2025-05-15 15:56 ` [PATCH v3 3/6] arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver Ioana Ciornei
@ 2025-05-16 19:40 ` Krzysztof Kozlowski
0 siblings, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-16 19:40 UTC (permalink / raw)
To: Ioana Ciornei, lee, robh, krzk+dt, conor+dt, shawnguo, devicetree,
linux-kernel, linux-arm-kernel, vladimir.oltean
On 15/05/2025 17:56, Ioana Ciornei wrote:
> The MDIO mux on the LX2160A-QDS never worked in mainline. This is
> because the on-board QIXIS FPGA does not have a driver that could probe
> it and register an I2C regmap for it which could, afterwards, be used by
> the child devices - such as the mux-controller.
>
> There is a downstream driver for the QIXIS CPLD:
>
> https://github.com/nxp-qoriq/linux/blob/lf-6.12.y/drivers/soc/fsl/qixis_ctrl.c
>
> That driver is very similar to the already existing drivers/mfd/simple-mfd-i2c.c,
> and the hardware works with the simple-mfd-i2c driver, so there isn't
> any reason to upstream the other one.
>
> Since we want the QIXIS CPLD to have child nodes with "reg" and the
> current format lacks that, change the compatible string so that we make
> it clear that by using the simple-mfd-i2c driver, and its
> fsl,lx2160a-qds-qixis-cpld compatible, we expect dt nodes children with
> the reg property.
We are repeating the same over and over and I am getting bored. I do not
see any reason to change the compatible. Whether you want to use
simple-mfd driver or not, is not relevant here. Does not matter. Whether
device was really working or not, is not relevant either.
There is a device with given compatible, explain why this compatible is
wrong. Without arguments for that, old compatible must stay.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-05-16 21:40 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-15 15:56 [PATCH v3 0/6] mfd: simple-mfd-i2c: add QIXIS CPLD support Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD Ioana Ciornei
2025-05-16 19:38 ` Krzysztof Kozlowski
2025-05-15 15:56 ` [PATCH v3 2/6] mfd: simple-mfd-i2c: add compatible string for Layerscape " Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 3/6] arm64: dts: lx2160a-qds: make the QIXIS CPLD use the simple-mfd-i2c.c driver Ioana Ciornei
2025-05-16 19:40 ` Krzysztof Kozlowski
2025-05-15 15:56 ` [PATCH v3 4/6] arm64: dts: lx2162a-qds: " Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 5/6] arm64: dts: ls1028a-qds: " Ioana Ciornei
2025-05-15 15:56 ` [PATCH v3 6/6] arm64: dts: lx2160a-qds: add the two on-board RGMII PHYs Ioana Ciornei
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).