This patchset mainly adds SMI support for mt8195. Comparing with the previous version, add two new functions: a) add smi sub common b) add initial setting for smi-common and smi-larb. Change note: v4:1) base on v5.15-rc1 2) In the dt-binding: a. add "else mediatek,smi: false." in the yaml. b. Remove mediatek,smi_sub_common. since we have only 2 level currently, It should be smi-sub-common if that node has "mediatek,smi". otherwise, it is smi-common. v3: https://lore.kernel.org/linux-mediatek/20210810080859.29511-1-yong.wu@xxxxxxxxxxxx/ 1)in the dt-binding: a. change mediatek,smi type from phandle-array to phandle from Rob. b. Add a new bool property (mediatek,smi_sub_common) to indicate if this is smi-sub-common. 2)change the clock using bulk parting. keep the smi-common's flag. more strict. 3) more comment about larb initial setting. v2: https://lore.kernel.org/linux-mediatek/20210715121209.31024-1-yong.wu@xxxxxxxxxxxx/ rebase on v5.14-rc1 1) Adjust clk_bulk flow: use devm_clk_bulk_get for necessary clocks. 2) Add two new little patches: a) use devm_platform_ioremap_resource b) Add error handle for smi_probe v1: https://lore.kernel.org/linux-mediatek/20210616114346.18812-1-yong.wu@xxxxxxxxxxxx/ Yong Wu (13): dt-bindings: memory: mediatek: Add mt8195 smi binding dt-bindings: memory: mediatek: Add mt8195 smi sub common memory: mtk-smi: Use clk_bulk clock ops memory: mtk-smi: Rename smi_gen to smi_type memory: mtk-smi: Adjust some code position memory: mtk-smi: Add error handle for smi_probe memory: mtk-smi: Add device link for smi-sub-common memory: mtk-smi: Add clocks for smi-sub-common memory: mtk-smi: Use devm_platform_ioremap_resource memory: mtk-smi: mt8195: Add smi support memory: mtk-smi: mt8195: Add initial setting for smi-common memory: mtk-smi: mt8195: Add initial setting for smi-larb MAINTAINERS: Add entry for MediaTek SMI .../mediatek,smi-common.yaml | 34 +- .../memory-controllers/mediatek,smi-larb.yaml | 3 + MAINTAINERS | 8 + drivers/memory/mtk-smi.c | 596 ++++++++++-------- 4 files changed, 393 insertions(+), 248 deletions(-) -- 2.18.0