Device Tree Configuration

In the DTSI file, the system provides general configuration information for DMA controller, see the following code block for an example.
Note: You are not recommended to change the following configuration. If you need to change, make sure you contact your system maintenance engineer in advance.
dma: dma-controller@16050000 {
compatible = "starfive,jh7110-dma", "snps,axi-dma-1.01a";
reg = <0x0 0x16050000 0x0 0x10000>;
clocks = <&clkgen JH7110_DMA1P_CLK_AXI>,
        <&clkgen JH7110_DMA1P_CLK_AHB>; 
clock-names = "core-clk", "cfgr-clk";
resets = <&rstgen RSTN_U0_DW_DMA1P_AXI>,
          <&rstgen RSTN_U0_DW_DMA1P_AHB>; 
reset-names = "rst-axi", "rst-ahb";
interrupts = <73>; 
dma-cells = <2>; 
dma-channels = <4>; 
snps,dma-masters = <1>; 
snps,data-width = <3>; 
snps,num-hs-if = <56>; 
snps,block-size = <65536 65536 65536 65536>;
snps,priority = <0 1 2 3>; 
snps,axi-max-burst-len = <16>; 
status = "disabled"; 
};
The following list provides explanations for the parameters included in the above code block.
  • compatible: Compatibility information, used to associate the driver and its target device.
  • reg: Register base address "0x16050000" and range "0x10000".
  • clocks: The clocks used by the DMA module.
  • clock-names: The names of the above clocks.
  • resets: The reset signals used by the DMA module.
  • reset-names: The names of the above reset signals.
  • interrupts: Hardware interrupt ID.
  • dma-cells: The field is used to configure DMA cells via DTS configuration.
  • dma-channels: The supported DMA channels.
  • dma-masters: The supported AXI master interfaces.
  • data-width: The field is used to configure data bus width (Unit: Byte). The default value is 3.
  • num-hs-if: The total count of hardware handshakes, maximum 56 handshakes.
  • priority: The priorities of the 4 channels mentioned in the dma-channels field.
  • axi-max-burst-len: The maximum data length allowed in one single transmission.
  • status: The work status of the DMA module. To enable the module, set this bit as "okay" or to disable the module, set this bit as "disabled".