diff options
| author | Bhargav Joshi <j.bhargav.u@gmail.com> | 2026-09-01 04:53:05 +0530 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2026-09-10 14:50:30 +0200 |
| commit | d0e95f1c08264bc11f84f6acd65d03e8b1773c08 (patch) | |
| tree | 62ea28c4b38b04c09cc83223e2587c147044e5a0 | |
| parent | 2542613815381e090d5036d5751ab5e2fd9f8b07 (diff) | |
| download | linux-next-d0e95f1c08264bc11f84f6acd65d03e8b1773c08.tar.gz linux-next-d0e95f1c08264bc11f84f6acd65d03e8b1773c08.zip | |
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.
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
Link: https://patch.msgid.link/20260901-ti-am33-usb-v3-1-5e15c617d2e9@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml | 109 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/usb/am33xx-usb.txt | 14 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/usb/da8xx-usb.txt | 12 |
3 files changed, 109 insertions, 26 deletions
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 000000000000..a8c28e8ada07 --- /dev/null +++ b/Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml @@ -0,0 +1,109 @@ +# 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# + +title: TI CPPI41 DMA Controller + +maintainers: + - Sebastian Andrzej Siewior <bigeasy@linutronix.de> + +properties: + compatible: + enum: + - ti,am3359-cppi41 + - ti,da830-cppi41 + + reg: + minItems: 3 + maxItems: 4 + + reg-names: + minItems: 3 + maxItems: 4 + + interrupts: + maxItems: 1 + + interrupt-names: + const: glue + + "#dma-cells": + const: 2 + + dma-channels: + description: Number of DMA channels supported. + $ref: /schemas/types.yaml#/definitions/uint32 + + dma-requests: + description: Number of DMA requests supported. + $ref: /schemas/types.yaml#/definitions/uint32 + + power-domains: + maxItems: 1 + + "#dma-channels": + description: Deprecated, use dma-channels instead. + deprecated: true + + "#dma-requests": + description: Deprecated, use dma-requests instead. + deprecated: true + +required: + - compatible + - reg + - reg-names + - "#dma-cells" + - dma-channels + +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 + - interrupts + - dma-requests + else: + properties: + reg: + maxItems: 3 + reg-names: + items: + - const: controller + - const: scheduler + - const: queuemgr + +unevaluatedProperties: false + +examples: + - | + dma-controller@7402000 { + compatible = "ti,am3359-cppi41"; + reg = <0x47400000 0x1000>, + <0x47402000 0x1000>, + <0x47403000 0x1000>, + <0x47404000 0x4000>; + reg-names = "glue", "controller", "scheduler", "queuemgr"; + interrupts = <17>; + interrupt-names = "glue"; + #dma-cells = <2>; + dma-channels = <30>; + dma-requests = <256>; + }; diff --git a/Documentation/devicetree/bindings/usb/am33xx-usb.txt b/Documentation/devicetree/bindings/usb/am33xx-usb.txt index 654ffc62d013..8431de346129 100644 --- a/Documentation/devicetree/bindings/usb/am33xx-usb.txt +++ b/Documentation/devicetree/bindings/usb/am33xx-usb.txt @@ -51,20 +51,6 @@ USB The controller should have an "usb" alias numbered properly in the alias node. -DMA -~~~ -- compatible: ti,am3359-cppi41 -- reg: offset and length of the following register spaces: USBSS, USB - CPPI DMA Controller, USB CPPI DMA Scheduler, USB Queue Manager -- reg-names: glue, controller, scheduler, queuemgr -- #dma-cells: should be set to 2. The first number represents the - endpoint number (0 … 14 for endpoints 1 … 15 on instance 0 and 15 … 29 - for endpoints 1 … 15 on instance 1). The second number is 0 for RX and - 1 for TX transfers. -- dma-channels: should be set to 30 representing the 15 endpoints for - each USB instance. -- #dma-channels: deprecated - Example: ~~~~~~~~ The following example contains all the nodes as used on am335x-evm: diff --git a/Documentation/devicetree/bindings/usb/da8xx-usb.txt b/Documentation/devicetree/bindings/usb/da8xx-usb.txt index fb2027a7d80d..00320d92d3bb 100644 --- a/Documentation/devicetree/bindings/usb/da8xx-usb.txt +++ b/Documentation/devicetree/bindings/usb/da8xx-usb.txt @@ -27,18 +27,6 @@ Optional properties: ~~~~~~~~~~~~~~~~~~~~ - vbus-supply: Phandle to a regulator providing the USB bus power. -DMA -~~~ -- compatible: ti,da830-cppi41 -- reg: offset and length of the following register spaces: CPPI DMA Controller, - CPPI DMA Scheduler, Queue Manager -- reg-names: "controller", "scheduler", "queuemgr" -- #dma-cells: should be set to 2. The first number represents the - channel number (0 … 3 for endpoints 1 … 4). - The second number is 0 for RX and 1 for TX transfers. -- dma-channels: should be set to 4 representing the 4 endpoints. -- #dma-channels: deprecated - Example: usb_phy: usb-phy { compatible = "ti,da830-usb-phy"; |
