Messages in this thread Patch in this message | | | From | Evgeny Novikov <> | Subject | [PATCH] mtd: rawnand: mxic: Enable and prepare clocks in probe | Date | Thu, 12 Aug 2021 14:38:00 +0300 |
| |
It seems that mxic_nfc_probe() missed invocation of mxic_nfc_clk_enable(). The patch fixed that. In addition, error handling was refined appropriately.
Found by Linux Driver Verification project (linuxtesting.org).
Signed-off-by: Evgeny Novikov <novikov@ispras.ru> Co-developed-by: Kirill Shilimanov <kirill.shilimanov@huawei.com> Signed-off-by: Kirill Shilimanov <kirill.shilimanov@huawei.com> --- drivers/mtd/nand/raw/mxic_nand.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/drivers/mtd/nand/raw/mxic_nand.c b/drivers/mtd/nand/raw/mxic_nand.c index da1070993994..37e75bf60ee5 100644 --- a/drivers/mtd/nand/raw/mxic_nand.c +++ b/drivers/mtd/nand/raw/mxic_nand.c @@ -509,9 +509,15 @@ static int mxic_nfc_probe(struct platform_device *pdev) if (IS_ERR(nfc->send_dly_clk)) return PTR_ERR(nfc->send_dly_clk); + err = mxic_nfc_clk_enable(nfc); + if (err) + return err; + nfc->regs = devm_platform_ioremap_resource(pdev, 0); - if (IS_ERR(nfc->regs)) - return PTR_ERR(nfc->regs); + if (IS_ERR(nfc->regs)) { + err = PTR_ERR(nfc->regs); + goto fail; + } nand_chip = &nfc->chip; mtd = nand_to_mtd(nand_chip); @@ -527,8 +533,10 @@ static int mxic_nfc_probe(struct platform_device *pdev) nand_chip->controller = &nfc->controller; irq = platform_get_irq(pdev, 0); - if (irq < 0) - return irq; + if (irq < 0) { + err = irq; + goto fail; + } mxic_nfc_hw_init(nfc); -- 2.26.2
| |