Message ID | 20240813163638.3889778-1-Frank.Li@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,1/1] dt-bindings: board: convert fsl-board.txt to yaml | expand |
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@nxp.com> > --- > 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@nxp.com> > + > +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@nxp.com> > + > +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@nxp.com> > + > +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. 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
On Tue, 13 Aug 2024 12:36:29 -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@nxp.com> > --- > 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 > Applied, thanks!
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@nxp.com> > > --- > > 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@nxp.com> > > + > > +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@nxp.com> > > + > > +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@nxp.com> > > + > > +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
On Fri, Aug 16, 2024 at 4:04 PM Frank Li <Frank.li@nxp.com> wrote: > > 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@nxp.com> > > > --- > > > 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 +- Add this part to your clean-up patch. > > > 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@nxp.com> > > > + > > > +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@nxp.com> > > > + > > > +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@nxp.com> > > > + > > > +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 >
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@nxp.com> + +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@nxp.com> + +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@nxp.com> + +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]+$': + $ref: /schemas/net/mdio-mux-mmioreg.yaml + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + board-control@3 { + compatible = "fsl,p1022ds-fpga", "fsl,fpga-ngpixis"; + reg = <3 0x30>; + interrupt-parent = <&mpic>; + interrupts = <8 IRQ_TYPE_LEVEL_LOW 0 0>; + }; + + - | + board-control@3 { + compatible = "fsl,ls2080ardb-fpga", "fsl,fpga-qixis"; + reg = <0x3 0x10000>; + }; + diff --git a/Documentation/devicetree/bindings/board/fsl-board.txt b/Documentation/devicetree/bindings/board/fsl-board.txt deleted file mode 100644 index 9cde570159219..0000000000000 --- a/Documentation/devicetree/bindings/board/fsl-board.txt +++ /dev/null @@ -1,81 +0,0 @@ -Freescale Reference Board Bindings - -This document describes device tree bindings for various devices that -exist on some Freescale reference boards. - -* Board Control and Status (BCSR) - -Required properties: - - - compatible : Should be "fsl,<board>-bcsr" - - reg : Offset and length of the register set for the device - -Example: - - bcsr@f8000000 { - compatible = "fsl,mpc8360mds-bcsr"; - reg = <f8000000 8000>; - }; - -* Freescale on-board FPGA - -This is the memory-mapped registers for on board FPGA. - -Required properties: -- compatible: should be a board-specific string followed by a string - indicating the type of FPGA. Example: - "fsl,<board>-fpga", "fsl,fpga-pixis", or - "fsl,<board>-fpga", "fsl,fpga-qixis" -- reg: should contain the address and the length of the FPGA register set. - -Optional properties: -- interrupts: should specify event (wakeup) IRQ. - -Example (P1022DS): - - board-control@3,0 { - compatible = "fsl,p1022ds-fpga", "fsl,fpga-ngpixis"; - reg = <3 0 0x30>; - interrupt-parent = <&mpic>; - interrupts = <8 8 0 0>; - }; - -Example (LS2080A-RDB): - - cpld@3,0 { - compatible = "fsl,ls2080ardb-fpga", "fsl,fpga-qixis"; - reg = <0x3 0 0x10000>; - }; - -* Freescale on-board FPGA connected on I2C bus - -Some Freescale boards like BSC9132QDS have on board FPGA connected on -the i2c bus. - -Required properties: -- compatible: Should be a board-specific string followed by a string - indicating the type of FPGA. Example: - "fsl,<board>-fpga", "fsl,fpga-qixis-i2c" -- reg: Should contain the address of the FPGA - -Example: - fpga: fpga@66 { - compatible = "fsl,bsc9132qds-fpga", "fsl,fpga-qixis-i2c"; - reg = <0x66>; - }; - -* Freescale on-board CPLD - -Some Freescale boards like T1040RDB have an on board CPLD connected. - -Required properties: -- compatible: Should be a board-specific string like "fsl,<board>-cpld" - Example: - "fsl,t1040rdb-cpld", "fsl,t1042rdb-cpld", "fsl,t1042rdb_pi-cpld" -- reg: should describe CPLD registers - -Example: - cpld@3,0 { - compatible = "fsl,t1040rdb-cpld"; - reg = <3 0 0x300>; - }; diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts index 11b1356e95d5b..697c5b3beea9d 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts @@ -211,7 +211,7 @@ ethernet@f0000 { /* DTSEC9/10GEC1 */ }; &fpga { - mdio-mux-emi1@54 { + mdio-mux-emi@54 { compatible = "mdio-mux-mmioreg", "mdio-mux"; mdio-parent-bus = <&mdio0>; #address-cells = <1>;
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@nxp.com> --- 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