[PATCH 2/4] mtd: mxs_nand_dt: Move from clk_get/clk_enable to clk_bulk api

Peng Fan peng.fan at oss.nxp.com
Mon May 26 10:43:56 CEST 2025


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 <michael at 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


More information about the U-Boot mailing list