Replace the apmixedsys, fixed PLL, topckgen and infrasys clk_ops with a
single mtk_clk_ops and use it in every MediaTek clock driver.

The previous patches left the four structs pointing at the same
callbacks, except for set_rate and set_parent, which each struct either
had or lacked. Every clock tree now gets both. The only visible change
is in the error code for a request that the clock cannot honor:
set_rate on a clock that is not a PLL returns -EINVAL instead of
-ENOSYS, and set_parent on a clock that is not a mux returns 0 instead
of -ENOSYS, as it already did for the topckgen and infrasys drivers.

With only one ops struct left, mtk_clk_tree_get_provider() can
recognize a MediaTek clock device with a single comparison.

Signed-off-by: David Lechner <[email protected]>
---
 drivers/clk/mediatek/clk-mt7622.c | 10 ++++----
 drivers/clk/mediatek/clk-mt7623.c | 10 ++++----
 drivers/clk/mediatek/clk-mt7629.c | 10 ++++----
 drivers/clk/mediatek/clk-mt7981.c | 10 ++++----
 drivers/clk/mediatek/clk-mt7986.c |  8 +++----
 drivers/clk/mediatek/clk-mt7987.c |  8 +++----
 drivers/clk/mediatek/clk-mt7988.c | 12 +++++-----
 drivers/clk/mediatek/clk-mt8183.c |  4 ++--
 drivers/clk/mediatek/clk-mt8188.c |  4 ++--
 drivers/clk/mediatek/clk-mt8189.c |  6 ++---
 drivers/clk/mediatek/clk-mt8195.c |  4 ++--
 drivers/clk/mediatek/clk-mt8365.c |  4 ++--
 drivers/clk/mediatek/clk-mt8366.c |  4 ++--
 drivers/clk/mediatek/clk-mt8512.c |  4 ++--
 drivers/clk/mediatek/clk-mt8516.c |  4 ++--
 drivers/clk/mediatek/clk-mt8518.c |  4 ++--
 drivers/clk/mediatek/clk-mtk.c    | 48 ++++-----------------------------------
 drivers/clk/mediatek/clk-mtk.h    |  5 +---
 18 files changed, 59 insertions(+), 100 deletions(-)

diff --git a/drivers/clk/mediatek/clk-mt7622.c 
b/drivers/clk/mediatek/clk-mt7622.c
index d66200f1938..7210a918174 100644
--- a/drivers/clk/mediatek/clk-mt7622.c
+++ b/drivers/clk/mediatek/clk-mt7622.c
@@ -799,7 +799,7 @@ U_BOOT_DRIVER(mt7622_clk_apmixedsys) = {
        .of_match = mt7622_apmixed_compat,
        .probe = mt7622_apmixedsys_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -809,7 +809,7 @@ U_BOOT_DRIVER(mt7622_clk_topckgen) = {
        .of_match = mt7622_topckgen_compat,
        .probe = mtk_clk_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -819,7 +819,7 @@ U_BOOT_DRIVER(mt7622_clk_infracfg) = {
        .of_match = of_match_mt7622_infracfg,
        .probe = mtk_clk_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -830,7 +830,7 @@ U_BOOT_DRIVER(mt7622_clk_eth) = {
        .probe = mtk_clk_probe,
        .bind = mt7622_reset_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
 
 U_BOOT_DRIVER(mt7622_clk) = {
@@ -839,5 +839,5 @@ U_BOOT_DRIVER(mt7622_clk) = {
        .of_match = of_match_mt7622_clk,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt7623.c 
b/drivers/clk/mediatek/clk-mt7623.c
index cc075495b09..be3fd94a1bc 100644
--- a/drivers/clk/mediatek/clk-mt7623.c
+++ b/drivers/clk/mediatek/clk-mt7623.c
@@ -1172,7 +1172,7 @@ U_BOOT_DRIVER(mt7623_clk_apmixedsys) = {
        .of_match = mt7623_apmixed_compat,
        .probe = mt7623_apmixedsys_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1182,7 +1182,7 @@ U_BOOT_DRIVER(mt7623_clk_topckgen) = {
        .of_match = mt7623_topckgen_compat,
        .probe = mtk_clk_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1192,7 +1192,7 @@ U_BOOT_DRIVER(mt7623_clk_infracfg) = {
        .of_match = mt7623_infracfg_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1202,7 +1202,7 @@ U_BOOT_DRIVER(mt7623_clk_pericfg) = {
        .of_match = mt7623_pericfg_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1213,5 +1213,5 @@ U_BOOT_DRIVER(mt7623_clk_eth) = {
        .probe = mtk_clk_probe,
        .bind = mt7623_ethsys_hifsys_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt7629.c 
b/drivers/clk/mediatek/clk-mt7629.c
index b271b96ebf3..2ee04c7b002 100644
--- a/drivers/clk/mediatek/clk-mt7629.c
+++ b/drivers/clk/mediatek/clk-mt7629.c
@@ -748,7 +748,7 @@ U_BOOT_DRIVER(mt7629_clk_apmixedsys) = {
        .of_match = mt7629_apmixed_compat,
        .probe = mt7629_apmixedsys_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -758,7 +758,7 @@ U_BOOT_DRIVER(mt7629_clk_topckgen) = {
        .of_match = mt7629_topckgen_compat,
        .probe = mtk_clk_probe,
        .priv_auto      = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -768,7 +768,7 @@ U_BOOT_DRIVER(mt7629_clk_infracfg) = {
        .of_match = of_match_mt7629_infracfg,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -779,7 +779,7 @@ U_BOOT_DRIVER(mt7629_clk_ethsys) = {
        .probe = mtk_clk_probe,
        .bind = mt7629_ethsys_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
 
 U_BOOT_DRIVER(mt7629_clk) = {
@@ -788,5 +788,5 @@ U_BOOT_DRIVER(mt7629_clk) = {
        .of_match = of_match_mt7629_clk,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt7981.c 
b/drivers/clk/mediatek/clk-mt7981.c
index 7e3e60477d9..6d5c967ea78 100644
--- a/drivers/clk/mediatek/clk-mt7981.c
+++ b/drivers/clk/mediatek/clk-mt7981.c
@@ -692,7 +692,7 @@ U_BOOT_DRIVER(mt7981_clk_apmixedsys) = {
        .of_match = mt7981_fixed_pll_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_fixed_pll_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -702,7 +702,7 @@ U_BOOT_DRIVER(mt7981_clk_topckgen) = {
        .of_match = mt7981_topckgen_compat,
        .probe = mt7981_topckgen_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -720,7 +720,7 @@ U_BOOT_DRIVER(mt7981_clk_infracfg) = {
        .of_match = mt7981_infracfg_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -784,7 +784,7 @@ U_BOOT_DRIVER(mt7981_clk_sgmiisys) = {
        .of_match = of_match_mt7981_sgmiisys,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
 
 /* ethsys */
@@ -843,5 +843,5 @@ U_BOOT_DRIVER(mt7981_clk_ethsys) = {
        .probe = mtk_clk_probe,
        .bind = mt7981_ethsys_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt7986.c 
b/drivers/clk/mediatek/clk-mt7986.c
index e4abddbd515..1e54d8ed2cf 100644
--- a/drivers/clk/mediatek/clk-mt7986.c
+++ b/drivers/clk/mediatek/clk-mt7986.c
@@ -600,7 +600,7 @@ U_BOOT_DRIVER(mt7986_clk_apmixedsys) = {
        .of_match = mt7986_fixed_pll_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_fixed_pll_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -610,7 +610,7 @@ U_BOOT_DRIVER(mt7986_clk_topckgen) = {
        .of_match = mt7986_topckgen_compat,
        .probe = mt7986_topckgen_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -628,7 +628,7 @@ U_BOOT_DRIVER(mt7986_clk_infracfg) = {
        .of_match = mt7986_infracfg_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -687,5 +687,5 @@ U_BOOT_DRIVER(mt7986_clk_ethsys) = {
        .probe = mtk_clk_probe,
        .bind = mt7986_ethsys_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt7987.c 
b/drivers/clk/mediatek/clk-mt7987.c
index 6f2fe12a186..831fa7177a7 100644
--- a/drivers/clk/mediatek/clk-mt7987.c
+++ b/drivers/clk/mediatek/clk-mt7987.c
@@ -81,7 +81,7 @@ U_BOOT_DRIVER(mt7987_clk_apmixedsys) = {
        .of_match = mt7987_fixed_pll_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_fixed_pll_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -488,7 +488,7 @@ U_BOOT_DRIVER(mt7987_clk_topckgen) = {
        .of_match = mt7987_topckgen_compat,
        .probe = mt7987_topckgen_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -810,7 +810,7 @@ U_BOOT_DRIVER(mt7987_clk_infracfg) = {
        .of_match = mt7987_infracfg_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -870,5 +870,5 @@ U_BOOT_DRIVER(mt7987_clk_ethsys) = {
        .probe = mtk_clk_probe,
        .bind = mt7987_ethsys_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt7988.c 
b/drivers/clk/mediatek/clk-mt7988.c
index 4728ca3e25a..797274c59ca 100644
--- a/drivers/clk/mediatek/clk-mt7988.c
+++ b/drivers/clk/mediatek/clk-mt7988.c
@@ -876,7 +876,7 @@ U_BOOT_DRIVER(mt7988_clk_apmixedsys) = {
        .of_match = mt7988_fixed_pll_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_fixed_pll_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -886,7 +886,7 @@ U_BOOT_DRIVER(mt7988_clk_topckgen) = {
        .of_match = mt7988_topckgen_compat,
        .probe = mt7988_topckgen_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -904,7 +904,7 @@ U_BOOT_DRIVER(mt7988_clk_infracfg) = {
        .of_match = mt7988_infracfg_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -962,7 +962,7 @@ U_BOOT_DRIVER(mt7988_clk_ethdma) = {
        .probe = mtk_clk_probe,
        .bind = mt7988_ethdma_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
 
 /* SGMIISYS_0 */
@@ -1041,7 +1041,7 @@ U_BOOT_DRIVER(mt7988_clk_sgmiisys) = {
        .of_match = of_match_mt7988_sgmiisys,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
 
 /* ETHWARP */
@@ -1103,5 +1103,5 @@ U_BOOT_DRIVER(mt7988_clk_ethwarp) = {
        .probe = mtk_clk_probe,
        .bind = mt7988_ethwarp_bind,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
 };
diff --git a/drivers/clk/mediatek/clk-mt8183.c 
b/drivers/clk/mediatek/clk-mt8183.c
index aff5d629c30..c5e607aee80 100644
--- a/drivers/clk/mediatek/clk-mt8183.c
+++ b/drivers/clk/mediatek/clk-mt8183.c
@@ -829,7 +829,7 @@ U_BOOT_DRIVER(mt8183_clk_apmixedsys) = {
        .of_match = mt8183_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -839,6 +839,6 @@ U_BOOT_DRIVER(mt8183_clk) = {
        .of_match = mt8183_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8188.c 
b/drivers/clk/mediatek/clk-mt8188.c
index 0f50757c97e..7db5194f0a7 100644
--- a/drivers/clk/mediatek/clk-mt8188.c
+++ b/drivers/clk/mediatek/clk-mt8188.c
@@ -2121,7 +2121,7 @@ U_BOOT_DRIVER(mt8188_clk_apmixedsys) = {
        .of_match = mt8188_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -2131,6 +2131,6 @@ U_BOOT_DRIVER(mt8188_clk) = {
        .of_match = mt8188_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8189.c 
b/drivers/clk/mediatek/clk-mt8189.c
index ece7d739f86..a4880b98906 100644
--- a/drivers/clk/mediatek/clk-mt8189.c
+++ b/drivers/clk/mediatek/clk-mt8189.c
@@ -2036,7 +2036,7 @@ U_BOOT_DRIVER(mt8189_clk_apmixedsys) = {
        .of_match = mt8189_apmixed,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -2046,7 +2046,7 @@ U_BOOT_DRIVER(mt8189_clk) = {
        .of_match = mt8189_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -2056,6 +2056,6 @@ U_BOOT_DRIVER(mt8189_clk_vlpckgen) = {
        .of_match = mt8189_vlpckgen,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_infrasys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8195.c 
b/drivers/clk/mediatek/clk-mt8195.c
index a8a4caf0fd6..aa46d1b451c 100644
--- a/drivers/clk/mediatek/clk-mt8195.c
+++ b/drivers/clk/mediatek/clk-mt8195.c
@@ -1624,7 +1624,7 @@ U_BOOT_DRIVER(mt8195_clk_apmixedsys) = {
        .of_match = mt8195_apmixed,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1634,6 +1634,6 @@ U_BOOT_DRIVER(mt8195_clk) = {
        .of_match = mt8195_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8365.c 
b/drivers/clk/mediatek/clk-mt8365.c
index 0d74561ace0..25f09a30db5 100644
--- a/drivers/clk/mediatek/clk-mt8365.c
+++ b/drivers/clk/mediatek/clk-mt8365.c
@@ -782,7 +782,7 @@ U_BOOT_DRIVER(mt8365_clk_apmixedsys) = {
        .of_match = mt8365_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -792,6 +792,6 @@ U_BOOT_DRIVER(mt8365_clk) = {
        .of_match = mt8365_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8366.c 
b/drivers/clk/mediatek/clk-mt8366.c
index cc490641b3d..23b2920ef22 100644
--- a/drivers/clk/mediatek/clk-mt8366.c
+++ b/drivers/clk/mediatek/clk-mt8366.c
@@ -1502,7 +1502,7 @@ U_BOOT_DRIVER(mt8366_clk_apmixedsys) = {
        .of_match = mt8366_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1512,6 +1512,6 @@ U_BOOT_DRIVER(mt8366_clk) = {
        .of_match = mt8366_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8512.c 
b/drivers/clk/mediatek/clk-mt8512.c
index 6288aca9e22..0b763876f17 100644
--- a/drivers/clk/mediatek/clk-mt8512.c
+++ b/drivers/clk/mediatek/clk-mt8512.c
@@ -849,7 +849,7 @@ U_BOOT_DRIVER(mt8512_clk_apmixedsys) = {
        .of_match = mt8512_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -859,6 +859,6 @@ U_BOOT_DRIVER(mt8512_clk) = {
        .of_match = mt8512_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8516.c 
b/drivers/clk/mediatek/clk-mt8516.c
index 068327783c6..6402fbb80f8 100644
--- a/drivers/clk/mediatek/clk-mt8516.c
+++ b/drivers/clk/mediatek/clk-mt8516.c
@@ -795,7 +795,7 @@ U_BOOT_DRIVER(mt8516_clk_apmixedsys) = {
        .of_match = mt8516_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -805,6 +805,6 @@ U_BOOT_DRIVER(mt8516_clk) = {
        .of_match = mt8516_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mt8518.c 
b/drivers/clk/mediatek/clk-mt8518.c
index f875d4fcdd5..b6b61248f5c 100644
--- a/drivers/clk/mediatek/clk-mt8518.c
+++ b/drivers/clk/mediatek/clk-mt8518.c
@@ -1551,7 +1551,7 @@ U_BOOT_DRIVER(mt8518_clk_apmixedsys) = {
        .of_match = mt8518_apmixed_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_apmixedsys_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
 
@@ -1561,6 +1561,6 @@ U_BOOT_DRIVER(mt8518_clk) = {
        .of_match = mt8518_clk_compat,
        .probe = mtk_clk_probe,
        .priv_auto = sizeof(struct mtk_clk_priv),
-       .ops = &mtk_clk_topckgen_ops,
+       .ops = &mtk_clk_ops,
        .flags = DM_FLAG_PRE_RELOC,
 };
diff --git a/drivers/clk/mediatek/clk-mtk.c b/drivers/clk/mediatek/clk-mtk.c
index a18512287c2..af5a210073a 100644
--- a/drivers/clk/mediatek/clk-mtk.c
+++ b/drivers/clk/mediatek/clk-mtk.c
@@ -69,13 +69,8 @@ static struct udevice *mtk_clk_tree_get_provider(enum 
mtk_clk_tree_type type)
 
        uclass_foreach_dev(dev, uc) {
                const struct mtk_clk_tree *tree;
-               const void *ops;
 
-               ops = dev_get_driver_ops(dev);
-               if (ops != &mtk_clk_apmixedsys_ops &&
-                   ops != &mtk_clk_fixed_pll_ops &&
-                   ops != &mtk_clk_topckgen_ops &&
-                   ops != &mtk_clk_infrasys_ops)
+               if (dev_get_driver_ops(dev) != &mtk_clk_ops)
                        continue;
 
                tree = (const void *)dev_get_driver_data(dev);
@@ -438,7 +433,7 @@ static void mtk_clk_print_mux_parents(struct mtk_clk_priv 
*priv,
 }
 #endif
 
-/* apmixedsys functions */
+/* PLL functions */
 
 static unsigned long __mtk_pll_recalc_rate(const struct mtk_pll_data *pll,
                                           u32 fin, u32 pcw, int postdiv)
@@ -552,7 +547,7 @@ static int mtk_pll_calc_values(struct mtk_clk_priv *priv, 
struct clk *clk,
        return 0;
 }
 
-static ulong mtk_apmixedsys_set_rate(struct clk *clk, ulong rate)
+static ulong mtk_clk_set_rate(struct clk *clk, ulong rate)
 {
        struct mtk_clk_priv *priv = dev_get_priv(clk->dev);
        u32 pcw = 0;
@@ -649,8 +644,6 @@ static int mtk_pll_disable(struct mtk_clk_priv *priv,
        return 0;
 }
 
-/* topckgen functions */
-
 static ulong mtk_factor_recalc_rate(const struct mtk_fixed_factor *fdiv,
                                    ulong parent_rate)
 {
@@ -869,42 +862,11 @@ static void mtk_clk_dump(struct udevice *dev)
 }
 #endif
 
-const struct clk_ops mtk_clk_apmixedsys_ops = {
-       .of_xlate = mtk_clk_of_xlate,
-       .enable = mtk_clk_enable,
-       .disable = mtk_clk_disable,
-       .set_rate = mtk_apmixedsys_set_rate,
-       .get_rate = mtk_clk_get_rate,
-#if CONFIG_IS_ENABLED(CMD_CLK)
-       .dump = mtk_clk_dump,
-#endif
-};
-
-const struct clk_ops mtk_clk_fixed_pll_ops = {
-       .of_xlate = mtk_clk_of_xlate,
-       .enable = mtk_clk_enable,
-       .disable = mtk_clk_disable,
-       .get_rate = mtk_clk_get_rate,
-#if CONFIG_IS_ENABLED(CMD_CLK)
-       .dump = mtk_clk_dump,
-#endif
-};
-
-const struct clk_ops mtk_clk_topckgen_ops = {
-       .of_xlate = mtk_clk_of_xlate,
-       .enable = mtk_clk_enable,
-       .disable = mtk_clk_disable,
-       .get_rate = mtk_clk_get_rate,
-       .set_parent = mtk_common_clk_set_parent,
-#if CONFIG_IS_ENABLED(CMD_CLK)
-       .dump = mtk_clk_dump,
-#endif
-};
-
-const struct clk_ops mtk_clk_infrasys_ops = {
+const struct clk_ops mtk_clk_ops = {
        .of_xlate = mtk_clk_of_xlate,
        .enable = mtk_clk_enable,
        .disable = mtk_clk_disable,
+       .set_rate = mtk_clk_set_rate,
        .get_rate = mtk_clk_get_rate,
        .set_parent = mtk_common_clk_set_parent,
 #if CONFIG_IS_ENABLED(CMD_CLK)
diff --git a/drivers/clk/mediatek/clk-mtk.h b/drivers/clk/mediatek/clk-mtk.h
index 1c840d9f6d3..2a122a80dfd 100644
--- a/drivers/clk/mediatek/clk-mtk.h
+++ b/drivers/clk/mediatek/clk-mtk.h
@@ -306,10 +306,7 @@ struct mtk_clk_priv {
        const struct mtk_clk_tree *tree;
 };
 
-extern const struct clk_ops mtk_clk_apmixedsys_ops;
-extern const struct clk_ops mtk_clk_fixed_pll_ops;
-extern const struct clk_ops mtk_clk_topckgen_ops;
-extern const struct clk_ops mtk_clk_infrasys_ops;
+extern const struct clk_ops mtk_clk_ops;
 
 int mtk_clk_probe(struct udevice *dev);
 

-- 
2.43.0

Reply via email to