[PATCH 5/9] mtd: pxa3xx_nand: add support for the Marvell Berlin nand controller

Robert Jarzmik robert.jarzmik at free.fr
Thu Feb 12 08:26:20 PST 2015

Antoine Tenart <antoine.tenart at free-electrons.com> writes:

>> All these ifs per variant will add complexity to the current driver, won't they
>> ?
> Given the current state of this driver I believe this would be a better
> idea to first rework it to use the nand framework properly. Then it will
> be possible to have a look on what we have, to decide whether or not a
> mrvl-nand-lib is needed.

I don't fully agree to delay.
You're taking code, making sometimes copy-paste, for the berlin specific
functions, and I think you're taking the bugs as well, which duplicates the fix

For example, in nand_cmdfunc_berlin():
+	if (info->reg_ndcr & NDCR_DWIDTH_M)
+		column /= 2;

This is I think a copy-paste from its twin nand_cmdfunc(). Now consider what
happens if the command is _not_ a read command, but an ONFI READID command
(ONFI being specified by column=0x20 if memory serves me well).

This is the reason I don't really like this patch. And this is also the reason
why I believe you're in a perfect timing to improve things, by grouping the
common function, and keeping the bugs in only one place, not many.



More information about the linux-mtd mailing list