Message ID | 20240709172834.9785-6-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:33 +0300, Igor Prusov wrote: > Add dt-bindings for NeoFidelity NTP8835C/NTP8835C Amplifiers > > Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> > --- > .../bindings/sound/neofidelity,ntp8835.yaml | 65 +++++++++++++++++++ > 1 file changed, 65 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/neofidelity,ntp8835.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,ntp8835.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,ntp8835.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,ntp8835.example.dtb: ntp8835@56: reg:0:0: 86 is not one of [42, 43, 44, 45] from schema $id: http://devicetree.org/schemas/sound/neofidelity,ntp8835.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/neofidelity,ntp8835.example.dtb: ntp8835@56: Unevaluated properties are not allowed ('reg' was unexpected) from schema $id: http://devicetree.org/schemas/sound/neofidelity,ntp8835.yaml# doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240709172834.9785-6-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 NTP8835C/NTP8835C Amplifiers > > Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> > --- > .../bindings/sound/neofidelity,ntp8835.yaml | 65 +++++++++++++++++++ No need for new schema. Just put it - after testing - into previous bindings file. Best regards, Krzysztof
On Wed, Jul 10, 2024 at 12:24:33PM +0200, Krzysztof Kozlowski wrote: > On 09/07/2024 19:28, Igor Prusov wrote: > > Add dt-bindings for NeoFidelity NTP8835C/NTP8835C Amplifiers > > > > Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> > > --- > > .../bindings/sound/neofidelity,ntp8835.yaml | 65 +++++++++++++++++++ > > No need for new schema. Just put it - after testing - into previous > bindings file. I am going to add some clocks in next version and there are some differences between amplifiers. 8835 uses separate master clock, 8918 is clocked by BCLK. Is it still better to use same schema with anyOf, or keep them in different files? > > Best regards, > Krzysztof >
On Fri, Sep 20, 2024 at 08:42:33PM +0300, Igor Prusov wrote: > On Wed, Jul 10, 2024 at 12:24:33PM +0200, Krzysztof Kozlowski wrote: > > On 09/07/2024 19:28, Igor Prusov wrote: > > > Add dt-bindings for NeoFidelity NTP8835C/NTP8835C Amplifiers > > > > > > Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> > > > --- > > > .../bindings/sound/neofidelity,ntp8835.yaml | 65 +++++++++++++++++++ > > > > No need for new schema. Just put it - after testing - into previous > > bindings file. > > I am going to add some clocks in next version and there are some > differences between amplifiers. 8835 uses separate master clock, 8918 is > clocked by BCLK. Is it still better to use same schema with anyOf, or > keep them in different files? No clue, that was 2 months ago so I don't have that email in my inbox at all. Please post complete bindings (regardless whether driver implement it or not), so we can see the differences. Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/sound/neofidelity,ntp8835.yaml b/Documentation/devicetree/bindings/sound/neofidelity,ntp8835.yaml new file mode 100644 index 000000000000..6dbe0eb2e93d --- /dev/null +++ b/Documentation/devicetree/bindings/sound/neofidelity,ntp8835.yaml @@ -0,0 +1,65 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/neofidelity,ntp8835.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NeoFidelity NTP8835/NTP8835C Amplifiers + +maintainers: + - Igor Prusov <ivprusov@salutedevices.com> + +description: | + The NTP8835 is a single chip full digital audio amplifier + including power stages for stereo amplifier systems. + NTP8835 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. NTP8835C has identical programming interface, + but has different output signal characteristics. + +allOf: + - $ref: dai-common.yaml# + +properties: + compatible: + enum: + - neofidelity,ntp8835 + - neofidelity,ntp8835c + + reg: + enum: + - 0x2a + - 0x2b + - 0x2c + - 0x2d + maxItems: 1 + 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>; + ntp8835@56 { + compatible = "neofidelity,ntp8835"; + #sound-dai-cells = <0>; + reg = <0x56>; + reset-gpios = <&gpio 5 GPIO_ACTIVE_LOW>; + }; + };
Add dt-bindings for NeoFidelity NTP8835C/NTP8835C Amplifiers Signed-off-by: Igor Prusov <ivprusov@salutedevices.com> --- .../bindings/sound/neofidelity,ntp8835.yaml | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/neofidelity,ntp8835.yaml