Re: [PATCH 1/2] mtd: docg3: don't set conflicting BCH_CONST_PARAMS option

From: Boris Brezillon
Date: Mon Nov 05 2018 - 17:55:52 EST


On Thu, 11 Oct 2018 13:06:16 +0200
Arnd Bergmann <arnd@xxxxxxxx> wrote:

> I noticed during the creation of another bugfix that the BCH_CONST_PARAMS
> option that is set by DOCG3 breaks setting variable parameters for any
> other users of the BCH library code.
>
> The only other user we have today is the MTD_NAND software BCH
> implementation (most flash controllers use hardware BCH these days
> and are not affected). I considered removing BCH_CONST_PARAMS entirely
> because of the inherent conflict, but according to the description in
> lib/bch.c there is a significant performance benefit in keeping it.
>
> To avoid the immediate problem of the conflict between MTD_NAND_BCH
> and DOCG3, this only sets the constant parameters if MTD_NAND_BCH
> is disabled, which should fix the problem for all cases that
> are affected. This should also work for all stable kernels.
>
> Note that there is only one machine that actually seems to use the
> DOCG3 driver (arch/arm/mach-pxa/mioa701.c), so most users should have
> the driver disabled, but it almost certainly shows up if we wanted
> to test random kernels on machines that use software BCH in MTD.
>
> Fixes: d13d19ece39f ("mtd: docg3: add ECC correction code")
> Cc: stable@xxxxxxxxxxxxxxx
> Cc: Robert Jarzmik <robert.jarzmik@xxxxxxx>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

Applied.

Thanks,

Boris

> ---
> drivers/mtd/devices/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/devices/Kconfig b/drivers/mtd/devices/Kconfig
> index e514d57a0419..aa983422aa97 100644
> --- a/drivers/mtd/devices/Kconfig
> +++ b/drivers/mtd/devices/Kconfig
> @@ -207,7 +207,7 @@ comment "Disk-On-Chip Device Drivers"
> config MTD_DOCG3
> tristate "M-Systems Disk-On-Chip G3"
> select BCH
> - select BCH_CONST_PARAMS
> + select BCH_CONST_PARAMS if !MTD_NAND_BCH
> select BITREVERSE
> help
> This provides an MTD device driver for the M-Systems DiskOnChip