On Wed, Mar 13, 2024 at 05:53:52PM +0000, Bryan O'Donoghue wrote: > camcc on x1e80100 requires two power domains MXC and MMCX. Define those as > part of the schema. > > Fixes: 76126a5129b5 ("clk: qcom: Add camcc clock driver for x1e80100") > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> > --- > .../bindings/clock/qcom,sm8450-camcc.yaml | 37 ++++++++++++++++++---- > 1 file changed, 31 insertions(+), 6 deletions(-) > > diff --git a/Documentation/devicetree/bindings/clock/qcom,sm8450-camcc.yaml b/Documentation/devicetree/bindings/clock/qcom,sm8450-camcc.yaml > index fa0e5b6b02b81..1f62139426845 100644 > --- a/Documentation/devicetree/bindings/clock/qcom,sm8450-camcc.yaml > +++ b/Documentation/devicetree/bindings/clock/qcom,sm8450-camcc.yaml > @@ -19,9 +19,6 @@ description: | > include/dt-bindings/clock/qcom,sc8280xp-camcc.h > include/dt-bindings/clock/qcom,x1e80100-camcc.h > > -allOf: > - - $ref: qcom,gcc.yaml# > - > properties: > compatible: > enum: > @@ -38,9 +35,8 @@ properties: > - description: Sleep clock source > > power-domains: > - maxItems: 1 > - description: > - A phandle and PM domain specifier for the MMCX power domain. > + minItems: 1 > + maxItems: 2 > > required-opps: > maxItems: 1 > @@ -50,6 +46,35 @@ properties: > reg: > maxItems: 1 > > +allOf: > + - $ref: qcom,gcc.yaml# > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,sc8280xp-camcc > + - qcom,sm8450-camcc > + - qcom,sm8550-camcc > + then: > + properties: > + power-domains: > + items: > + - description: MMCX power domain. > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,x1e80100-camcc > + then: > + properties: > + power-domains: > + items: > + - description: MXC power domain. > + - description: MMCX power domain. Add new entries onto the end of existing ones. IOW, MMCX should always be 1st. Then you can move the descriptions to the top level and just put minItems or maxItems as appropriate here. Rob