On Tue, Aug 02, 2022 at 04:15:28PM +0530, Sameer Pujar wrote: > Hi Rob, Krzysztof > > On 02-08-2022 01:00, Rob Herring wrote: > > On Mon, 01 Aug 2022 21:37:30 +0530, Sameer Pujar wrote: > > > The "convert-channels" and "convert-rate" bindings are provided for both > > > simple-card and audio-graph-card. However these are separately defined in > > > their respective schemas. For any new binding addition, which is common to > > > both, there will be duplication. > > > > > > Introduce a new schema to have common DAI params properties and these can > > > be re-used in other schemas wherever applicable. > > > > > > Signed-off-by: Sameer Pujar <spujar@xxxxxxxxxx> > > > Cc: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > > > --- > > > .../bindings/sound/audio-graph-port.yaml | 13 ++++------ > > > .../devicetree/bindings/sound/audio-graph.yaml | 7 +++--- > > > .../devicetree/bindings/sound/dai-params.yaml | 28 ++++++++++++++++++++++ > > > .../devicetree/bindings/sound/simple-card.yaml | 16 ++++--------- > > > 4 files changed, 40 insertions(+), 24 deletions(-) > > > create mode 100644 Documentation/devicetree/bindings/sound/dai-params.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/linux-dt-review/Documentation/devicetree/bindings/sound/simple-card.yaml: properties:simple-audio-card,convert-rate: 'oneOf' conditional failed, one must be fixed: > > 'type' is a required property > > hint: A vendor boolean property can use "type: boolean" > > 'description' is a required property > > hint: A vendor boolean property can use "type: boolean" > > Additional properties are not allowed ('$ref' was unexpected) > > hint: A vendor boolean property can use "type: boolean" > > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/sound/simple-card.yaml: properties:simple-audio-card,convert-rate: 'oneOf' conditional failed, one must be fixed: > > 'enum' is a required property > > 'const' is a required property > > hint: A vendor string property with exact values has an implicit type > > from schema $id: http://devicetree.org/meta-schemas/vendor-props.yaml# > > '/schemas/sound/dai-params.yaml#/properties/dai-sample-rate' does not match 'types.yaml#/definitions/' > > hint: A vendor property needs a $ref to types.yaml > > '/schemas/sound/dai-params.yaml#/properties/dai-sample-rate' does not match '^#/(definitions|\\$defs)/' > > hint: A vendor property can have a $ref to a a $defs schema > > hint: Vendor specific properties must have a type and description unless they have a defined, common suffix. > > from schema $id: http://devicetree.org/meta-schemas/vendor-props.yaml# > > I am hitting this error if I use properties/definitions from another schema. > If I define it locally, it works. I see there are examples where properties > from different schema are used. But not able to understand why errors are > seen in my case. Am I missing anything here? You either need to use 'properties' with actual property names and reference that schema from the node level. Or you use '$defs' if you are going to have references from the (DT) property level. I think I'd just leave simple-card out of this and do the former.