1*cb7aa33aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*cb7aa33aSEmmanuel Vadot%YAML 1.2 3*cb7aa33aSEmmanuel Vadot--- 4*cb7aa33aSEmmanuel Vadot$id: http://devicetree.org/schemas/dma/fsl,imx-sdma.yaml# 5*cb7aa33aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*cb7aa33aSEmmanuel Vadot 7*cb7aa33aSEmmanuel Vadottitle: Freescale Smart Direct Memory Access (SDMA) Controller for i.MX 8*cb7aa33aSEmmanuel Vadot 9*cb7aa33aSEmmanuel Vadotmaintainers: 10*cb7aa33aSEmmanuel Vadot - Joy Zou <joy.zou@nxp.com> 11*cb7aa33aSEmmanuel Vadot 12*cb7aa33aSEmmanuel VadotallOf: 13*cb7aa33aSEmmanuel Vadot - $ref: dma-controller.yaml# 14*cb7aa33aSEmmanuel Vadot 15*cb7aa33aSEmmanuel Vadotproperties: 16*cb7aa33aSEmmanuel Vadot compatible: 17*cb7aa33aSEmmanuel Vadot oneOf: 18*cb7aa33aSEmmanuel Vadot - items: 19*cb7aa33aSEmmanuel Vadot - enum: 20*cb7aa33aSEmmanuel Vadot - fsl,imx50-sdma 21*cb7aa33aSEmmanuel Vadot - fsl,imx51-sdma 22*cb7aa33aSEmmanuel Vadot - fsl,imx53-sdma 23*cb7aa33aSEmmanuel Vadot - fsl,imx6q-sdma 24*cb7aa33aSEmmanuel Vadot - fsl,imx7d-sdma 25*cb7aa33aSEmmanuel Vadot - const: fsl,imx35-sdma 26*cb7aa33aSEmmanuel Vadot - items: 27*cb7aa33aSEmmanuel Vadot - enum: 28*cb7aa33aSEmmanuel Vadot - fsl,imx6sx-sdma 29*cb7aa33aSEmmanuel Vadot - fsl,imx6sl-sdma 30*cb7aa33aSEmmanuel Vadot - const: fsl,imx6q-sdma 31*cb7aa33aSEmmanuel Vadot - items: 32*cb7aa33aSEmmanuel Vadot - const: fsl,imx6ul-sdma 33*cb7aa33aSEmmanuel Vadot - const: fsl,imx6q-sdma 34*cb7aa33aSEmmanuel Vadot - const: fsl,imx35-sdma 35*cb7aa33aSEmmanuel Vadot - items: 36*cb7aa33aSEmmanuel Vadot - const: fsl,imx6sll-sdma 37*cb7aa33aSEmmanuel Vadot - const: fsl,imx6ul-sdma 38*cb7aa33aSEmmanuel Vadot - items: 39*cb7aa33aSEmmanuel Vadot - const: fsl,imx8mq-sdma 40*cb7aa33aSEmmanuel Vadot - const: fsl,imx7d-sdma 41*cb7aa33aSEmmanuel Vadot - items: 42*cb7aa33aSEmmanuel Vadot - enum: 43*cb7aa33aSEmmanuel Vadot - fsl,imx8mp-sdma 44*cb7aa33aSEmmanuel Vadot - fsl,imx8mn-sdma 45*cb7aa33aSEmmanuel Vadot - fsl,imx8mm-sdma 46*cb7aa33aSEmmanuel Vadot - const: fsl,imx8mq-sdma 47*cb7aa33aSEmmanuel Vadot - items: 48*cb7aa33aSEmmanuel Vadot - enum: 49*cb7aa33aSEmmanuel Vadot - fsl,imx25-sdma 50*cb7aa33aSEmmanuel Vadot - fsl,imx31-sdma 51*cb7aa33aSEmmanuel Vadot - fsl,imx35-sdma 52*cb7aa33aSEmmanuel Vadot reg: 53*cb7aa33aSEmmanuel Vadot maxItems: 1 54*cb7aa33aSEmmanuel Vadot 55*cb7aa33aSEmmanuel Vadot interrupts: 56*cb7aa33aSEmmanuel Vadot maxItems: 1 57*cb7aa33aSEmmanuel Vadot 58*cb7aa33aSEmmanuel Vadot fsl,sdma-ram-script-name: 59*cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 60*cb7aa33aSEmmanuel Vadot description: Should contain the full path of SDMA RAM scripts firmware. 61*cb7aa33aSEmmanuel Vadot 62*cb7aa33aSEmmanuel Vadot "#dma-cells": 63*cb7aa33aSEmmanuel Vadot const: 3 64*cb7aa33aSEmmanuel Vadot description: | 65*cb7aa33aSEmmanuel Vadot The first cell: request/event ID 66*cb7aa33aSEmmanuel Vadot 67*cb7aa33aSEmmanuel Vadot The second cell: peripheral types ID 68*cb7aa33aSEmmanuel Vadot enum: 69*cb7aa33aSEmmanuel Vadot - MCU domain SSI: 0 70*cb7aa33aSEmmanuel Vadot - Shared SSI: 1 71*cb7aa33aSEmmanuel Vadot - MMC: 2 72*cb7aa33aSEmmanuel Vadot - SDHC: 3 73*cb7aa33aSEmmanuel Vadot - MCU domain UART: 4 74*cb7aa33aSEmmanuel Vadot - Shared UART: 5 75*cb7aa33aSEmmanuel Vadot - FIRI: 6 76*cb7aa33aSEmmanuel Vadot - MCU domain CSPI: 7 77*cb7aa33aSEmmanuel Vadot - Shared CSPI: 8 78*cb7aa33aSEmmanuel Vadot - SIM: 9 79*cb7aa33aSEmmanuel Vadot - ATA: 10 80*cb7aa33aSEmmanuel Vadot - CCM: 11 81*cb7aa33aSEmmanuel Vadot - External peripheral: 12 82*cb7aa33aSEmmanuel Vadot - Memory Stick Host Controller: 13 83*cb7aa33aSEmmanuel Vadot - Shared Memory Stick Host Controller: 14 84*cb7aa33aSEmmanuel Vadot - DSP: 15 85*cb7aa33aSEmmanuel Vadot - Memory: 16 86*cb7aa33aSEmmanuel Vadot - FIFO type Memory: 17 87*cb7aa33aSEmmanuel Vadot - SPDIF: 18 88*cb7aa33aSEmmanuel Vadot - IPU Memory: 19 89*cb7aa33aSEmmanuel Vadot - ASRC: 20 90*cb7aa33aSEmmanuel Vadot - ESAI: 21 91*cb7aa33aSEmmanuel Vadot - SSI Dual FIFO: 22 92*cb7aa33aSEmmanuel Vadot description: needs firmware more than ver 2 93*cb7aa33aSEmmanuel Vadot - Shared ASRC: 23 94*cb7aa33aSEmmanuel Vadot - SAI: 24 95*cb7aa33aSEmmanuel Vadot - HDMI Audio: 25 96*cb7aa33aSEmmanuel Vadot 97*cb7aa33aSEmmanuel Vadot The third cell: transfer priority ID 98*cb7aa33aSEmmanuel Vadot enum: 99*cb7aa33aSEmmanuel Vadot - High: 0 100*cb7aa33aSEmmanuel Vadot - Medium: 1 101*cb7aa33aSEmmanuel Vadot - Low: 2 102*cb7aa33aSEmmanuel Vadot 103*cb7aa33aSEmmanuel Vadot gpr: 104*cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 105*cb7aa33aSEmmanuel Vadot description: The phandle to the General Purpose Register (GPR) node 106*cb7aa33aSEmmanuel Vadot 107*cb7aa33aSEmmanuel Vadot fsl,sdma-event-remap: 108*cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-matrix 109*cb7aa33aSEmmanuel Vadot maxItems: 2 110*cb7aa33aSEmmanuel Vadot items: 111*cb7aa33aSEmmanuel Vadot items: 112*cb7aa33aSEmmanuel Vadot - description: GPR register offset 113*cb7aa33aSEmmanuel Vadot - description: GPR register shift 114*cb7aa33aSEmmanuel Vadot - description: GPR register value 115*cb7aa33aSEmmanuel Vadot description: | 116*cb7aa33aSEmmanuel Vadot Register bits of sdma event remap, the format is <reg shift val>. 117*cb7aa33aSEmmanuel Vadot The order is <RX>, <TX>. 118*cb7aa33aSEmmanuel Vadot 119*cb7aa33aSEmmanuel Vadot clocks: 120*cb7aa33aSEmmanuel Vadot maxItems: 2 121*cb7aa33aSEmmanuel Vadot 122*cb7aa33aSEmmanuel Vadot clock-names: 123*cb7aa33aSEmmanuel Vadot items: 124*cb7aa33aSEmmanuel Vadot - const: ipg 125*cb7aa33aSEmmanuel Vadot - const: ahb 126*cb7aa33aSEmmanuel Vadot 127*cb7aa33aSEmmanuel Vadot iram: 128*cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 129*cb7aa33aSEmmanuel Vadot description: The phandle to the On-chip RAM (OCRAM) node. 130*cb7aa33aSEmmanuel Vadot 131*cb7aa33aSEmmanuel Vadotrequired: 132*cb7aa33aSEmmanuel Vadot - compatible 133*cb7aa33aSEmmanuel Vadot - reg 134*cb7aa33aSEmmanuel Vadot - interrupts 135*cb7aa33aSEmmanuel Vadot - fsl,sdma-ram-script-name 136*cb7aa33aSEmmanuel Vadot 137*cb7aa33aSEmmanuel VadotadditionalProperties: false 138*cb7aa33aSEmmanuel Vadot 139*cb7aa33aSEmmanuel Vadotexamples: 140*cb7aa33aSEmmanuel Vadot - | 141*cb7aa33aSEmmanuel Vadot sdma: dma-controller@83fb0000 { 142*cb7aa33aSEmmanuel Vadot compatible = "fsl,imx51-sdma", "fsl,imx35-sdma"; 143*cb7aa33aSEmmanuel Vadot reg = <0x83fb0000 0x4000>; 144*cb7aa33aSEmmanuel Vadot interrupts = <6>; 145*cb7aa33aSEmmanuel Vadot #dma-cells = <3>; 146*cb7aa33aSEmmanuel Vadot fsl,sdma-ram-script-name = "sdma-imx51.bin"; 147*cb7aa33aSEmmanuel Vadot }; 148*cb7aa33aSEmmanuel Vadot 149*cb7aa33aSEmmanuel Vadot... 150