@@ -732,10 +732,6 @@ static int fsl_elbc_chip_init(struct fsl_elbc_mtd *priv)
dev_dbg(priv->dev, "eLBC Set Information for bank %d\n", priv->bank);
- /* Fill in fsl_elbc_mtd structure */
- priv->mtd.priv = chip;
- priv->mtd.owner = THIS_MODULE;
-
/* set timeout to maximum */
priv->fmr = 15 << FMR_CWTO_SHIFT;
if (in_be32(&lbc->bank[priv->bank].or) & OR_FCM_PGS)
@@ -873,6 +869,7 @@ static int fsl_elbc_nand_probe(struct platform_device *pdev)
goto err;
}
+ mtd_setup_common_members(&priv->mtd, &priv->chip, pdev);
priv->mtd.name = kasprintf(GFP_KERNEL, "%llx.flash", (u64)res.start);
if (!priv->mtd.name) {
ret = -ENOMEM;
Fix a common error in nand-drivers which do not set up a parent device for the mtd-device by using a new inline function. Signed-off-by: Alexander Holler <holler@ahsoftware.de> --- drivers/mtd/nand/fsl_elbc_nand.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-)