dt/bindings: da8xx-usb: Add binding for the CPPI 4.1 DMA controller
authorAlexandre Bailon <abailon@baylibre.com>
Mon, 30 Jan 2017 17:49:19 +0000 (18:49 +0100)
committerVinod Koul <vinod.koul@intel.com>
Tue, 7 Mar 2017 08:12:27 +0000 (13:42 +0530)
DT binding for the TI DA8xx/OMAP-L1x/AM17xx/AM18xx CPPI 4.1 DMA controller.

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Documentation/devicetree/bindings/usb/da8xx-usb.txt

index ccb844a..717c5f6 100644 (file)
@@ -18,10 +18,26 @@ Required properties:
 
  - phy-names: Should be "usb-phy"
 
+ - dmas: specifies the dma channels
+
+ - dma-names: specifies the names of the channels. Use "rxN" for receive
+   and "txN" for transmit endpoints. N specifies the endpoint number.
+
 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.
+
 Example:
        usb_phy: usb-phy {
                compatible = "ti,da830-usb-phy";
@@ -30,7 +46,10 @@ Example:
        };
        usb0: usb@200000 {
                compatible = "ti,da830-musb";
-               reg =   <0x00200000 0x10000>;
+               reg = <0x00200000 0x1000>;
+               ranges;
+               #address-cells = <1>;
+               #size-cells = <1>;
                interrupts = <58>;
                interrupt-names = "mc";
 
@@ -39,5 +58,25 @@ Example:
                phys = <&usb_phy 0>;
                phy-names = "usb-phy";
 
+               dmas = <&cppi41dma 0 0 &cppi41dma 1 0
+                       &cppi41dma 2 0 &cppi41dma 3 0
+                       &cppi41dma 0 1 &cppi41dma 1 1
+                       &cppi41dma 2 1 &cppi41dma 3 1>;
+               dma-names =
+                       "rx1", "rx2", "rx3", "rx4",
+                       "tx1", "tx2", "tx3", "tx4";
+
                status = "okay";
+
+               cppi41dma: dma-controller@201000 {
+                       compatible = "ti,da830-cppi41";
+                       reg =  <0x201000 0x1000
+                               0x202000 0x1000
+                               0x204000 0x4000>;
+                       reg-names = "controller", "scheduler", "queuemgr";
+                       interrupts = <58>;
+                       #dma-cells = <2>;
+                       #dma-channels = <4>;
+               };
+
        };