MLK-14667 ARM: imx v7/v7_mfg defconfig: disable CONFIG_MTD_SPI_NOR_USE_4K_SECTORS
authorOctavian Purdila <octavian.purdila@nxp.com>
Wed, 19 Apr 2017 12:50:04 +0000 (15:50 +0300)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 20:22:11 +0000 (15:22 -0500)
commit6166bfaceddadb2e040043a5104bd8a7c6d828dc
tree993470f52118e353a4a81b4951a9b4e748f4a91c
parentfdeb6df90f942012d61a92baac5a98406e55f690
MLK-14667 ARM: imx v7/v7_mfg defconfig: disable CONFIG_MTD_SPI_NOR_USE_4K_SECTORS

Commit 556fa2d7d7e9 ("ENGR00318895-9: mtd: spi-nor: add more read
transfer flags for n25q256a") was incompletely cherry-picked, leaving
out the removal of the SECT_4K flag:

"From the datasheet, the chip support the 64K sector erase operation.
So remove the SECT_4K for the chip which makes the flash_erase
faster."

However, the above statement is not entirely correct. Using SECT_4K
can result in faster erase operations, if the block to erase is
smaller. The documentation in spi-nor.c also states:

"All newly added entries should describe *hardware* and should use
SECT_4K (or SECT_4K_PMC) if hardware supports erasing 4 KiB
sectors. For usage scenarios excluding small sectors there is config
option that can be disabled: CONFIG_MTD_SPI_NOR_USE_4K_SECTORS.  For
historical (and compatibility) reasons (before we got above config)
some old entries may be missing 4K flag."

Unfortunately, using SECT_4K means that ubifs will fail, because it
needs a minimum LBE of 15K.

Based on the above comments, it looks like the best way to handle the
ubifs issue is to disable CONFIG_MTD_SPI_NOR_USE_4K_SECTORS instead of
removing SECT_4K for the particular n25q256a chip. This approach also
has the advantage that will make ubifs work with any chip that has the
SECT_4K flag.

Signed-off-by: Octavian Purdila <octavian.purdila@nxp.com>
Reviewed-by: Han Xu <han.xu@nxp.com>
arch/arm/configs/imx_v7_defconfig
arch/arm/configs/imx_v7_mfg_defconfig