Message ID | 20240709172834.9785-4-ivprusov@salutedevices.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | ASoC: Add NTP8918 and NTP8835 codecs support | expand |
On Tue, 09 Jul 2024 20:28:31 +0300, Igor Prusov wrote: > Add dt-bindings for NeoFidelity NTP8918 Amplifier > > Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> > --- > .../bindings/sound/neofidelity,ntp8918.yaml | 63 +++++++++++++++++++ > 1 file changed, 63 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml: properties:reg: 'enum' should not be valid under {'enum': ['const', 'enum', 'exclusiveMaximum', 'exclusiveMinimum', 'minimum', 'maximum', 'multipleOf', 'pattern']} hint: Scalar and array keywords cannot be mixed from schema $id: http://devicetree.org/meta-schemas/keywords.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml: properties:reg: 'anyOf' conditional failed, one must be fixed: 'enum' is not one of ['maxItems', 'description', 'deprecated'] hint: Only "maxItems" is required for a single entry if there are no constraints defined for the values. Additional properties are not allowed ('enum' was unexpected) hint: Arrays must be described with a combination of minItems/maxItems/items 'maxItems' is not one of ['description', 'deprecated', 'const', 'enum', 'minimum', 'maximum', 'multipleOf', 'default', '$ref', 'oneOf'] 1 is less than the minimum of 2 hint: Arrays must be described with a combination of minItems/maxItems/items hint: cell array properties must define how many entries and what the entries are when there is more than one entry. from schema $id: http://devicetree.org/meta-schemas/core.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.example.dtb: ntp8918@54: reg:0:0: 84 is not one of [42, 43, 44, 45] from schema $id: http://devicetree.org/schemas/sound/neofidelity,ntp8918.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.example.dtb: ntp8918@54: Unevaluated properties are not allowed ('reg' was unexpected) from schema $id: http://devicetree.org/schemas/sound/neofidelity,ntp8918.yaml# doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240709172834.9785-4-ivprusov@salutedevices.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.
On 09/07/2024 19:28, Igor Prusov wrote: > Add dt-bindings for NeoFidelity NTP8918 Amplifier > > Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> > --- > .../bindings/sound/neofidelity,ntp8918.yaml | 63 +++++++++++++++++++ > 1 file changed, 63 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml > This looks like not tested, so limited review follows. A nit, subject: drop second/last, redundant "bindings". The "dt-bindings" prefix is already stating that these are bindings. See also: https://elixir.bootlin.com/linux/v6.7-rc8/source/Documentation/devicetree/bindings/submitting-patches.rst#L18 > +> +description: | Do not need '|' unless you need to preserve formatting. > + The NTP8918 is a single chip full digital audio amplifier > + including power stage for stereo amplifier system. > + The NTP8918 is integrated with versatile digital audio signal > + processing functions, high-performance, high-fidelity fully > + digital PWM modulator and two high-power full-bridge MOSFET > + power stages. > + > +allOf: > + - $ref: dai-common.yaml# > + > +properties: > + compatible: > + enum: > + - neofidelity,ntp8918 > + > + reg: > + maxItems: 1 > + enum: > + - 0x2a > + - 0x2b > + - 0x2c > + - 0x2d > + description: | > + I2C address of the device. Drop description, redundant. > + > + reset-gpios: > + maxItems: 1 > + description: GPIO used to control the state of the device. Drop description, redundant. > + > + '#sound-dai-cells': > + enum: [0] That's a const > + > +required: > + - compatible > + - reg > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + ntp8918@54 { Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification: https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml b/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml new file mode 100644 index 000000000000..4ca8957309d3 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml @@ -0,0 +1,63 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/neofidelity,ntp8918.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NeoFidelity NTP8918 Amplifier + +maintainers: + - Igor Prusov <ivprusov@salutedevices.com> + +description: | + The NTP8918 is a single chip full digital audio amplifier + including power stage for stereo amplifier system. + The NTP8918 is integrated with versatile digital audio signal + processing functions, high-performance, high-fidelity fully + digital PWM modulator and two high-power full-bridge MOSFET + power stages. + +allOf: + - $ref: dai-common.yaml# + +properties: + compatible: + enum: + - neofidelity,ntp8918 + + reg: + maxItems: 1 + enum: + - 0x2a + - 0x2b + - 0x2c + - 0x2d + description: | + I2C address of the device. + + reset-gpios: + maxItems: 1 + description: GPIO used to control the state of the device. + + '#sound-dai-cells': + enum: [0] + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + ntp8918@54 { + compatible = "neofidelity,ntp8918"; + #sound-dai-cells = <0>; + reg = <0x54>; + reset-gpios = <&gpio 5 GPIO_ACTIVE_LOW>; + }; + };
Add dt-bindings for NeoFidelity NTP8918 Amplifier Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> --- .../bindings/sound/neofidelity,ntp8918.yaml | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/neofidelity,ntp8918.yaml