On 10/05/2023 10:15, Martin Povišer wrote: > >> On 10. 5. 2023, at 9:51, Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote: >> >> On 09/05/2023 18:38, Martin Povišer wrote: >>> Add a DT schema for the SSM3515 amp by Analog Devices. It's a simple >>> mono amplifier with digital input. >>> >>> Signed-off-by: Martin Povišer <povik+lin@xxxxxxxxxxx> >> >> >>> + reg: >>> + maxItems: 1 >>> + >>> + adi,ana-gain: >>> + $ref: /schemas/types.yaml#/definitions/uint32 >>> + enum: [0, 1, 2, 3] >>> + description: | >>> + The value to be set in the ANA_GAIN register field on the codec. This determines >>> + the full voltage span of the codec's analog output. >>> + >>> + To quote the datasheet on the available options: >>> + >>> + 00: 8.4 V Full-Scale Gain Mapping >>> + 01: 12.6 V Full-Scale Gain Mapping >>> + 10: 14 V Full-Scale Gain Mapping >>> + 11: 15 V Full-Scale Gain Mapping >>> + >>> + '#sound-dai-cells': >>> + const: 0 >>> + >>> +required: >>> + - compatible >>> + - reg >>> + - adi,ana-gain >>> + >>> +additionalProperties: true >> >> uinevaluatedProperties: false instead, so users can have name-prefix. > > I actually tweaked this to have the example passing, which has sound-name-prefix, true is not allowed anyway - it makes your schema simply not effective almost at all as it allows anything... > which I guess is what you have in mind. Not that I exactly understand what these > options do (both additionalProperties and unevaluatedProperties), the schema docs > didn’t enlighten me right away when I looked into it. The way to go and to start always is to look at example-schema. It tells you explicitly to use additionalProperties:false and switch to unevaluated "If and only if another schema is referenced". Best regards, Krzysztof