Re: [PATCH v2 08/12] mtd: nand_bbt: remove struct nand_chip from nand_bbt.c

From: Boris Brezillon
Date: Wed Jan 06 2016 - 10:16:42 EST


On Tue, 15 Dec 2015 05:59:34 +0000
Peter Pan <peterpansjtu@xxxxxxxxx> wrote:

> From: Brian Norris <computersforpeace@xxxxxxxxx>
>
> This commit contains most of modification. But the job is quite
> simple --- replace struct nand_chip with struct nand_bbt. There
> is no algorithm change, just replacement.
>
> Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>
> Signed-off-by: Peter Pan <peterpandong@xxxxxxxxxx>
> ---
> drivers/mtd/nand/nand_bbt.c | 391 ++++++++++++++++++++++----------------------
> 1 file changed, 193 insertions(+), 198 deletions(-)
>
> diff --git a/drivers/mtd/nand/nand_bbt.c b/drivers/mtd/nand/nand_bbt.c
> index a5c8ab5..b46b4ae 100644
> --- a/drivers/mtd/nand/nand_bbt.c
> +++ b/drivers/mtd/nand/nand_bbt.c

[...]

> /**
> * nand_scan_bbt - [NAND Interface] scan, find, read and maybe create bad block table(s)
> - * @mtd: MTD device structure
> + * @bbt: NAND BBT structure
> *
> * The function checks, if a bad block table(s) is/are already available. If
> * not it scans the device for manufacturer marked good / bad blocks and writes
> @@ -1000,21 +1000,21 @@ static void verify_bbt_descr(struct mtd_info *mtd, struct nand_bbt_descr *bd)
> * The bad block table memory is allocated here. It must be freed by calling
> * the nand_free_bbt function.
> */
> -static int nand_scan_bbt(struct mtd_info *mtd)
> +static int nand_scan_bbt(struct nand_bbt *bbt)
> {
> - struct nand_chip *this = mtd_to_nand(mtd);
> - int len, res;
> + struct mtd_info *mtd = bbt->mtd;
> + int len, res = 0;
> uint8_t *buf;
> - struct nand_bbt_descr *td = this->bbt_td;
> - struct nand_bbt_descr *md = this->bbt_md;
> + struct nand_bbt_descr *td = bbt->bbt_td;
> + struct nand_bbt_descr *md = bbt->bbt_md;
>
> len = (mtd->size >> (this->bbt_erase_shift + 2)) ? : 1;

'this' is gone, which generates a compilation error.

len = (mtd->size >> (bbt->bbt_erase_shift + 2)) ? : 1;


--
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/