On Fri, Aug 16, 2024 at 03:27:41PM -0600, Rob Herring wrote: > On Tue, Aug 13, 2024 at 12:36:29PM -0400, Frank Li wrote: > > Convert binding doc fsl-board.txt to yaml format. split to 3 part > > fsl,bcsr.yaml, fsl,fpga-qixis.yaml, fsl,fpga-qixis-i2c.yaml > > > > Additional change for fsl,fpga-qixis.yaml > > - Add childnode mdio-mux-emi* > > - Add compatible string fsl,ls1043aqds-fpga, fsl,ls1043ardb-fpga, > > fsl,ls1046aqds-fpga, fsl,ls1046ardb-fpga, fsl,ls208xaqds-fpga, > > fsl,ls1043ardb-cpld, fsl,ls1046ardb-cpld, fsl,ls1088aqds-fpga, > > fsl,ls1088ardb-fpga, fsl,ls2080aqds-fpga, fsl,ls2080ardb-fpga. > > - Change address to 32bit in example. > > > > Additional change for fsl,fpga-qixis-i2c.yaml > > - Add mux-controller > > - Add compatible string fsl,ls1028aqds-fpga, fsl,lx2160aqds-fpga > > > > Fix below warning: > > > > arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dtb: /soc/i2c@2000000/fpga@66: failed to match any schema with compatible: ['fsl,ls1028aqds-fpga', 'fsl,fpga-qixis-i2c', 'simple-mfd'] > > > > Signed-off-by: Frank Li <Frank.Li@xxxxxxx> > > --- > > Change from v1 to v2 > > - drop description in fsl,bcsr.yaml > > - bsc9132qds is too old, their dts have not simple-mfd. > > - split qixis-i2c compatible to two group, one with simple-mfd and the > > other one without simple-mfd. > > - Add new full example for ls1028 > > - Remove [0-9], keep @ for mdio-mux-emi. Dts need be update to avoid > > warning > > - fix typo dt-binding in subject > > --- > > .../devicetree/bindings/board/fsl,bcsr.yaml | 32 ++++++++ > > .../bindings/board/fsl,fpga-qixis-i2c.yaml | 70 ++++++++++++++++ > > .../bindings/board/fsl,fpga-qixis.yaml | 81 +++++++++++++++++++ > > .../devicetree/bindings/board/fsl-board.txt | 81 ------------------- > > .../boot/dts/freescale/fsl-ls1043a-qds.dts | 2 +- > > 5 files changed, 184 insertions(+), 82 deletions(-) > > create mode 100644 Documentation/devicetree/bindings/board/fsl,bcsr.yaml > > create mode 100644 Documentation/devicetree/bindings/board/fsl,fpga-qixis-i2c.yaml > > create mode 100644 Documentation/devicetree/bindings/board/fsl,fpga-qixis.yaml > > delete mode 100644 Documentation/devicetree/bindings/board/fsl-board.txt > > > > diff --git a/Documentation/devicetree/bindings/board/fsl,bcsr.yaml b/Documentation/devicetree/bindings/board/fsl,bcsr.yaml > > new file mode 100644 > > index 0000000000000..df3dd8399671f > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/board/fsl,bcsr.yaml > > @@ -0,0 +1,32 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/board/fsl,bcsr.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Board Control and Status > > + > > +maintainers: > > + - Frank Li <Frank.Li@xxxxxxx> > > + > > +properties: > > + compatible: > > + enum: > > + - fsl,mpc8360mds-bcsr > > + > > + reg: > > + maxItems: 1 > > + > > +required: > > + - compatible > > + - reg > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + board@f8000000 { > > + compatible = "fsl,mpc8360mds-bcsr"; > > + reg = <0xf8000000 0x8000>; > > + }; > > + > > diff --git a/Documentation/devicetree/bindings/board/fsl,fpga-qixis-i2c.yaml b/Documentation/devicetree/bindings/board/fsl,fpga-qixis-i2c.yaml > > new file mode 100644 > > index 0000000000000..28b37772fb656 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/board/fsl,fpga-qixis-i2c.yaml > > @@ -0,0 +1,70 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/board/fsl,fpga-qixis-i2c.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Freescale on-board FPGA connected on I2C bus > > + > > +maintainers: > > + - Frank Li <Frank.Li@xxxxxxx> > > + > > +properties: > > + compatible: > > + oneOf: > > + - items: > > + - enum: > > + - fsl,bsc9132qds-fpga > > + - const: fsl,fpga-qixis-i2c > > + - items: > > + - enum: > > + - fsl,ls1028aqds-fpga > > + - fsl,lx2160aqds-fpga > > + - const: fsl,fpga-qixis-i2c > > + - const: simple-mfd > > + > > + interrupts: > > + maxItems: 1 > > + > > + reg: > > + maxItems: 1 > > + > > + mux-controller: > > + $ref: /schemas/mux/reg-mux.yaml > > + > > +required: > > + - compatible > > + - reg > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + board-control@66 { > > + compatible = "fsl,bsc9132qds-fpga", "fsl,fpga-qixis-i2c"; > > + reg = <0x66>; > > + }; > > + }; > > + > > + - | > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + board-control@66 { > > + compatible = "fsl,ls1028aqds-fpga", "fsl,fpga-qixis-i2c", > > + "simple-mfd"; > > + reg = <0x66>; > > + > > + mux-controller { > > + compatible = "reg-mux"; > > + #mux-control-cells = <1>; > > + mux-reg-masks = <0x54 0xf0>; /* 0: reg 0x54, bits 7:4 */ > > + }; > > + }; > > + }; > > + > > diff --git a/Documentation/devicetree/bindings/board/fsl,fpga-qixis.yaml b/Documentation/devicetree/bindings/board/fsl,fpga-qixis.yaml > > new file mode 100644 > > index 0000000000000..4d4eb45ce64cd > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/board/fsl,fpga-qixis.yaml > > @@ -0,0 +1,81 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/board/fsl,fpga-qixis.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Freescale on-board FPGA/CPLD > > + > > +maintainers: > > + - Frank Li <Frank.Li@xxxxxxx> > > + > > +properties: > > + compatible: > > + oneOf: > > + - items: > > + - const: fsl,p1022ds-fpga > > + - const: fsl,fpga-ngpixis > > + - items: > > + - enum: > > + - fsl,ls1088aqds-fpga > > + - fsl,ls1088ardb-fpga > > + - fsl,ls2080aqds-fpga > > + - fsl,ls2080ardb-fpga > > + - const: fsl,fpga-qixis > > + - items: > > + - enum: > > + - fsl,ls1043aqds-fpga > > + - fsl,ls1043ardb-fpga > > + - fsl,ls1046aqds-fpga > > + - fsl,ls1046ardb-fpga > > + - fsl,ls208xaqds-fpga > > + - const: fsl,fpga-qixis > > + - const: simple-mfd > > + - enum: > > + - fsl,ls1043ardb-cpld > > + - fsl,ls1046ardb-cpld > > + - fsl,t1040rdb-cpld > > + - fsl,t1042rdb-cpld > > + - fsl,t1042rdb_pi-cpld > > + > > + interrupts: > > + maxItems: 1 > > + > > + reg: > > + maxItems: 1 > > + > > + "#address-cells": > > + const: 1 > > + > > + "#size-cells": > > + const: 1 > > + > > + ranges: > > + maxItems: 1 > > + > > +patternProperties: > > + '^mdio-mux-emi@[a-f0-9]+$': > > If we're going to update the dts file, this should be 'mdio-mux@'. I'll > fix this when applying. The rest looks good. Thanks, I will fix dts in v2 3nrd clean up patchset. Frank > > Note that p5040ds.dts has 2 nodes at the same reg address, but different > bit offsets. The way we handle that is adding the register starting bit > offset to the unit-address like this: > > mdio-mux@9,1 (mux-mask 0x6) > mdio-mux@9,3 (mux-mask 0x78) > > Rob