Hi Rob, On Fri, Dec 17, 2021 at 08:18:06AM -0600, Rob Herring wrote: > On Fri, Dec 17, 2021 at 12:09:44AM +0200, Laurent Pinchart wrote: > > From: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > > > > Power supplies for the ports can be controlled per port depending on the > > hardware design. Support per-port supplies in the DT bindings, mutually > > exclusive with the global supply. > > > > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > > --- > > .../bindings/media/i2c/maxim,max9286.yaml | 25 ++++++++++++++++++- > > 1 file changed, 24 insertions(+), 1 deletion(-) > > > > diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml > > index 02f656e78700..33aa307e8ee5 100644 > > --- a/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml > > +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml > > @@ -39,7 +39,7 @@ properties: > > maxItems: 1 > > > > poc-supply: > > - description: Regulator providing Power over Coax to the cameras > > + description: Regulator providing Power over Coax to all the ports > > > > enable-gpios: > > description: GPIO connected to the \#PWDN pin with inverted polarity > > @@ -160,6 +160,10 @@ properties: > > > > additionalProperties: false > > > > +patternProperties: > > + "^port[0-3]-poc-supply$": > > + description: Regulator providing Power over Coax for a particular port > > + > > required: > > - compatible > > - reg > > @@ -167,6 +171,25 @@ required: > > - i2c-mux > > - gpio-controller > > > > +allOf: > > + - if: > > + required: > > + - poc-supply > > + then: > > + allOf: > > + - not: > > + required: > > + - port0-poc-supply > > + - not: > > + required: > > + - port1-poc-supply > > + - not: > > + required: > > + - port2-poc-supply > > + - not: > > + required: > > + - port3-poc-supply > > I think you can invert the if and move patternProperties to the 'then' > and... > > > + > > additionalProperties: false > > then use unevaluatedProperties here. I ended up doing the following, which I would have sworn I had tried before: allOf: - if: required: - poc-supply then: patternProperties: '^port[0-3]-poc-supply$': false additionalProperties: false It seems to work, so I'll use it in v2. -- Regards, Laurent Pinchart