The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/dma/renesas,shdma.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 * SHDMA Device Tree bindings
    2 
    3 Sh-/r-mobile and R-Car systems often have multiple identical DMA controller
    4 instances, capable of serving any of a common set of DMA slave devices, using
    5 the same configuration. To describe this topology we require all compatible
    6 SHDMA DT nodes to be placed under a DMA multiplexer node. All such compatible
    7 DMAC instances have the same number of channels and use the same DMA
    8 descriptors. Therefore respective DMA DT bindings can also all be placed in the
    9 multiplexer node. Even if there is only one such DMAC instance on a system, it
   10 still has to be placed under such a multiplexer node.
   11 
   12 * DMA multiplexer
   13 
   14 Required properties:
   15 - compatible:   should be "renesas,shdma-mux"
   16 - #dma-cells:   should be <1>, see "dmas" property below
   17 
   18 Optional properties (currently unused):
   19 - dma-channels: number of DMA channels
   20 - dma-requests: number of DMA request signals
   21 
   22 * DMA controller
   23 
   24 Required properties:
   25 - compatible:   should be of the form "renesas,shdma-<soc>", where <soc> should
   26                 be replaced with the desired SoC model, e.g.
   27                 "renesas,shdma-r8a73a4" for the system DMAC on r8a73a4 SoC
   28 
   29 Example:
   30         dmac: dma-multiplexer@0 {
   31                 compatible = "renesas,shdma-mux";
   32                 #dma-cells = <1>;
   33                 dma-channels = <20>;
   34                 dma-requests = <256>;
   35                 #address-cells = <2>;
   36                 #size-cells = <2>;
   37                 ranges;
   38 
   39                 dma0: dma-controller@e6700020 {
   40                         compatible = "renesas,shdma-r8a73a4";
   41                         reg = <0 0xe6700020 0 0x89e0>;
   42                         interrupt-parent = <&gic>;
   43                         interrupts = <0 220 4
   44                                         0 200 4
   45                                         0 201 4
   46                                         0 202 4
   47                                         0 203 4
   48                                         0 204 4
   49                                         0 205 4
   50                                         0 206 4
   51                                         0 207 4
   52                                         0 208 4
   53                                         0 209 4
   54                                         0 210 4
   55                                         0 211 4
   56                                         0 212 4
   57                                         0 213 4
   58                                         0 214 4
   59                                         0 215 4
   60                                         0 216 4
   61                                         0 217 4
   62                                         0 218 4
   63                                         0 219 4>;
   64                         interrupt-names = "error",
   65                                         "ch0", "ch1", "ch2", "ch3",
   66                                         "ch4", "ch5", "ch6", "ch7",
   67                                         "ch8", "ch9", "ch10", "ch11",
   68                                         "ch12", "ch13", "ch14", "ch15",
   69                                         "ch16", "ch17", "ch18", "ch19";
   70                 };
   71         };
   72 
   73 * DMA client
   74 
   75 Required properties:
   76 - dmas:         a list of <[DMA multiplexer phandle] [MID/RID value]> pairs,
   77                 where MID/RID values are fixed handles, specified in the SoC
   78                 manual
   79 - dma-names:    a list of DMA channel names, one per "dmas" entry
   80 
   81 Example:
   82         dmas = <&dmac 0xd1
   83                 &dmac 0xd2>;
   84         dma-names = "tx", "rx";

Cache object: 2834b194ef81e443fd7d6ff353ed18d9


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.