Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/dma/sifive,fu540-c000-pdma.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: SiFive Unleashed Rev C000 Platform DMA
0008 
0009 maintainers:
0010   - Green Wan <green.wan@sifive.com>
0011   - Palmer Debbelt <palmer@sifive.com>
0012   - Paul Walmsley <paul.walmsley@sifive.com>
0013 
0014 description: |
0015   Platform DMA is a DMA engine of SiFive Unleashed. It supports 4
0016   channels. Each channel has 2 interrupts. One is for DMA done and
0017   the other is for DME error.
0018 
0019   In different SoC, DMA could be attached to different IRQ line.
0020   DT file need to be changed to meet the difference. For technical
0021   doc,
0022 
0023   https://static.dev.sifive.com/FU540-C000-v1.0.pdf
0024 
0025 allOf:
0026   - $ref: "dma-controller.yaml#"
0027 
0028 properties:
0029   compatible:
0030     items:
0031       - enum:
0032           - sifive,fu540-c000-pdma
0033       - const: sifive,pdma0
0034     description:
0035       Should be "sifive,<chip>-pdma" and "sifive,pdma<version>".
0036       Supported compatible strings are -
0037       "sifive,fu540-c000-pdma" for the SiFive PDMA v0 as integrated onto the
0038       SiFive FU540 chip resp and "sifive,pdma0" for the SiFive PDMA v0 IP block
0039       with no chip integration tweaks.
0040 
0041   reg:
0042     maxItems: 1
0043 
0044   interrupts:
0045     minItems: 1
0046     maxItems: 8
0047 
0048   dma-channels:
0049     description: For backwards-compatibility, the default value is 4
0050     minimum: 1
0051     maximum: 4
0052     default: 4
0053 
0054   '#dma-cells':
0055     const: 1
0056 
0057 required:
0058   - compatible
0059   - reg
0060   - interrupts
0061 
0062 unevaluatedProperties: false
0063 
0064 examples:
0065   - |
0066     dma-controller@3000000 {
0067       compatible = "sifive,fu540-c000-pdma", "sifive,pdma0";
0068       reg = <0x3000000 0x8000>;
0069       dma-channels = <4>;
0070       interrupts = <23>, <24>, <25>, <26>, <27>, <28>, <29>, <30>;
0071       #dma-cells = <1>;
0072     };
0073 
0074 ...