Re: [PATCH v10 3/4] dt-bindings: clock: imx95-blk-ctl: Define formatter child node schema
From: Krzysztof Kozlowski <krzk@kernel.org>
Date: 2026-06-22 06:50:15
Also in:
imx, linux-clk, linux-devicetree, linux-media, lkml
On Thu, Jun 18, 2026 at 05:41:37PM +0800, guoniu.zhou@oss.nxp.com wrote:
quoted hunk ↗ jump to hunk
From: Guoniu Zhou <redacted> The Camera CSR contains control registers for multiple CSI formatter IPs at different register offsets. Each formatter is an independent hardware block with its own clock input and media pipeline connection. Define schema to allow formatter child nodes under nxp,imx95-camera-csr, with 'reg' property specifying the formatter's register offset within the CSR address space. Signed-off-by: Guoniu Zhou <redacted> --- Changes in v10: - Use single quotes for regex pattern to be consistent (Krzysztof Kozlowski) - Add formatter subnode binding and camera-csr syscon example - Update commit title and message Changes in v9: - New patch to address the issue of formatter acting as a child node of syscon --- .../bindings/clock/nxp,imx95-blk-ctl.yaml | 64 +++++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-)diff --git a/Documentation/devicetree/bindings/clock/nxp,imx95-blk-ctl.yaml b/Documentation/devicetree/bindings/clock/nxp,imx95-blk-ctl.yaml index 534fa219d9f9..b4d0a7670fac 100644 --- a/Documentation/devicetree/bindings/clock/nxp,imx95-blk-ctl.yaml +++ b/Documentation/devicetree/bindings/clock/nxp,imx95-blk-ctl.yaml@@ -46,7 +46,27 @@ required: - power-domains - clocks -additionalProperties: false +allOf: + - if: + properties: + compatible: + contains: + const: nxp,imx95-camera-csr + then: + properties: + '#address-cells': + const: 1 + '#size-cells': + const: 1
These should go to top-level. In if:then:else: you only narrow them,
e.g. you disallow for other variants (": false").
if:
then:
....
required:
....
else:
properties:
'#address-cells': false
+ required: + - '#address-cells' + - '#size-cells' + patternProperties: + '^formatter@[0-9a-f]+$': + type: object + $ref: /schemas/media/fsl,imx95-csi-formatter.yaml#
This as well should be in top-level and here you only disallow it for other variants. You can avoid cross-tree dependencies by using compatible style: https://elixir.bootlin.com/linux/v7.1-rc6/source/Documentation/devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml#L41 Best regards, Krzysztof