On Sun, May 25, 2025 at 02:23:10PM +0200, Michael Trimarchi wrote:
>Make simple the clock registration and enable and allow later
>to add support for other platforms
>
>Signed-off-by: Michael Trimarchi <mich...@amarulasolutions.com>
>---
>
> drivers/mtd/nand/raw/mxs_nand_dt.c | 48 ++++--------------------------
> 1 file changed, 5 insertions(+), 43 deletions(-)
>
>diff --git a/drivers/mtd/nand/raw/mxs_nand_dt.c 
>b/drivers/mtd/nand/raw/mxs_nand_dt.c
>index 11dbcbbf442..b62474bc5ab 100644
>--- a/drivers/mtd/nand/raw/mxs_nand_dt.c
>+++ b/drivers/mtd/nand/raw/mxs_nand_dt.c
>@@ -100,9 +100,7 @@ static int mxs_nand_dt_probe(struct udevice *dev)
> 
>       if (IS_ENABLED(CONFIG_CLK) &&
>           (IS_ENABLED(CONFIG_IMX8) || IS_ENABLED(CONFIG_IMX8M))) {
>-              /* Assigned clock already set clock */
>-              struct clk gpmi_clk;
>-
>+              struct clk_bulk clk_bulk;
>               info->gpmi_clk = devm_clk_get(dev, "gpmi_io");
> 
>               if (IS_ERR(info->gpmi_clk)) {
>@@ -111,47 +109,11 @@ static int mxs_nand_dt_probe(struct udevice *dev)
>                       return ret;
>               }
> 
>-              ret = clk_enable(info->gpmi_clk);
>-              if (ret < 0) {
>-                      debug("Can't enable gpmi io clk: %d\n", ret);
>-                      return ret;
>-              }
>-
>-              if (IS_ENABLED(CONFIG_IMX8)) {
>-                      ret = clk_get_by_name(dev, "gpmi_apb", &gpmi_clk);
>-                      if (ret < 0) {
>-                              debug("Can't get gpmi_apb clk: %d\n", ret);
>-                              return ret;
>-                      }
>-
>-                      ret = clk_enable(&gpmi_clk);
>-                      if (ret < 0) {
>-                              debug("Can't enable gpmi_apb clk: %d\n", ret);
>-                              return ret;
>-                      }
>-
>-                      ret = clk_get_by_name(dev, "gpmi_bch", &gpmi_clk);
>-                      if (ret < 0) {
>-                              debug("Can't get gpmi_bch clk: %d\n", ret);
>-                              return ret;
>-                      }
>-
>-                      ret = clk_enable(&gpmi_clk);
>-                      if (ret < 0) {
>-                              debug("Can't enable gpmi_bch clk: %d\n", ret);
>-                              return ret;
>-                      }
>-              }
>-
>-              ret = clk_get_by_name(dev, "gpmi_bch_apb", &gpmi_clk);
>-              if (ret < 0) {
>-                      debug("Can't get gpmi_bch_apb clk: %d\n", ret);
>-                      return ret;
>-              }
>-
>-              ret = clk_enable(&gpmi_clk);
>+              ret = clk_get_bulk(dev, &clk_bulk);
>+              if (!ret)
>+                      ret = clk_enable_bulk(&clk_bulk);

You enable clk bulk and together with a standalone gpmi_io clk?

Regards,
Peng


>               if (ret < 0) {
>-                      debug("Can't enable gpmi_bch_apb clk: %d\n", ret);
>+                      debug("Can't enable gpmi clks: %d\n", ret);
>                       return ret;
>               }
>       }
>-- 
>2.43.0
>
>base-commit: df2ed552f0b05591090369a7fe7ddc92439dea5c

Reply via email to