Re: [PATCH v3 3/3] dt-bindings: i3c: Add AST2600 I3C global registers

Krzysztof Kozlowski
2026-04-09T07:28:19Z

On Wed, Apr 08, 2026 at 10:34:35PM +0200, Dawid Glazik wrote:
> Introduce the device-tree bindings for I3C global registers found on
> AST2600 SoCs.
>
> Signed-off-by: Dawid Glazik <dawid.glazik@linux.intel.com>
> ---
> I wasn't sure if I should add newline at the end of the
> file or not so I took
> https://github.com/torvalds/linux/tree/master/Documentation/devicetree/bindings/i3c
> as an example.

Answer is: you cannot have patch warnings.

Documentation/devicetree/bindings/i3c does not have patch warning, does
it?

> ---
> .../i3c/aspeed,ast2600-i3c-global.yaml | 55 +++++++++++++++++++
> 1 file changed, 55 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/i3c/aspeed,ast2600-i3c-global.yaml
>
> diff --git a/Documentation/devicetree/bindings/i3c/aspeed,ast2600-i3c-global.yaml b/Documentation/devicetree/bindings/i3c/aspeed,ast2600-i3c-global.yaml
> new file mode 100644
> index 000000000000..edecc18796a9
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/i3c/aspeed,ast2600-i3c-global.yaml
> @@ -0,0 +1,55 @@
> +# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/i3c/aspeed,ast2600-i3c-global.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: ASPEED AST2600 I3C Global Registers
> +
> +description: |
> + The AST2600 SoC provides a shared I3C global register block used by all
> + I3C controller instances. This block contains per-instance global

Why are you adding syscon to I3C controllers? Only I3C controllers go
to i3c directory.

syscons go soc.

> + configuration fields, including controller instance ID and SDA pull-up
> + configuration.
> + Each I3C controller references this syscon node through the
> + aspeed,global-regs property.
> +
> +maintainers:
> + - Dawid Glazik <dawid.glazik@linux.intel.com>
> +
> +allOf:
> + - $ref: /schemas/mfd/syscon-common.yaml#
> +
> +properties:
> + compatible:
> + items:
> + - const: aspeed,ast2600-i3c-global
> + - const: syscon
> +
> + reg:
> + maxItems: 1
> +
> + resets:
> + maxItems: 1
> +

I do not see any differences against syscon.yaml binding. Why do you
need separate file? Look first how other platforms do it.

> +required:
> + - compatible
> + - reg
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + bus@1e7a0000 {
> + compatible = "simple-bus";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0 0x1e7a0000 0x8000>;

Drop entire node, not needed.

> +
> + i3c-global@0 {
> + compatible = "aspeed,ast2600-i3c-global", "syscon";
> + reg = <0x0 0x1000>;
> + resets = <&syscon ASPEED_RESET_I3C_DMA>;
> + };
> + };
> +...
> \ No newline at end of file

Patch warning.

Best regards,
Krzysztof