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