Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> --- drivers/mtd/nand/nand_mxs.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/mtd/nand/nand_mxs.c b/drivers/mtd/nand/nand_mxs.c index dd43a95..56d5ecf 100644 --- a/drivers/mtd/nand/nand_mxs.c +++ b/drivers/mtd/nand/nand_mxs.c @@ -21,6 +21,8 @@ #include <linux/mtd/mtd.h> #include <linux/mtd/nand.h> #include <linux/types.h> +#include <linux/clk.h> +#include <linux/err.h> #include <common.h> #include <malloc.h> #include <errno.h> @@ -140,6 +142,7 @@ struct mxs_nand_info { struct nand_chip nand_chip; void __iomem *io_base; + struct clk *clk; struct mtd_info mtd; u32 version; @@ -1147,8 +1150,6 @@ int mxs_nand_hw_init(struct mxs_nand_info *info) /* Init the DMA controller. */ mxs_dma_init(); - imx_enable_nandclk(); - /* Reset the GPMI block. */ ret = mxs_reset_block(gpmi_regs + GPMI_CTRL0, 0); if (ret) @@ -1200,6 +1201,12 @@ static int mxs_nand_probe(struct device_d *dev) /* XXX: Remove u-boot specific access pointers and use io_base instead? */ nand_info->io_base = dev_request_mem_region(dev, 0); + nand_info->clk = clk_get(dev, NULL); + if (IS_ERR(nand_info->clk)) + return PTR_ERR(nand_info->clk); + + clk_enable(nand_info->clk); + err = mxs_nand_alloc_buffers(nand_info); if (err) goto err1; -- 1.8.3.1 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox