Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e5ffa40c authored by Maxime Ripard's avatar Maxime Ripard Committed by Rob Herring
Browse files

dt-bindings: bus: Add binding for the Allwinner MBUS controller



The MBUS controller drives the MBUS that other devices in the SoC will
use to perform DMA. It also has a register interface that allows to
monitor and control the bandwidth and priorities for masters on that
bus.

Signed-off-by: default avatarMaxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent c43a4469
Loading
Loading
Loading
Loading
+36 −0
Original line number Diff line number Diff line
Allwinner Memory Bus (MBUS) controller

The MBUS controller drives the MBUS that other devices in the SoC will
use to perform DMA. It also has a register interface that allows to
monitor and control the bandwidth and priorities for masters on that
bus.

Required properties:
 - compatible: Must be one of:
	- allwinner,sun5i-a13-mbus
 - reg: Offset and length of the register set for the controller
 - clocks: phandle to the clock driving the controller
 - dma-ranges: See section 2.3.9 of the DeviceTree Specification
 - #interconnect-cells: Must be one, with the argument being the MBUS
   port ID

Each device having to perform their DMA through the MBUS must have the
interconnects and interconnect-names properties set to the MBUS
controller and with "dma-mem" as the interconnect name.

Example:

mbus: dram-controller@1c01000 {
	compatible = "allwinner,sun5i-a13-mbus";
	reg = <0x01c01000 0x1000>;
	clocks = <&ccu CLK_MBUS>;
	dma-ranges = <0x00000000 0x40000000 0x20000000>;
	#interconnect-cells = <1>;
};

fe0: display-frontend@1e00000 {
	compatible = "allwinner,sun5i-a13-display-frontend";
	...
	interconnects = <&mbus 19>;
	interconnect-names = "dma-mem";
};