diff mbox series

[v2,2/2] dt-bindings: dma: adi,axi-dmac: deprecate adi,channels node

Message ID 20241029-axi-dma-dt-yaml-v2-2-52a6ec7df251@baylibre.com (mailing list archive)
State Superseded
Headers show
Series dt-bindings: dma: adi,axi-dmac: convert to yaml and update | expand

Commit Message

David Lechner Oct. 29, 2024, 7:29 p.m. UTC
Deprecate the adi,channels node in the adi,axi-dmac binding. Prior to
IP version 4.3.a, this information was required. Since then, there are
memory-mapped registers that can be read to get the same information.

Acked-by: Nuno Sa <nuno.sa@analog.com>
Signed-off-by: David Lechner <dlechner@baylibre.com>
---

For context, the adi,channels node has not been required in the Linux
kernel since [1].

[1]: https://lore.kernel.org/all/20200825151950.57605-7-alexandru.ardelean@analog.com/
---
 .../devicetree/bindings/dma/adi,axi-dmac.yaml         | 19 +++++--------------
 1 file changed, 5 insertions(+), 14 deletions(-)

Comments

Rob Herring (Arm) Oct. 29, 2024, 8:42 p.m. UTC | #1
On Tue, 29 Oct 2024 14:29:15 -0500, David Lechner wrote:
> Deprecate the adi,channels node in the adi,axi-dmac binding. Prior to
> IP version 4.3.a, this information was required. Since then, there are
> memory-mapped registers that can be read to get the same information.
> 
> Acked-by: Nuno Sa <nuno.sa@analog.com>
> Signed-off-by: David Lechner <dlechner@baylibre.com>
> ---
> 
> For context, the adi,channels node has not been required in the Linux
> kernel since [1].
> 
> [1]: https://lore.kernel.org/all/20200825151950.57605-7-alexandru.ardelean@analog.com/
> ---
>  .../devicetree/bindings/dma/adi,axi-dmac.yaml         | 19 +++++--------------
>  1 file changed, 5 insertions(+), 14 deletions(-)
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/dma/adi,axi-dmac.example.dtb: dma-controller@7c420000: 'adi,channels' is a required property
	from schema $id: http://devicetree.org/schemas/dma/adi,axi-dmac.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20241029-axi-dma-dt-yaml-v2-2-52a6ec7df251@baylibre.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
David Lechner Oct. 29, 2024, 9 p.m. UTC | #2
On 10/29/24 3:42 PM, Rob Herring (Arm) wrote:
> 
> On Tue, 29 Oct 2024 14:29:15 -0500, David Lechner wrote:
>> Deprecate the adi,channels node in the adi,axi-dmac binding. Prior to
>> IP version 4.3.a, this information was required. Since then, there are
>> memory-mapped registers that can be read to get the same information.
>>
>> Acked-by: Nuno Sa <nuno.sa@analog.com>
>> Signed-off-by: David Lechner <dlechner@baylibre.com>
>> ---
>>
>> For context, the adi,channels node has not been required in the Linux
>> kernel since [1].
>>
>> [1]: https://lore.kernel.org/all/20200825151950.57605-7-alexandru.ardelean@analog.com/
>> ---
>>  .../devicetree/bindings/dma/adi,axi-dmac.yaml         | 19 +++++--------------
>>  1 file changed, 5 insertions(+), 14 deletions(-)
>>
> 
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/dma/adi,axi-dmac.example.dtb: dma-controller@7c420000: 'adi,channels' is a required property
> 	from schema $id: http://devicetree.org/schemas/dma/adi,axi-dmac.yaml#
> 
> doc reference errors (make refcheckdocs):
> 
> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20241029-axi-dma-dt-yaml-v2-2-52a6ec7df251@baylibre.com
> 
> The base for the series is generally the latest rc1. A different dependency
> should be noted in *this* patch.
> 
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
> 
> pip3 install dtschema --upgrade
> 
> Please check and re-submit after running the above command yourself. Note
> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> your schema. However, it must be unset to test all examples with your schema.
> 

Ugh, somehow lost a line from v1 in the rebase and didn't notice.

This is the part missing from this patch:

@@ -109,7 +113,6 @@ required:
   - interrupts
   - clocks
   - "#dma-cells"
-  - adi,channels
 
 additionalProperties: false
 

Will wait a bit for other feedback and then send a fixed version.
Rob Herring (Arm) Oct. 30, 2024, 9:19 p.m. UTC | #3
On Tue, 29 Oct 2024 14:29:15 -0500, David Lechner wrote:
> Deprecate the adi,channels node in the adi,axi-dmac binding. Prior to
> IP version 4.3.a, this information was required. Since then, there are
> memory-mapped registers that can be read to get the same information.
> 
> Acked-by: Nuno Sa <nuno.sa@analog.com>
> Signed-off-by: David Lechner <dlechner@baylibre.com>
> ---
> 
> For context, the adi,channels node has not been required in the Linux
> kernel since [1].
> 
> [1]: https://lore.kernel.org/all/20200825151950.57605-7-alexandru.ardelean@analog.com/
> ---
>  .../devicetree/bindings/dma/adi,axi-dmac.yaml         | 19 +++++--------------
>  1 file changed, 5 insertions(+), 14 deletions(-)
> 

With 'required' fixed:

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/dma/adi,axi-dmac.yaml b/Documentation/devicetree/bindings/dma/adi,axi-dmac.yaml
index b1f4bdcab4fd..4a4295e699f0 100644
--- a/Documentation/devicetree/bindings/dma/adi,axi-dmac.yaml
+++ b/Documentation/devicetree/bindings/dma/adi,axi-dmac.yaml
@@ -33,8 +33,12 @@  properties:
     const: 1
 
   adi,channels:
+    deprecated: true
     type: object
-    description: This sub-node must contain a sub-node for each DMA channel.
+    description:
+      This sub-node must contain a sub-node for each DMA channel. This node is
+      only required for IP versions older than 4.3.a and should otherwise be
+      omitted.
     additionalProperties: false
 
     properties:
@@ -123,17 +127,4 @@  examples:
         interrupts = <0 57 0>;
         clocks = <&clkc 16>;
         #dma-cells = <1>;
-
-        adi,channels {
-            #size-cells = <0>;
-            #address-cells = <1>;
-
-            dma-channel@0 {
-                reg = <0>;
-                adi,source-bus-width = <32>;
-                adi,source-bus-type = <0>; /* Memory mapped */
-                adi,destination-bus-width = <64>;
-                adi,destination-bus-type = <2>; /* FIFO */
-            };
-        };
     };