Re: [v2] mtd: rawnand: Change calculating of position page containing BBM

From: Miquel Raynal
Date: Fri Oct 04 2019 - 12:04:50 EST


On Tue, 2019-09-24 at 05:54:31 UTC, Piotr Sroka wrote:
> Change calculating of position page containing BBM
>
> If none of BBM flags are set then function nand_bbm_get_next_page
> reports EINVAL. It causes that BBM is not read at all during scanning
> factory bad blocks. The result is that the BBT table is build without
> checking factory BBM at all. For Micron flash memories none of these
> flags are set if page size is different than 2048 bytes.
>
> Address this regression by:
> - adding NAND_BBM_FIRSTPAGE chip flag without any condition. It solves
> issue only for Micron devices.
> - changing the nand_bbm_get_next_page_function. It will return 0
> if no of BBM flag is set and page parameter is 0. After that modification
> way of discovering factory bad blocks will work similar as in kernel
> version 5.1.
>
> Cc: stable@xxxxxxxxxxxxxxx
> Fixes: f90da7818b14 (mtd: rawnand: Support bad block markers in first, second or last page)
> Signed-off-by: Piotr Sroka <piotrs@xxxxxxxxxxx>
> Reviewed-by: Frieder Schrempf <frieder.schrempf@xxxxxxxxxx>

Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git nand/next, thanks.

Miquel