u-boot-2016/include/linux/mtd
Masahiro Yamada a01549ba40 mtd: nand: add a shorthand to generate nand_ecc_caps structure
struct nand_ecc_caps was designed as flexible as possible to support
multiple stepsizes (like sunxi_nand.c).

So, we need to write multiple arrays even for the simplest case.
I guess many controllers support a single stepsize, so here is a
shorthand macro for the case.

It allows to describe like ...

NAND_ECC_CAPS_SINGLE(denali_pci_ecc_caps, denali_calc_ecc_bytes, 512, 8, 15);

... instead of

static const int denali_pci_ecc_strengths[] = {8, 15};
static const struct nand_ecc_step_info denali_pci_ecc_stepinfo = {
        .stepsize = 512,
        .strengths = denali_pci_ecc_strengths,
        .nstrengths = ARRAY_SIZE(denali_pci_ecc_strengths),
};
static const struct nand_ecc_caps denali_pci_ecc_caps = {
        .stepinfos = &denali_pci_ecc_stepinfo,
        .nstepinfos = 1,
        .calc_ecc_bytes = denali_calc_ecc_bytes,
};

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>

[Linux commit: a03c60178c181767ecfb26fb311a88742d228118]
2017-11-29 00:28:59 +09:00
..
bbm.h mtd, ubi, ubifs: resync with Linux-3.14 2014-08-25 19:25:55 -04:00
concat.h include/linux/mtd: Update copyright notices 2015-11-12 13:19:03 -05:00
doc2000.h include/linux/mtd: Update copyright notices 2015-11-12 13:19:03 -05:00
flashchip.h kbuild: force to define __UBOOT__ in all the C sources 2014-09-16 12:23:56 -04:00
fsl_upm.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
fsmc_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mtd.h mtd: add mtd_ooblayout_xxx() helper functions 2017-11-29 00:28:58 +09:00
nand.h mtd: nand: add a shorthand to generate nand_ecc_caps structure 2017-11-29 00:28:59 +09:00
nand_bch.h mtd: nand: Sync with Linux v4.6 2016-06-03 20:27:48 -05:00
nand_ecc.h include/linux/mtd: Update copyright notices 2015-11-12 13:19:03 -05:00
ndfc.h Add support for AMCC Sequoia PPC440EPx eval board 2006-09-07 11:51:23 +02:00
omap_elm.h mtd: nand: omap_elm: use macros for register definitions 2014-06-06 17:45:50 -04:00
omap_gpmc.h armv7: armv7: introduce set_gpmc_cs0 2016-07-22 14:46:11 -04:00
onenand.h linux/compat.h: rename from linux/mtd/compat.h 2012-04-30 16:54:51 +02:00
onenand_regs.h Flex-OneNAND driver support 2009-11-13 16:56:18 -06:00
partitions.h mtd, ubi, ubifs: resync with Linux-3.14 2014-08-25 19:25:55 -04:00
samsung_onenand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
st_smi.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ubi.h ubi,ubifs: sync with linux v4.2 2015-10-26 09:22:36 +01:00