[PATCH 00/12] mtd: nand_bbt: introduce independent nand BBT

Peter Pan 潘栋 (peterpandong) peterpandong at micron.com
Fri Sep 25 01:36:46 PDT 2015


Hi Boris,

Sorry for trouble you. Since I cannot send mail using 'git send-email' right now.
I sent this series by outlook. Thanks for your suggestion. I'll fix this soon.

Peter Pan

On Fri, 25 Sep 2015 14:54:38 +0000
Boris Brezillon < boris.brezillon at free-electrons.com > wrote:

> 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/nan
> d-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