&meson8b_ao_iface,
 };
 
+static struct clk_mux *const meson8b_clk_muxes[] = {
+       &meson8b_mpeg_clk_sel,
+};
+
+static struct clk_divider *const meson8b_clk_dividers[] = {
+       &meson8b_mpeg_clk_div,
+};
+
 static int meson8b_clkc_probe(struct platform_device *pdev)
 {
        void __iomem *clk_base;
        /* Populate the base address for CPU clk */
        meson8b_cpu_clk.base = clk_base;
 
-       /* Populate the base address for the MPEG clks */
-       meson8b_mpeg_clk_sel.reg = clk_base + (u32)meson8b_mpeg_clk_sel.reg;
-       meson8b_mpeg_clk_div.reg = clk_base + (u32)meson8b_mpeg_clk_div.reg;
-
        /* Populate base address for gates */
        for (i = 0; i < ARRAY_SIZE(meson8b_clk_gates); i++)
                meson8b_clk_gates[i]->reg = clk_base +
                        (u32)meson8b_clk_gates[i]->reg;
 
+       /* Populate base address for muxes */
+       for (i = 0; i < ARRAY_SIZE(meson8b_clk_muxes); i++)
+               meson8b_clk_muxes[i]->reg = clk_base +
+                       (u32)meson8b_clk_muxes[i]->reg;
+
+       /* Populate base address for dividers */
+       for (i = 0; i < ARRAY_SIZE(meson8b_clk_dividers); i++)
+               meson8b_clk_dividers[i]->reg = clk_base +
+                       (u32)meson8b_clk_dividers[i]->reg;
+
        /*
         * register all clks
         * CLKID_UNUSED = 0, so skip it and start with CLKID_XTAL = 1