Message ID | 20230519125236.352050-2-festevam@gmail.com |
---|---|
State | Superseded, archived |
Headers | show |
Series | [v4,1/4] dt-bindings: display: bridge: ldb: Adjust imx6sx entries | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | success | |
robh/patch-applied | success | |
robh/dt-meta-schema | fail | build log |
On Fri, 19 May 2023 09:52:34 -0300, Fabio Estevam wrote: > From: Fabio Estevam <festevam@denx.de> > > The i.MX6SX General Purpose Registers is a set of register that serves > various different purposes and in particular, IOMUXC_GPR_GPR6, at > offset 0x18, can be used to configure the LDB block. > > Signed-off-by: Fabio Estevam <festevam@denx.de> > --- > Changes since v3: > - Fixed error reported by Rob's bot. > > .../bindings/soc/imx/fsl,imx6sx-gpr.yaml | 84 +++++++++++++++++++ > 1 file changed, 84 insertions(+) > create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.example.dtb: iomuxc-gpr@20e4000: bridge@18:compatible:0: 'fsl,imx6sx-ldb' is not one of ['fsl,imx8mp-ldb', 'fsl,imx93-ldb'] From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230519125236.352050-2-festevam@gmail.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
Hi Rob, On Fri, May 19, 2023 at 10:24 AM Rob Herring <robh@kernel.org> wrote: > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > on your patch (DT_CHECKER_FLAGS is new in v5.13): > > yamllint warnings/errors: > > dtschema/dtc warnings/errors: > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.example.dtb: iomuxc-gpr@20e4000: bridge@18:compatible:0: 'fsl,imx6sx-ldb' is not one of ['fsl,imx8mp-ldb', 'fsl,imx93-ldb'] > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml > > doc reference errors (make refcheckdocs): > > See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230519125236.352050-2-festevam@gmail.com > > The base for the series is generally the latest rc1. A different dependency > should be noted in *this* patch. This patch is against linux-next. 6.4-rc1 does not contain f85f2ce57783 ("dt-bindings: display: bridge: ldb: Add an i.MX6SX entry"), which is a pre-requisite for this series. 'make DT_CHECKER_FLAGS=-m dt_binding_check' does not show errors for this patch series against linux-next.
Hey Fabio, On Fri, May 19, 2023 at 09:52:34AM -0300, Fabio Estevam wrote: > From: Fabio Estevam <festevam@denx.de> > > The i.MX6SX General Purpose Registers is a set of register that serves > various different purposes and in particular, IOMUXC_GPR_GPR6, at > offset 0x18, can be used to configure the LDB block. > > Signed-off-by: Fabio Estevam <festevam@denx.de> > + bridge@18: > + type: object > + $ref: /schemas/display/bridge/fsl,ldb.yaml# > + unevaluatedProperties: false How come you need to upgrade the additionaProperties: false, and the "plain old" $ref is not sufficient? > +examples: > + - | > + #include <dt-bindings/clock/imx6sx-clock.h> > + > + iomuxc-gpr@20e4000 { syscon@ please. Thanks, Conor.
Hi Conor, On 19/05/2023 16:23, Conor Dooley wrote: >> + bridge@18: >> + type: object >> + $ref: /schemas/display/bridge/fsl,ldb.yaml# >> + unevaluatedProperties: false > > How come you need to upgrade the additionaProperties: false, and the > "plain old" $ref is not sufficient? I am passing unevaluatedProperties: false, not additionaProperties: false here, so I am not sure I understood your comment. If additionaProperties: false is not present: $ make dt_binding_check DT_SCHEMA_FILES=fsl,imx6sx-gpr.yaml LINT Documentation/devicetree/bindings CHKDT Documentation/devicetree/bindings/processed-schema.json /home/fabio/linux-next/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml: 'oneOf' conditional failed, one must be fixed: 'unevaluatedProperties' is a required property 'additionalProperties' is a required property hint: Either unevaluatedProperties or additionalProperties must be present from schema $id: http://devicetree.org/meta-schemas/core.yaml# SCHEMA Documentation/devicetree/bindings/processed-schema.json DTEX Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.example.dts DTC_CHK Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.example.dtb So I will keep it like this. I have taken all of your other feedback into account and will submit a v5. Thanks, Fabio Estevam
On Mon, May 22, 2023 at 08:49:35AM -0300, Fabio Estevam wrote: > On 19/05/2023 16:23, Conor Dooley wrote: > > > > + bridge@18: > > > + type: object > > > + $ref: /schemas/display/bridge/fsl,ldb.yaml# > > > + unevaluatedProperties: false > > > > How come you need to upgrade the additionaProperties: false, and the > > "plain old" $ref is not sufficient? > > I am passing unevaluatedProperties: false, not additionaProperties: false > here, > so I am not sure I understood your comment. I was referring to the additionalProperties: false in the schema in the $ref:, but I had myself confused and doing s/unevaluated/additional/ here would cause complaints about the properties being undefined. > So I will keep it like this. Yeah, sorry for the confusion!
diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml new file mode 100644 index 000000000000..22777ecfb56b --- /dev/null +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx6sx-gpr.yaml @@ -0,0 +1,84 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/imx/fsl,imx6sx-gpr.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX6SX General Purpose Register + +maintainers: + - Fabio Estevam <festevam@denx.de> + +description: + The i.MX6SX General Purpose Registers is a set of register that serves + for various purposes and in particular, IOMUXC_GPR_GPR6, at offset 0x18, + can be used to configure the LDB block. + +properties: + compatible: + items: + - const: fsl,imx6sx-iomuxc-gpr + - const: fsl,imx6q-iomuxc-gpr + - const: syscon + + reg: + maxItems: 1 + + '#address-cells': + const: 1 + + '#size-cells': + const: 1 + + bridge@18: + type: object + $ref: /schemas/display/bridge/fsl,ldb.yaml# + unevaluatedProperties: false + +required: + - compatible + - reg + - '#address-cells' + - '#size-cells' + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/imx6sx-clock.h> + + iomuxc-gpr@20e4000 { + compatible = "fsl,imx6sx-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon"; + reg = <0x020e4000 0x4000>; + #address-cells = <1>; + #size-cells = <1>; + + bridge@18 { + compatible = "fsl,imx6sx-ldb"; + reg = <0x18 0x4>; + reg-names = "ldb"; + clocks = <&clks IMX6SX_CLK_LDB_DI0>; + clock-names = "ldb"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + ldb_from_lcdif1: endpoint { + remote-endpoint = <&lcdif1_to_ldb>; + }; + }; + + port@1 { + reg = <1>; + + ldb_lvds_ch0: endpoint { + }; + }; + }; + }; + }; +...