Re: [PATCH] mtd: rawnand: arasan: select CONFIG_BCH

From: Miquel Raynal
Date: Wed May 27 2020 - 09:53:14 EST


Hi Arnd,

Arnd Bergmann <arnd@xxxxxxxx> wrote on Wed, 27 May 2020 15:42:03 +0200:

> Like several other nand flash drivers, this one requires the BCH
> library to be selected from Kconfig.

Actually most of the time these drivers do not depend on BCH directly.
Here it is a bit particular: the hardware ECC engine logic being
broken, I found a workaround by using BCH's library functions directly
to verify the hardware correctness.

Anyway, thank you very much for the fix but if I didn't make a mistake
it should have been fixed yesterday night already, so it's probably not
in linux-next yet.

> arm-linux-gnueabi-ld: drivers/mtd/nand/raw/arasan-nand-controller.o: in function `anfc_attach_chip':
> arasan-nand-controller.c:(.text+0x894): undefined reference to `bch_init'
> arm-linux-gnueabi-ld: drivers/mtd/nand/raw/arasan-nand-controller.o: in function `anfc_detach_chip':
> arasan-nand-controller.c:(.text+0x98c): undefined reference to `bch_free'
> arm-linux-gnueabi-ld: drivers/mtd/nand/raw/arasan-nand-controller.o: in function `anfc_read_page_hw_ecc':
> arasan-nand-controller.c:(.text+0x1080): undefined reference to `bch_decode'
>
> Fixes: 197b88fecc50 ("mtd: rawnand: arasan: Add new Arasan NAND controller")
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> ---
> drivers/mtd/nand/raw/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> index e2bc87779bf9..113f61052269 100644
> --- a/drivers/mtd/nand/raw/Kconfig
> +++ b/drivers/mtd/nand/raw/Kconfig
> @@ -456,6 +456,7 @@ config MTD_NAND_CADENCE
> config MTD_NAND_ARASAN
> tristate "Support for Arasan NAND flash controller"
> depends on HAS_IOMEM && HAS_DMA
> + select BCH
> help
> Enables the driver for the Arasan NAND flash controller on
> Zynq Ultrascale+ MPSoC.

Thanks,
MiquÃl