On 28/01/2023 12:03, Jacopo Mondi wrote: > Since I got the attention of both of you, let me point out another > issue I'm facing. > > We also have video-interface-devices.yaml which lists properties for > the device node and not for the endpoints. > > video-interface-devices lists properties that should be all optionally > accepted, as they can potentially apply to all sensors (things like > rotation, orientation, lens-focus, flash-leds are valid for all > devices) > > Being properties for the device node they should be specified in the > schema top-level and I see a few schema that do that by > > allOf: > - $ref: /schemas/media/video-interface-devices.yaml# > > However top level schemas usually specify > > additionalProperties: false > > Which means each sensor schema has to list the properties it accepts from > video-interface-devices.yaml. It's easy to verify this just by > adding "orientation" to the example in a schema that refers to > video-interface-devices.yaml and see that the bindings validation > fails (see below) > > TL;DR is there a way to tell in a schema with a top-level > "additionalProperties: false" that all properties from a referenced > schema are accepted ? No, because this would make it exactly the same as unevaluatedProperties, so we would have two keywords with same meaning. https://lore.kernel.org/all/c2740d66-b51f-efc2-6583-a69bde950c68@xxxxxxxxxx/ Best regards, Krzysztof