1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*0e8011faSEmmanuel Vadot%YAML 1.2 3*0e8011faSEmmanuel Vadot--- 4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/dma/sprd,sc9860-dma.yaml# 5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: Spreadtrum SC9860 DMA controller 8*0e8011faSEmmanuel Vadot 9*0e8011faSEmmanuel Vadotdescription: | 10*0e8011faSEmmanuel Vadot There are three DMA controllers: AP DMA, AON DMA and AGCP DMA. For AGCP 11*0e8011faSEmmanuel Vadot DMA controller, it can or do not request the IRQ, which will save 12*0e8011faSEmmanuel Vadot system power without resuming system by DMA interrupts if AGCP DMA 13*0e8011faSEmmanuel Vadot does not request the IRQ. 14*0e8011faSEmmanuel Vadot 15*0e8011faSEmmanuel Vadotmaintainers: 16*0e8011faSEmmanuel Vadot - Orson Zhai <orsonzhai@gmail.com> 17*0e8011faSEmmanuel Vadot - Baolin Wang <baolin.wang7@gmail.com> 18*0e8011faSEmmanuel Vadot - Chunyan Zhang <zhang.lyra@gmail.com> 19*0e8011faSEmmanuel Vadot 20*0e8011faSEmmanuel Vadotproperties: 21*0e8011faSEmmanuel Vadot compatible: 22*0e8011faSEmmanuel Vadot const: sprd,sc9860-dma 23*0e8011faSEmmanuel Vadot 24*0e8011faSEmmanuel Vadot reg: 25*0e8011faSEmmanuel Vadot maxItems: 1 26*0e8011faSEmmanuel Vadot 27*0e8011faSEmmanuel Vadot interrupts: 28*0e8011faSEmmanuel Vadot maxItems: 1 29*0e8011faSEmmanuel Vadot 30*0e8011faSEmmanuel Vadot clocks: 31*0e8011faSEmmanuel Vadot minItems: 1 32*0e8011faSEmmanuel Vadot items: 33*0e8011faSEmmanuel Vadot - description: DMA enable clock 34*0e8011faSEmmanuel Vadot - description: optional ashb_eb clock, only for the AGCP DMA controller 35*0e8011faSEmmanuel Vadot 36*0e8011faSEmmanuel Vadot clock-names: 37*0e8011faSEmmanuel Vadot minItems: 1 38*0e8011faSEmmanuel Vadot items: 39*0e8011faSEmmanuel Vadot - const: enable 40*0e8011faSEmmanuel Vadot - const: ashb_eb 41*0e8011faSEmmanuel Vadot 42*0e8011faSEmmanuel Vadot '#dma-cells': 43*0e8011faSEmmanuel Vadot const: 1 44*0e8011faSEmmanuel Vadot 45*0e8011faSEmmanuel Vadot dma-channels: 46*0e8011faSEmmanuel Vadot const: 32 47*0e8011faSEmmanuel Vadot 48*0e8011faSEmmanuel Vadot '#dma-channels': 49*0e8011faSEmmanuel Vadot const: 32 50*0e8011faSEmmanuel Vadot deprecated: true 51*0e8011faSEmmanuel Vadot 52*0e8011faSEmmanuel Vadotrequired: 53*0e8011faSEmmanuel Vadot - compatible 54*0e8011faSEmmanuel Vadot - reg 55*0e8011faSEmmanuel Vadot - clocks 56*0e8011faSEmmanuel Vadot - clock-names 57*0e8011faSEmmanuel Vadot - '#dma-cells' 58*0e8011faSEmmanuel Vadot - dma-channels 59*0e8011faSEmmanuel Vadot 60*0e8011faSEmmanuel VadotallOf: 61*0e8011faSEmmanuel Vadot - $ref: dma-controller.yaml# 62*0e8011faSEmmanuel Vadot 63*0e8011faSEmmanuel VadotunevaluatedProperties: false 64*0e8011faSEmmanuel Vadot 65*0e8011faSEmmanuel Vadotexamples: 66*0e8011faSEmmanuel Vadot - | 67*0e8011faSEmmanuel Vadot #include <dt-bindings/clock/sprd,sc9860-clk.h> 68*0e8011faSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 69*0e8011faSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 70*0e8011faSEmmanuel Vadot 71*0e8011faSEmmanuel Vadot /* AP DMA controller */ 72*0e8011faSEmmanuel Vadot dma-controller@20100000 { 73*0e8011faSEmmanuel Vadot compatible = "sprd,sc9860-dma"; 74*0e8011faSEmmanuel Vadot reg = <0x20100000 0x4000>; 75*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 76*0e8011faSEmmanuel Vadot clocks = <&apahb_gate CLK_DMA_EB>; 77*0e8011faSEmmanuel Vadot clock-names = "enable"; 78*0e8011faSEmmanuel Vadot #dma-cells = <1>; 79*0e8011faSEmmanuel Vadot dma-channels = <32>; 80*0e8011faSEmmanuel Vadot }; 81*0e8011faSEmmanuel Vadot 82*0e8011faSEmmanuel Vadot /* AGCP DMA controller */ 83*0e8011faSEmmanuel Vadot dma-controller@41580000 { 84*0e8011faSEmmanuel Vadot compatible = "sprd,sc9860-dma"; 85*0e8011faSEmmanuel Vadot reg = <0x41580000 0x4000>; 86*0e8011faSEmmanuel Vadot clocks = <&agcp_gate CLK_AGCP_DMAAP_EB>, 87*0e8011faSEmmanuel Vadot <&agcp_gate CLK_AGCP_AP_ASHB_EB>; 88*0e8011faSEmmanuel Vadot clock-names = "enable", "ashb_eb"; 89*0e8011faSEmmanuel Vadot #dma-cells = <1>; 90*0e8011faSEmmanuel Vadot dma-channels = <32>; 91*0e8011faSEmmanuel Vadot }; 92*0e8011faSEmmanuel Vadot... 93