18c2ecf20Sopenharmony_ciSMI (Smart Multimedia Interface) Local Arbiter 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThe hardware block diagram please check bindings/iommu/mediatek,iommu.txt 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciRequired properties: 68c2ecf20Sopenharmony_ci- compatible : must be one of : 78c2ecf20Sopenharmony_ci "mediatek,mt2701-smi-larb" 88c2ecf20Sopenharmony_ci "mediatek,mt2712-smi-larb" 98c2ecf20Sopenharmony_ci "mediatek,mt6779-smi-larb" 108c2ecf20Sopenharmony_ci "mediatek,mt7623-smi-larb", "mediatek,mt2701-smi-larb" 118c2ecf20Sopenharmony_ci "mediatek,mt8167-smi-larb" 128c2ecf20Sopenharmony_ci "mediatek,mt8173-smi-larb" 138c2ecf20Sopenharmony_ci "mediatek,mt8183-smi-larb" 148c2ecf20Sopenharmony_ci- reg : the register and size of this local arbiter. 158c2ecf20Sopenharmony_ci- mediatek,smi : a phandle to the smi_common node. 168c2ecf20Sopenharmony_ci- power-domains : a phandle to the power domain of this local arbiter. 178c2ecf20Sopenharmony_ci- clocks : Must contain an entry for each entry in clock-names. 188c2ecf20Sopenharmony_ci- clock-names: must contain 2 entries, as follows: 198c2ecf20Sopenharmony_ci - "apb" : Advanced Peripheral Bus clock, It's the clock for setting 208c2ecf20Sopenharmony_ci the register. 218c2ecf20Sopenharmony_ci - "smi" : It's the clock for transfer data and command. 228c2ecf20Sopenharmony_ci and this optional clock name: 238c2ecf20Sopenharmony_ci - "gals": the clock for GALS(Global Async Local Sync). 248c2ecf20Sopenharmony_ci Here is the list which has this GALS: mt8183. 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciRequired property for mt2701, mt2712, mt6779, mt7623 and mt8167: 278c2ecf20Sopenharmony_ci- mediatek,larb-id :the hardware id of this larb. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciExample: 308c2ecf20Sopenharmony_ci larb1: larb@16010000 { 318c2ecf20Sopenharmony_ci compatible = "mediatek,mt8173-smi-larb"; 328c2ecf20Sopenharmony_ci reg = <0 0x16010000 0 0x1000>; 338c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common>; 348c2ecf20Sopenharmony_ci power-domains = <&scpsys MT8173_POWER_DOMAIN_VDEC>; 358c2ecf20Sopenharmony_ci clocks = <&vdecsys CLK_VDEC_CKEN>, 368c2ecf20Sopenharmony_ci <&vdecsys CLK_VDEC_LARB_CKEN>; 378c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 388c2ecf20Sopenharmony_ci }; 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciExample for mt2701: 418c2ecf20Sopenharmony_ci larb0: larb@14010000 { 428c2ecf20Sopenharmony_ci compatible = "mediatek,mt2701-smi-larb"; 438c2ecf20Sopenharmony_ci reg = <0 0x14010000 0 0x1000>; 448c2ecf20Sopenharmony_ci mediatek,smi = <&smi_common>; 458c2ecf20Sopenharmony_ci mediatek,larb-id = <0>; 468c2ecf20Sopenharmony_ci clocks = <&mmsys CLK_MM_SMI_LARB0>, 478c2ecf20Sopenharmony_ci <&mmsys CLK_MM_SMI_LARB0>; 488c2ecf20Sopenharmony_ci clock-names = "apb", "smi"; 498c2ecf20Sopenharmony_ci power-domains = <&scpsys MT2701_POWER_DOMAIN_DISP>; 508c2ecf20Sopenharmony_ci }; 51