12609a127SMaxime Ripard# SPDX-License-Identifier: GPL-2.0 22609a127SMaxime Ripard%YAML 1.2 32609a127SMaxime Ripard--- 42609a127SMaxime Ripard$id: http://devicetree.org/schemas/arm/sunxi/allwinner,sun4i-a10-mbus.yaml# 52609a127SMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml# 62609a127SMaxime Ripard 72609a127SMaxime Ripardtitle: Allwinner Memory Bus (MBUS) controller 82609a127SMaxime Ripard 92609a127SMaxime Ripardmaintainers: 102609a127SMaxime Ripard - Chen-Yu Tsai <wens@csie.org> 112609a127SMaxime Ripard - Maxime Ripard <mripard@kernel.org> 122609a127SMaxime Ripard 132609a127SMaxime Riparddescription: | 142609a127SMaxime Ripard The MBUS controller drives the MBUS that other devices in the SoC 152609a127SMaxime Ripard will use to perform DMA. It also has a register interface that 162609a127SMaxime Ripard allows to monitor and control the bandwidth and priorities for 172609a127SMaxime Ripard masters on that bus. 182609a127SMaxime Ripard 192609a127SMaxime Ripard Each device having to perform their DMA through the MBUS must have 202609a127SMaxime Ripard the interconnects and interconnect-names properties set to the MBUS 212609a127SMaxime Ripard controller and with "dma-mem" as the interconnect name. 222609a127SMaxime Ripard 232609a127SMaxime Ripardproperties: 242609a127SMaxime Ripard "#interconnect-cells": 252609a127SMaxime Ripard const: 1 262609a127SMaxime Ripard description: 272609a127SMaxime Ripard The content of the cell is the MBUS ID. 282609a127SMaxime Ripard 292609a127SMaxime Ripard compatible: 302609a127SMaxime Ripard enum: 312609a127SMaxime Ripard - allwinner,sun5i-a13-mbus 322609a127SMaxime Ripard - allwinner,sun8i-h3-mbus 33d7b101a3SMaxime Ripard - allwinner,sun8i-r40-mbus 34f0df2e05SJernej Skrabec - allwinner,sun50i-a64-mbus 35*9f193dedSSamuel Holland - allwinner,sun50i-h5-mbus 362609a127SMaxime Ripard 372609a127SMaxime Ripard reg: 38245578baSSamuel Holland minItems: 1 39245578baSSamuel Holland items: 40245578baSSamuel Holland - description: MBUS interconnect/bandwidth limit/PMU registers 41245578baSSamuel Holland - description: DRAM controller/PHY registers 42245578baSSamuel Holland 43245578baSSamuel Holland reg-names: 44245578baSSamuel Holland minItems: 1 45245578baSSamuel Holland items: 46245578baSSamuel Holland - const: mbus 47245578baSSamuel Holland - const: dram 482609a127SMaxime Ripard 492609a127SMaxime Ripard clocks: 50245578baSSamuel Holland minItems: 1 51245578baSSamuel Holland items: 52245578baSSamuel Holland - description: MBUS interconnect module clock 53245578baSSamuel Holland - description: DRAM controller/PHY module clock 54245578baSSamuel Holland - description: Register bus clock, shared by MBUS and DRAM 55245578baSSamuel Holland 56245578baSSamuel Holland clock-names: 57245578baSSamuel Holland minItems: 1 58245578baSSamuel Holland items: 59245578baSSamuel Holland - const: mbus 60245578baSSamuel Holland - const: dram 61245578baSSamuel Holland - const: bus 62245578baSSamuel Holland 63245578baSSamuel Holland interrupts: 642609a127SMaxime Ripard maxItems: 1 65245578baSSamuel Holland description: 66245578baSSamuel Holland MBUS PMU activity interrupt. 672609a127SMaxime Ripard 682609a127SMaxime Ripard dma-ranges: 692609a127SMaxime Ripard description: 702609a127SMaxime Ripard See section 2.3.9 of the DeviceTree Specification. 712609a127SMaxime Ripard 72f88d59fcSRob Herring '#address-cells': true 73f88d59fcSRob Herring 74f88d59fcSRob Herring '#size-cells': true 75f88d59fcSRob Herring 762609a127SMaxime Ripardrequired: 772609a127SMaxime Ripard - "#interconnect-cells" 782609a127SMaxime Ripard - compatible 792609a127SMaxime Ripard - reg 802609a127SMaxime Ripard - clocks 812609a127SMaxime Ripard - dma-ranges 822609a127SMaxime Ripard 83245578baSSamuel Hollandif: 84245578baSSamuel Holland properties: 85245578baSSamuel Holland compatible: 86245578baSSamuel Holland contains: 87245578baSSamuel Holland enum: 88245578baSSamuel Holland - allwinner,sun8i-h3-mbus 89245578baSSamuel Holland - allwinner,sun50i-a64-mbus 90*9f193dedSSamuel Holland - allwinner,sun50i-h5-mbus 91245578baSSamuel Holland 92245578baSSamuel Hollandthen: 93245578baSSamuel Holland properties: 94245578baSSamuel Holland reg: 95245578baSSamuel Holland minItems: 2 96245578baSSamuel Holland 97245578baSSamuel Holland reg-names: 98245578baSSamuel Holland minItems: 2 99245578baSSamuel Holland 100245578baSSamuel Holland clocks: 101245578baSSamuel Holland minItems: 3 102245578baSSamuel Holland 103245578baSSamuel Holland clock-names: 104245578baSSamuel Holland minItems: 3 105245578baSSamuel Holland 106245578baSSamuel Holland required: 107245578baSSamuel Holland - reg-names 108245578baSSamuel Holland - clock-names 109245578baSSamuel Holland 110245578baSSamuel Hollandelse: 111245578baSSamuel Holland properties: 112245578baSSamuel Holland reg: 113245578baSSamuel Holland maxItems: 1 114245578baSSamuel Holland 115245578baSSamuel Holland reg-names: 116245578baSSamuel Holland maxItems: 1 117245578baSSamuel Holland 118245578baSSamuel Holland clocks: 119245578baSSamuel Holland maxItems: 1 120245578baSSamuel Holland 121245578baSSamuel Holland clock-names: 122245578baSSamuel Holland maxItems: 1 123245578baSSamuel Holland 1242609a127SMaxime RipardadditionalProperties: false 1252609a127SMaxime Ripard 1262609a127SMaxime Ripardexamples: 1272609a127SMaxime Ripard - | 128245578baSSamuel Holland #include <dt-bindings/clock/sun50i-a64-ccu.h> 129245578baSSamuel Holland #include <dt-bindings/interrupt-controller/arm-gic.h> 1302609a127SMaxime Ripard 131245578baSSamuel Holland dram-controller@1c01000 { 1322609a127SMaxime Ripard compatible = "allwinner,sun5i-a13-mbus"; 1332609a127SMaxime Ripard reg = <0x01c01000 0x1000>; 1342609a127SMaxime Ripard clocks = <&ccu CLK_MBUS>; 135f88d59fcSRob Herring #address-cells = <1>; 136f88d59fcSRob Herring #size-cells = <1>; 1372609a127SMaxime Ripard dma-ranges = <0x00000000 0x40000000 0x20000000>; 1382609a127SMaxime Ripard #interconnect-cells = <1>; 1392609a127SMaxime Ripard }; 1402609a127SMaxime Ripard 141245578baSSamuel Holland - | 142245578baSSamuel Holland dram-controller@1c62000 { 143245578baSSamuel Holland compatible = "allwinner,sun50i-a64-mbus"; 144245578baSSamuel Holland reg = <0x01c62000 0x1000>, 145245578baSSamuel Holland <0x01c63000 0x1000>; 146245578baSSamuel Holland reg-names = "mbus", "dram"; 147245578baSSamuel Holland clocks = <&ccu CLK_MBUS>, 148245578baSSamuel Holland <&ccu CLK_DRAM>, 149245578baSSamuel Holland <&ccu CLK_BUS_DRAM>; 150245578baSSamuel Holland clock-names = "mbus", "dram", "bus"; 151245578baSSamuel Holland interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 152245578baSSamuel Holland #address-cells = <1>; 153245578baSSamuel Holland #size-cells = <1>; 154245578baSSamuel Holland dma-ranges = <0x00000000 0x40000000 0xc0000000>; 155245578baSSamuel Holland #interconnect-cells = <1>; 156245578baSSamuel Holland }; 157245578baSSamuel Holland 1582609a127SMaxime Ripard... 159