[PATCH 00/12] mtd: nand_bbt: introduce independent nand BBT
Boris Brezillon
boris.brezillon at free-electrons.com
Thu Sep 24 23:53:55 PDT 2015
Hi Peter,
This comment is not related to the code itself, but next time you send a
patch series, could you send all patches as a reply to the cover letter?
This is automatically done when you use git send-email unless you pass
the --no-thread option.
The following command should do the trick:
git send-email <path-to-your-patchset-dir>/*.patch
Best Regards,
Boris
On Fri, 25 Sep 2015 06:34:34 +0000
Peter Pan 潘栋 (peterpandong) <peterpandong at micron.com> wrote:
> Currently nand_bbt.c is tied with struct nand_chip, and it makes other
> NAND family chips hard to use nand_bbt.c. Maybe it's the reason why
> onenand has own bbt(onenand_bbt.c).
>
> Separate struct nand_chip from BBT code can make current BBT shareable.
> We create struct nand_bbt to take place of nand_chip in nand_bbt.c.
> Struct nand_bbt contains all the information BBT needed from outside and
> it should be embedded into NAND family chip struct (such as struct nand_chip).
> NAND family driver should allocate, initialize and free struct nand_bbt.
>
> Below is mtd folder structure we want:
> mtd
> ├── Kconfig
> ├── Makefile
> ├── ...
> ├── nand_bbt.c
> ├── nand
> │ ├── Kconfig
> │ ├── Makefile
> │ ├── nand_base.c
> │ ├── nand_ids.c
> │ ├── ...
> │ └── xway_nand.c
> ├── spi-nand
> │ ├── Kconfig
> │ ├── Makefile
> │ ├── spi-nand-base.c
> │ ├── ...
> │ └── spi-nand-device.c
> └── ...
>
> Most of the patch is borrowed from Brian Norris <computersforpeace at gmail.com>.
> http://git.infradead.org/users/norris/linux-mtd.git/shortlog/refs/heads/nand-bbt
> Based on Brian's suggestion, I make my previous BBT patch into 12 independent
> patches. Previous patch is http://patchwork.ozlabs.org/patch/492066/
> Beside the patch split, I also moved nand_bbt.c to mtd folder, which didn't in
> previous patch.
>
> Patch 3, 7, 8, 9, 10 and 11 are totally borrowed from Brian's git tree. I just
> test and split the code into independent patch. Patch 1, 2, 5 and 6 are partial
> borrowed. I make some changes from Brian's git tree and the changes are recorded
> in commit log. Patch 4 and 12 are written by me.
>
> The patch is tested on Zed board. This version of this series is based on master
> branch of l2-mtd.git (commit e1305df1283cbe1aa57093f8766b2dfe650ed5ff).
>
> Brian Norris (6):
> mtd: nand_bbt: add new API definitions
> mtd: nand: make nand_erase_nand() static
> mtd: nand_bbt: remove struct nand_chip from nand_bbt.c
> mtd: nand_bbt: remove old API definitions
> mtd: nand_bbt: remove NAND_BBT_DYNAMICSTRUCT macro
> mtd: nand: remove nand_chip.bbt
> Brian Norris and Peter Pan (4):
> mtd: nand_bbt: new header for nand family BBT
> mtd: nand_bbt: introduce struct nand_bbt
> mtd: nand: use new BBT API instead of old ones
> mtd: nand_bbt: use erase() and is_bad_bbm() hook in BBT
> Peter Pan (2):
> mtd: nand_bbt: add nand_bbt_markbad_factory() interface
> mtd: nand-bbt: move nand_bbt.c to mtd folder
>
> ---
> drivers/mtd/Kconfig | 7 +
> drivers/mtd/Makefile | 1 +
> drivers/mtd/nand/Kconfig | 2 +-
> drivers/mtd/nand/Makefile | 2 +-
> drivers/mtd/nand/docg4.c | 6 +-
> drivers/mtd/nand/nand_base.c | 145 ++++-
> drivers/mtd/nand/nand_bbt.c | 1377 ------------------------------------------
> drivers/mtd/nand_bbt.c | 1289 +++++++++++++++++++++++++++++++++++++++
> include/linux/mtd/bbm.h | 96 +--
> include/linux/mtd/nand.h | 16 +-
> include/linux/mtd/nand_bbt.h | 177 ++++++
> 11 files changed, 1624 insertions(+), 1494 deletions(-)
> delete mode 100644 drivers/mtd/nand/nand_bbt.c
> create mode 100644 drivers/mtd/nand_bbt.c
> create mode 100644 include/linux/mtd/nand_bbt.h
--
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
More information about the linux-mtd
mailing list