Hi Naga, A user of Xilinx BSP reported a problem with lockdep that I can see is not yet fixed in this code: Naga Sureshkumar Relli <naga.sureshkumar.relli@xxxxxxxxxx> wrote on Fri, 17 Aug 2018 18:49:24 +0530: > +static int anfc_probe(struct platform_device *pdev) > +{ > + struct anfc_nand_controller *nfc; > + struct anfc_nand_chip *anand_chip; > + struct device_node *np = pdev->dev.of_node, *child; > + struct resource *res; > + int err; > + > + nfc = devm_kzalloc(&pdev->dev, sizeof(*nfc), GFP_KERNEL); > + if (!nfc) > + return -ENOMEM; > + > + init_waitqueue_head(&nfc->controller.wq); The controller structure has a lock which is not initialized here. You should not initialize the waitqueue manually neither and instead use nand_controller_init(&nfc->controller). > + INIT_LIST_HEAD(&nfc->chips); > + init_completion(&nfc->event); > + nfc->dev = &pdev->dev; > + platform_set_drvdata(pdev, nfc); > + nfc->csnum = -1; > + nfc->controller.ops = &anfc_nand_controller_ops; More to come. Thanks, Miquèl ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/