Hi, > drivers/mtd/nand/Makefile | 4 +- > drivers/mtd/nand/qpic_common.c | 740 +++++++++++++++++ > drivers/mtd/nand/raw/qcom_nandc.c | 1090 +------------------------- > include/linux/mtd/nand-qpic-common.h | 467 +++++++++++ > 4 files changed, 1222 insertions(+), 1079 deletions(-) > create mode 100644 drivers/mtd/nand/qpic_common.c > create mode 100644 include/linux/mtd/nand-qpic-common.h > > diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile > index 19e1291ac4d5..e59106e0a3af 100644 > --- a/drivers/mtd/nand/Makefile > +++ b/drivers/mtd/nand/Makefile > @@ -3,7 +3,9 @@ > nandcore-objs := core.o bbt.o > obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o > obj-$(CONFIG_MTD_NAND_ECC_MEDIATEK) += ecc-mtk.o > - > +ifeq ($(CONFIG_MTD_NAND_QCOM),y) > +obj-y += qpic_common.o > +endif Breaks if you set CONFIG_MTD_NAND_QCOM = m > obj-y += onenand/ > obj-y += raw/ > obj-y += spi/ > diff --git a/drivers/mtd/nand/qpic_common.c b/drivers/mtd/nand/qpic_common.c > new file mode 100644 > index 000000000000..dfbbb5f626b6 > --- /dev/null > +++ b/drivers/mtd/nand/qpic_common.c > @@ -0,0 +1,740 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/* > + * Copyright (c) 2016, The Linux Foundation. All rights reserved. > + */ > +#include <linux/bitops.h> > +#include <linux/clk.h> > +#include <linux/delay.h> > +#include <linux/dmaengine.h> > +#include <linux/dma-mapping.h> > +#include <linux/dma/qcom_adm.h> > +#include <linux/dma/qcom_bam_dma.h> > +#include <linux/module.h> > +#include <linux/mtd/partitions.h> Didn't you say you would remove that include? Thanks, Miquèl