Re: [PATCH 1/7] dt-bindings: dma: ti,cppi41: Convert to DT schema

[email protected]
Newsgroups org.kernel.vger.dmaengine,org.infradead.lists.linux-phy,org.kernel.vger.linux-devicetree
Message-ID <[email protected]>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] The newly added deprecated properties `#dma-channels` and `#dma-requests` lack a type reference, which will cause `dt_binding_check` to fail.
- [Medium] The `interrupts` property is strictly required by the hardware and driver but is missing from the global or variant-specific `required` lists, while `interrupt-names` is required without `interrupts`.
--

--- Patch [1]: [PATCH 1/7] dt-bindings: dma: ti,cppi41: Convert to DT schema ---
commit 9d239577372b14253a6bd9fcf116eef3c7b58ad3
Author: Bhargav Joshi <[email protected]>

dt-bindings: dma: ti,cppi41: Convert to DT schema

Convert TI CPPI 4.1 DMA controller text bindings to DT schema. Add
ti,am3359-cppi41 and ti,da830-cppi41 into single schema since they share
the same hardware IP block and driver. Add undocumented dma-requests
and power-domains properties to match existing DTS usage.

> diff --git a/Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml b/Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml
> new file mode 100644
> index 0000000000000..110cf62c66d20
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml
> @@ -0,0 +1,108 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/dma/ti/ti,cppi41.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#

[ ... ]

> +  power-domains:
> +    maxItems: 1
> +
> +  "#dma-channels":
> +    description: Deprecated, use dma-channels instead.
> +    deprecated: true
> +
> +  "#dma-requests":
> +    description: Deprecated, use dma-requests instead.
> +    deprecated: true

[Severity: Medium]
Do these deprecated properties need an explicit type reference, such as
$ref: /schemas/types.yaml#/definitions/uint32? Without a type reference,
will dt_binding_check fail with a missing type definition error for these
custom properties?

> +
> +required:
> +  - compatible
> +  - reg
> +  - reg-names
> +  - "#dma-cells"
> +  - dma-channels

[Severity: Medium]
Should interrupts be included in this top-level required list? Since the
hardware and driver unconditionally fail probing without it, omitting
interrupts here might allow incomplete device trees to silently pass schema
validation.

> +
> +allOf:
> +  - $ref: /schemas/dma/dma-controller.yaml#
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: ti,am3359-cppi41
> +    then:
> +      properties:
> +        reg:
> +          minItems: 4
> +        reg-names:
> +          items:
> +            - const: glue
> +            - const: controller
> +            - const: scheduler
> +            - const: queuemgr
> +        power-domains: false
> +      required:
> +        - interrupt-names
> +        - dma-requests

[Severity: Medium]
Does requiring interrupt-names here also imply that interrupts should be
required? It seems logically inconsistent to mandate the names but not the
interrupts property itself.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.