mirror of
https://github.com/torvalds/linux.git
synced 2026-11-06 21:58:01 +01:00
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: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
6ba190e3b2
commit
c64189e977
109
Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml
Normal file
109
Documentation/devicetree/bindings/dma/ti/ti,cppi41.yaml
Normal file
|
|
@ -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>;
|
||||
};
|
||||
|
|
@ -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:
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user