On some platforms like i.MX51, the clock driver does not support GATE clocks, and the clocks are always on. The current driver uses clk_get which fails when the clock is not found, preventing the driver from probing.
This patch changes clk_get to clk_get_optional, allowing the driver to continue probing even if the clock is not provided, assuming it is always enabled. Signed-off-by: Alexander Shiyan <[email protected]> --- drivers/mtd/nand/raw/mxc_nand.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/mtd/nand/raw/mxc_nand.c b/drivers/mtd/nand/raw/mxc_nand.c index de2ad2a028..e328eb0815 100644 --- a/drivers/mtd/nand/raw/mxc_nand.c +++ b/drivers/mtd/nand/raw/mxc_nand.c @@ -1809,7 +1809,8 @@ static int mxcnd_probe(struct device *dev) nand_set_controller_data(this, host); nand_set_flash_node(this, dev->of_node); - host->clk = clk_get(dev, NULL); + /* Clock support might not be implemented, so use the optional variant */ + host->clk = clk_get_optional(dev, NULL); if (IS_ERR(host->clk)) return PTR_ERR(host->clk); -- 2.52.0
