clk: mediatek: clk-mtk: Register MFG notifier in mtk_clk_simple_probe()

[ Upstream commit fd9fe654f41c0271dbfe55d975c6d1bfa88820fb ]

In preparation for commonizing topckgen probe on various MediaTek SoCs
clock drivers, add the ability to register the MFG MUX notifier in
mtk_clk_simple_probe() by passing a custom notifier register function
pointer, as this function will be slightly different across different
SoCs.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tested-by: Miles Chen <miles.chen@mediatek.com>
Link: https://lore.kernel.org/r/20230120092053.182923-19-angelogioacchino.delregno@collabora.com
Tested-by: Mingming Su <mingming.su@mediatek.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Stable-dep-of: 878e845d8db0 ("clk: mediatek: mt8183: Only enable runtime PM on mt8183-mfgcfg")
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
AngeloGioacchino Del Regno 2023-01-20 10:20:48 +01:00 committed by Greg Kroah-Hartman
parent 661baa1711
commit e3e33879d6
2 changed files with 11 additions and 0 deletions

View File

@ -529,6 +529,14 @@ int mtk_clk_simple_probe(struct platform_device *pdev)
goto unregister_composites;
}
if (mcd->clk_notifier_func) {
struct clk *mfg_mux = clk_data->hws[mcd->mfg_clk_idx]->clk;
r = mcd->clk_notifier_func(&pdev->dev, mfg_mux);
if (r)
goto unregister_clks;
}
r = of_clk_add_hw_provider(node, of_clk_hw_onecell_get, clk_data);
if (r)
goto unregister_clks;

View File

@ -207,6 +207,9 @@ struct mtk_clk_desc {
const struct mtk_clk_rst_desc *rst_desc;
spinlock_t *clk_lock;
bool shared_io;
int (*clk_notifier_func)(struct device *dev, struct clk *clk);
unsigned int mfg_clk_idx;
};
int mtk_clk_simple_probe(struct platform_device *pdev);