On Mon, Jan 14, 2019 at 9:51 AM Boris Brezillon <bbrezillon@xxxxxxxxxx> wrote: > Not related to this patch, but I think we're missing a nand_reset() > call in the ->resume() path. Without it FSMC timings might be wrong > after a suspend if they're not defined in the DT. Would you mind sending > another patch to fix that, I looked into it, It looks like this: static int fsmc_nand_resume(struct device *dev) { struct fsmc_nand_data *host = dev_get_drvdata(dev); if (host) { clk_prepare_enable(host->clk); if (host->dev_timings) fsmc_nand_setup(host, host->dev_timings); } return 0; } fsmc_nand_setup() will set up the timings if we have any. > and maybe an extra patch to clear > FSMC_ENABLE in the ->remove() path and the ->probe()'s error path as > you suggested? That I can fix. I will resend this patch with that as another patch. Yours, Linus Walleij ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/