Re: [PATCH v5 04/10] dt-bindings: soc: google: gs101-pmu: allow power domains as children
From: Rob Herring
Date: Wed Feb 11 2026 - 16:12:38 EST
On Thu, Feb 05, 2026 at 09:42:32PM +0000, André Draszik wrote:
> The power domains are a property of / implemented in the PMU. As such,
> they should be modelled as child nodes of the PMU.
>
> Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
> Signed-off-by: André Draszik <andre.draszik@xxxxxxxxxx>
> ---
> v4:
> - consistent quoting using " (Krzysztof)
> - add samsung,dtzpc to example
>
> Note: Ideally, the newly added properties (ranges, etc.) should only be
> 'required' if "^power-domain@[0-9a-f]+$" exists as a patternProperty,
> as they're needed only in that case. As-is, this patch now causes
> warnings for existing DTs as they don't specify the new properties (and
> they shouldn't need to).
We can't have warnings added if they aren't valid.
> Only if DTs are updated to include
> power-domains, such an update should also add the new properties.
>
> I've not been able to come up with the correct schema syntax to achieve
> that. dependencies, dependentRequired, and dependentSchemas don't seem
> to support patterns. Similarly,
> - if:
> required:
> - ...
> then:
> required:
> - ...
>
> doesn't allow patterns in the 'if' block (or I didn't get the syntax
> right).
>
> Rob said in
> https://lore.kernel.org/all/20251010141357.GA219719-robh@xxxxxxxxxx/
> that this is a known limitation in json-schema.
For a given compatible, you should either have child nodes or you don't.
The h/w is not variable. So something like this should work:
if:
properties:
compatible:
contains:
const: foo,bar
then:
required:
- ranges
- '#address-cells'
- '#size-cells'
Rob