xref: /freebsd/sys/contrib/device-tree/Bindings/memory-controllers/mediatek,smi-larb.txt (revision 19261079b74319502c6ffa1249920079f0f69a72)
1SMI (Smart Multimedia Interface) Local Arbiter
2
3The hardware block diagram please check bindings/iommu/mediatek,iommu.txt
4
5Required properties:
6- compatible : must be one of :
7		"mediatek,mt2701-smi-larb"
8		"mediatek,mt2712-smi-larb"
9		"mediatek,mt6779-smi-larb"
10		"mediatek,mt7623-smi-larb", "mediatek,mt2701-smi-larb"
11		"mediatek,mt8167-smi-larb"
12		"mediatek,mt8173-smi-larb"
13		"mediatek,mt8183-smi-larb"
14- reg : the register and size of this local arbiter.
15- mediatek,smi : a phandle to the smi_common node.
16- power-domains : a phandle to the power domain of this local arbiter.
17- clocks : Must contain an entry for each entry in clock-names.
18- clock-names: must contain 2 entries, as follows:
19  - "apb" : Advanced Peripheral Bus clock, It's the clock for setting
20	    the register.
21  - "smi" : It's the clock for transfer data and command.
22  and this optional clock name:
23  - "gals": the clock for GALS(Global Async Local Sync).
24  Here is the list which has this GALS: mt8183.
25
26Required property for mt2701, mt2712, mt6779, mt7623 and mt8167:
27- mediatek,larb-id :the hardware id of this larb.
28
29Example:
30	larb1: larb@16010000 {
31		compatible = "mediatek,mt8173-smi-larb";
32		reg = <0 0x16010000 0 0x1000>;
33		mediatek,smi = <&smi_common>;
34		power-domains = <&scpsys MT8173_POWER_DOMAIN_VDEC>;
35		clocks = <&vdecsys CLK_VDEC_CKEN>,
36			 <&vdecsys CLK_VDEC_LARB_CKEN>;
37		clock-names = "apb", "smi";
38	};
39
40Example for mt2701:
41	larb0: larb@14010000 {
42		compatible = "mediatek,mt2701-smi-larb";
43		reg = <0 0x14010000 0 0x1000>;
44		mediatek,smi = <&smi_common>;
45		mediatek,larb-id = <0>;
46		clocks = <&mmsys CLK_MM_SMI_LARB0>,
47			 <&mmsys CLK_MM_SMI_LARB0>;
48		clock-names = "apb", "smi";
49		power-domains = <&scpsys MT2701_POWER_DOMAIN_DISP>;
50	};
51