Documentation / devicetree / bindings / dma / loongson,ls1b-apbdma.yaml


Based on kernel version 6.12.4. Page generated on 2024-12-12 21:01 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/loongson,ls1b-apbdma.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Loongson-1 APB DMA Controller

maintainers:
  - Keguang Zhang <keguang.zhang@gmail.com>

description:
  Loongson-1 APB DMA controller provides 3 independent channels for
  peripherals such as NAND, audio playback and capture.

properties:
  compatible:
    oneOf:
      - const: loongson,ls1b-apbdma
      - items:
          - enum:
              - loongson,ls1a-apbdma
              - loongson,ls1c-apbdma
          - const: loongson,ls1b-apbdma

  reg:
    maxItems: 1

  interrupts:
    items:
      - description: NAND interrupt
      - description: Audio playback interrupt
      - description: Audio capture interrupt

  interrupt-names:
    items:
      - const: ch0
      - const: ch1
      - const: ch2
 
  '#dma-cells':
    const: 1

required:
  - compatible
  - reg
  - interrupts
  - interrupt-names
  - '#dma-cells'

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    dma-controller@1fd01160 {
        compatible = "loongson,ls1b-apbdma";
        reg = <0x1fd01160 0x4>;
        interrupt-parent = <&intc0>;
        interrupts = <13 IRQ_TYPE_EDGE_RISING>,
                     <14 IRQ_TYPE_EDGE_RISING>,
                     <15 IRQ_TYPE_EDGE_RISING>;
        interrupt-names = "ch0", "ch1", "ch2";
        #dma-cells = <1>;
    };