Re: [PATCH v5 0/4] Mediatek MT2712 NAND FLASH Controller driver

xiaolei li
2017-06-01T00:51:27Z

On Wed, 2017-05-31 at 16:32 +0200, Boris Brezillon wrote:
> On Wed, 31 May 2017 16:26:37 +0800
> Xiaolei Li <xiaolei.li@mediatek.com> wrote:
>
> > The following patch-set adds support for Mediatek MT2712 NAND FLASH
> > Controller.
>
> Applied to nand/next.
>
> Thanks,
>
> Boris
>

Thanks very much for all the reviews.

Thanks,
Xiaolei

> >
> > Changes on v5 relative to:
> > --------------------
> >
> > tree : https://github.com/bbrezillon/linux-0day
> > branch : nand/next
> > commit :
> > 'commit 2b12c057cc28 ("mtd: nand: brcmnand: Check flash #WP pin
> > status before nand erase/program")'
> >
> > Patch v5:
> > ---------
> > - rename variable j as closest_spare in function mtk_nfc_set_spare_per_sector
> > - remove unneeded parenthesis
> > - add define MTK_NFC_MIN_SPARE to check whether there is no entry that is
> > less than *sps.
> >
> > Patch v4:
> > ---------
> > - remove spare size array sort. iterate over all entries of spare size
> > table and pick the best one.
> >
> > Patch v3:
> > ---------
> > - separate patches into 4.
> > - rename struct mtk_ecc_devdata and struct mtk_nfc_devdata to struct
> > mtk_ecc_caps and struct mtk_nfc_caps respectively.
> > - add variables const u8 *ecc_strength and u8 num_ecc_strength into struct
> > mtk_ecc_caps, and remove u8 max_ecc_strength.
> > - rename variabl u32 temp in function mtk_ecc_probe to u32 max_eccdata_size.
> > - remove ECC_CNFG_xBIT define, use a for loop to do ecc hw configuration.
> > - remove const u32 *spare_format from struct mtk_nfc_caps, and add variables
> > u8 num_spare_size and u8 pageformat_spare_shift.
> > - remove PAGEFMT_SPARE_ define, use a for loop to do nfc hw configuration.
> > - sort spare size array before setting spare size.
> > - fix coding style issue.
> >
> > Patch v2:
> > ---------
> > - sperate patches into 3.
> > - refine DT bindings documentation about NFC and ECC compatible.
> > - use ecc->devdata->encode_parity_reg0 and ecc->devdata->err_mask
> > directly, but hide them in define.
> >
> > Tests:
> > ------
> >
> > * ubifs and jffs2 are validated on NAND device MT29F16G08ADBCA
> > by 'dd' command.
> > * all drivers/mtd/tests/* pass.
> > * speed test:
> > eraseblock write speed is 8318 KiB/s
> > eraseblock read speed is 11374 KiB/s
> > page write speed is 8155 KiB/s
> > page read speed is 11290 KiB/s
> > 2 page write speed is 8217 KiB/s
> > 2 page read speed is 11354 KiB/s
> > erase speed is 116472 KiB/s
> > 2x multi-block erase speed is 352978 KiB/s
> > 4x multi-block erase speed is 359750 KiB/s
> > 8x multi-block erase speed is 361484 KiB/s
> > 16x multi-block erase speed is 364116 KiB/s
> > 32x multi-block erase speed is 364116 KiB/s
> > 64x multi-block erase speed is 364116 KiB/s
> >
> > Xiaolei Li (4):
> > mtd: nand: mediatek: update DT bindings
> > mtd: nand: mediatek: refine register NFI_PAGEFMT setting
> > mtd: nand: mediatek: add support for different MTK NAND FLASH
> > Controller IP
> > mtd: nand: mediatek: add support for MT2712 NAND FLASH Controller
> >
> > Documentation/devicetree/bindings/mtd/mtk-nand.txt | 5 +-
> > drivers/mtd/nand/mtk_ecc.c | 218 ++++++++++-----------
> > drivers/mtd/nand/mtk_ecc.h | 2 +-
> > drivers/mtd/nand/mtk_nand.c | 187 +++++++++---------
> > 4 files changed, 206 insertions(+), 206 deletions(-)
> >
> > --
> > 1.9.1
>