* [GIT PULL] mtd: nand: Changes for 5.2
@ 2019-04-18 17:14 Miquel Raynal
2019-05-05 9:56 ` Richard Weinberger
0 siblings, 1 reply; 2+ messages in thread
From: Miquel Raynal @ 2019-04-18 17:14 UTC (permalink / raw)
To: Boris Brezillon
Cc: Vignesh Raghavendra, Tudor Ambarus, Richard Weinberger,
Schrempf Frieder, Marek Vasut, linux-mtd, Brian Norris,
David Woodhouse
Hello,
This is the NAND PR for 5.2.
Thanks,
Miquèl
The following changes since commit 9e98c678c2d6ae3a17cb2de55d17f69dddaa231b:
Linux 5.1-rc1 (2019-03-17 14:22:26 -0700)
are available in the Git repository at:
ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/nand/for-5.2
for you to fetch changes up to 1c14fe2167ef4294b41949bcc372ea39c0510c00:
mtd: nandsim: switch to exec_op interface (2019-04-18 08:54:08 +0200)
----------------------------------------------------------------
NAND core changes:
- Support having the bad block markers in either the first, second or
last page of a block. The combination of all three location is now
possible.
- Constification of NAND_OP_PARSER(_PATTERN) elements.
- Generic NAND DT bindings changed to yaml format (can be used to
check the proposed bindings. First platform to be fully supported:
sunxi.
- Stopped using several legacy hooks.
- Preparation to use the generic NAND layer with the addition of
several helpers and the removal of the struct nand_chip from generic
functions.
- Kconfig cleanup to prepare the introduction of external ECC engines
support.
- Fallthrough comments.
- Introduction of the SPI-mem dirmap API for SPI-NAND devices.
Raw NAND controller drivers changes:
- nandsim:
* Switch to ->exec-op().
- meson:
* Misc cleanups and fixes.
* New OOB layout.
- Sunxi:
* A23/A33 NAND DMA support.
- Ingenic:
* Full reorganization and cleanup.
* Clear separation between NAND controller and ECC engine.
* Support JZ4740 an JZ4725B.
- Denali:
* Clear controller/chip separation.
* ->exec_op() migration.
* Various cleanups.
- fsl_elbc:
* Enable software ECC support.
- Atmel:
* Sam9x60 support.
- GPMI:
* Introduce the GPMI_IS_MXS() macro.
- Various trivial/spelling/coding style fixes.
----------------------------------------------------------------
Aditya Pakki (1):
mtd: rawnand: vf610: Avoid a potential NULL pointer dereference
Anders Roxell (1):
mtd: rawnand: fix build dependency
Boris Brezillon (16):
mtd: spinand: Use the spi-mem dirmap API
mtd: nand: Add max_bad_eraseblocks_per_lun info to memorg
mtd: nand: Add a helper returning the number of eraseblocks per target
mtd: nand: Add a helper to retrieve the number of pages per target
mtd: spinand: Implement mtd->_max_bad_blocks
mtd: rawnand: Use nand_to_mtd() in nand_{set,get}_flash_node()
mtd: rawnand: Prepare things to reuse the generic NAND layer
mtd: rawnand: Fill memorg during detection
mtd: rawnand: Initialize the nand_device object
mtd: rawnand: Provide a helper to get chip->data_buf
mtd: rawnand: Move all page cache related fields to a sub-struct
mtd: rawnand: Use nanddev_mtd_max_bad_blocks()
mtd: rawnand: Get rid of chip->bits_per_cell
mtd: rawnand: Get rid of chip->chipsize
mtd: rawnand: Get rid of chip->numchips
mtd: rawnand: Get rid of chip->ecc_{strength,step}_ds
Fabio Estevam (1):
mtd: rawnand: gpmi: Introduce GPMI_IS_MXS() macro
Frieder Schrempf (7):
mtd: rawnand: Always store info about bad block markers in chip struct
mtd: onenand: Store bad block marker position in chip struct
mtd: nand: Cleanup flags and fields for bad block marker position
mtd: nand: Make flags for bad block marker position more granular
mtd: rawnand: Support bad block markers in first, second or last page
mtd: rawnand: ESMT: Also use the last page for bad block markers
mtd: rawnand: AMD: Also use the last page for bad block markers
Gustavo A. R. Silva (1):
mtd: rawnand: Mark expected switch fall-throughs
Jonathan Neuschäfer (1):
mtd: rawnand: Fix sphinx syntax
Liang Yang (1):
mtd: rawnand: meson: set oob layout ops
Marek Behún (3):
mtd: rawnand: fsl_elbc: Cosmetic move
mtd: rawnand: fsl_elbc: Implement RNDOUT command
mtd: rawnand: fsl_elbc: Make SW ECC work
Martin Blumenstingl (6):
mtd: rawnand: meson: add missing ENOMEM check in meson_nfc_read_buf()
mtd: rawnand: meson: fix a potential memory leak in meson_nfc_read_buf
mtd: rawnand: meson: use struct_size macro
mtd: rawnand: meson: use of_property_count_elems_of_size helper
mtd: rawnand: meson: use a void pointer for meson_nfc_dma_buffer_setup
mtd: rawnand: meson: only initialize the RB completion once
Masahiro Yamada (10):
mtd: rawnand: denali: use more nand_chip pointers for internal functions
mtd: rawnand: denali: refactor raw page accessors
mtd: rawnand: denali: remove unneeded casts in denali_{read, write}_pio
mtd: rawnand: denali: switch over to ->exec_op() from legacy hooks
mtd: rawnand: denali: use bool type instead of int where appropriate
mtd: rawnand: denali_pci: rename goto labels
mtd: rawnand: denali: decouple controller and NAND chips
mtd: rawnand: denali: remove DENALI_NR_BANKS macro
mtd: rawnand: denali: clean up coding style
mtd: rawnand: constify elements of NAND_OP_PARSER(_PATTERN)
Maxime Ripard (2):
dt-bindings: mtd: Add YAML schemas for the generic NAND options
dt-bindings: mtd: sunxi-nand: Add YAML schemas
Miquel Raynal (11):
mtd: nand: omap: Fix comment in platform data using wrong Kconfig symbol
mtd: nand: Clarify Kconfig entry for software BCH ECC algorithm
mtd: nand: Clarify Kconfig entry for software Hamming ECC entries
mtd: rawnand: Change Kconfig titles and re-order a bit the list
mtd: rawnand: Clarify Kconfig entry MTD_NAND
mtd: nand: Remove useless line in Kconfig
mtd: rawnand: atmel: Fix spelling mistake in error message
dt-bindings: mtd: sunxi: Add new compatible
mtd: rawnand: sunxi: Add a platform data structure
mtd: rawnand: sunxi: Add A23/A33 DMA support
mtd: rawnand: marvell: Fix helper name in comment
Paul Cercueil (13):
dt-bindings: mtd: ingenic: Add compatible strings for JZ4740 and JZ4725B
dt-bindings: mtd: ingenic: Change 'BCH' to 'ECC' in documentation
dt-bindings: mtd: ingenic: Use standard ecc-engine property
mtd: rawnand: Move drivers for Ingenic SoCs to subfolder
mtd: rawnand: ingenic: Use SPDX license notifiers
mtd: rawnand: ingenic: Rename jz4780_nand driver to ingenic_nand
mtd: rawnand: ingenic: Rename jz4780_bch_init to jz4780_bch_reset
mtd: rawnand: ingenic: Separate top-level and SoC specific code
mtd: rawnand: ingenic: Make use of ecc-engine property
mtd: rawnand: ingenic: Add support for the JZ4740
mtd: rawnand: ingenic: Add support for the JZ4725B
mtd: rawnand: ingenic: Add ooblayout for the Qi Ben Nanonote
mtd: rawnand: ingenic: Move BBTs out of ECC area
Richard Weinberger (2):
mtd: nandsim: Embed struct nand_chip in struct nandsim
mtd: nandsim: switch to exec_op interface
Tudor Ambarus (8):
ARM: at91: add sam9x60 SFR definitions
memory: atmel-ebi: add generic name for ebi regmap
dt-bindings: memory: atmel-ebi: add sam9x60 compatible
memory: atmel-ebi: add sam9x60 EBI support
mtd: rawnand: atmel: add generic name for EBICSA regmap
dt-bindings: mtd: atmel-nand: add sam9x60 compatible
mtd: rawnand: atmel: add sam9x60 nand controller support
mtd: rawnand: atmel: switch to SPDX license identifiers
YueHaibing (2):
mtd: rawnand: ingenic: Add missing MODULE_* information
mtd: rawnand: ingenic: Make jz4725b_ooblayout_ops static
Documentation/devicetree/bindings/memory-controllers/atmel,ebi.txt | 1 +
Documentation/devicetree/bindings/mtd/allwinner,sun4i-a10-nand.yaml | 97 ++++++++
Documentation/devicetree/bindings/mtd/atmel-nand.txt | 1 +
Documentation/devicetree/bindings/mtd/denali-nand.txt | 38 +++-
Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt | 30 ++-
Documentation/devicetree/bindings/mtd/nand-controller.yaml | 143 ++++++++++++
Documentation/devicetree/bindings/mtd/nand.txt | 75 -------
Documentation/devicetree/bindings/mtd/sunxi-nand.txt | 48 ----
arch/arm/configs/at91_dt_defconfig | 2 +-
arch/arm/configs/clps711x_defconfig | 2 +-
arch/arm/configs/cm_x2xx_defconfig | 2 +-
arch/arm/configs/cm_x300_defconfig | 2 +-
arch/arm/configs/colibri_pxa270_defconfig | 2 +-
arch/arm/configs/corgi_defconfig | 2 +-
arch/arm/configs/davinci_all_defconfig | 2 +-
arch/arm/configs/em_x270_defconfig | 2 +-
arch/arm/configs/ep93xx_defconfig | 2 +-
arch/arm/configs/eseries_pxa_defconfig | 2 +-
arch/arm/configs/imx_v4_v5_defconfig | 2 +-
arch/arm/configs/imx_v6_v7_defconfig | 2 +-
arch/arm/configs/ixp4xx_defconfig | 2 +-
arch/arm/configs/keystone_defconfig | 2 +-
arch/arm/configs/lpc32xx_defconfig | 2 +-
arch/arm/configs/mini2440_defconfig | 2 +-
arch/arm/configs/mmp2_defconfig | 2 +-
arch/arm/configs/multi_v4t_defconfig | 2 +-
arch/arm/configs/multi_v5_defconfig | 2 +-
arch/arm/configs/multi_v7_defconfig | 2 +-
arch/arm/configs/mv78xx0_defconfig | 2 +-
arch/arm/configs/mvebu_v5_defconfig | 2 +-
arch/arm/configs/mvebu_v7_defconfig | 2 +-
arch/arm/configs/mxs_defconfig | 2 +-
arch/arm/configs/nhk8815_defconfig | 4 +-
arch/arm/configs/omap1_defconfig | 2 +-
arch/arm/configs/omap2plus_defconfig | 4 +-
arch/arm/configs/orion5x_defconfig | 2 +-
arch/arm/configs/oxnas_v6_defconfig | 2 +-
arch/arm/configs/pxa3xx_defconfig | 2 +-
arch/arm/configs/pxa_defconfig | 4 +-
arch/arm/configs/qcom_defconfig | 2 +-
arch/arm/configs/s3c2410_defconfig | 2 +-
arch/arm/configs/s3c6400_defconfig | 2 +-
arch/arm/configs/sama5_defconfig | 2 +-
arch/arm/configs/socfpga_defconfig | 2 +-
arch/arm/configs/spear13xx_defconfig | 2 +-
arch/arm/configs/spear3xx_defconfig | 2 +-
arch/arm/configs/spear6xx_defconfig | 2 +-
arch/arm/configs/spitz_defconfig | 2 +-
arch/arm/configs/tango4_defconfig | 2 +-
arch/arm/configs/trizeps4_defconfig | 2 +-
arch/arm/configs/u300_defconfig | 2 +-
arch/arm64/configs/defconfig | 2 +-
arch/mips/configs/bcm47xx_defconfig | 2 +-
arch/mips/configs/ci20_defconfig | 2 +-
arch/mips/configs/db1xxx_defconfig | 4 +-
arch/mips/configs/generic/board-ni169445.config | 6 +-
arch/mips/configs/generic/board-ocelot.config | 2 +-
arch/mips/configs/loongson1b_defconfig | 2 +-
arch/mips/configs/loongson1c_defconfig | 2 +-
arch/mips/configs/qi_lb60_defconfig | 2 +-
arch/mips/configs/rb532_defconfig | 2 +-
arch/mips/configs/rbtx49xx_defconfig | 2 +-
arch/mips/configs/xway_defconfig | 2 +-
arch/powerpc/configs/40x/kilauea_defconfig | 2 +-
arch/powerpc/configs/40x/obs600_defconfig | 2 +-
arch/powerpc/configs/44x/canyonlands_defconfig | 2 +-
arch/powerpc/configs/44x/eiger_defconfig | 2 +-
arch/powerpc/configs/44x/sequoia_defconfig | 2 +-
arch/powerpc/configs/44x/warp_defconfig | 2 +-
arch/powerpc/configs/83xx/mpc8313_rdb_defconfig | 2 +-
arch/powerpc/configs/83xx/mpc8315_rdb_defconfig | 2 +-
arch/powerpc/configs/85xx-hw.config | 2 +-
arch/powerpc/configs/85xx/ge_imp3a_defconfig | 2 +-
arch/powerpc/configs/85xx/socrates_defconfig | 2 +-
arch/powerpc/configs/85xx/tqm8548_defconfig | 4 +-
arch/powerpc/configs/85xx/xes_mpc85xx_defconfig | 2 +-
arch/powerpc/configs/86xx-hw.config | 2 +-
arch/powerpc/configs/mpc512x_defconfig | 2 +-
arch/powerpc/configs/mpc83xx_defconfig | 2 +-
arch/powerpc/configs/pasemi_defconfig | 2 +-
arch/powerpc/configs/ppc44x_defconfig | 2 +-
arch/sh/configs/ap325rxa_defconfig | 2 +-
arch/sh/configs/ecovec24_defconfig | 2 +-
arch/sh/configs/migor_defconfig | 2 +-
arch/sh/configs/sdk7786_defconfig | 2 +-
arch/sh/configs/se7724_defconfig | 2 +-
arch/sh/configs/titan_defconfig | 2 +-
drivers/memory/atmel-ebi.c | 37 ++-
drivers/mtd/Kconfig | 3 +-
drivers/mtd/devices/Kconfig | 2 +-
drivers/mtd/nand/Kconfig | 1 -
drivers/mtd/nand/core.c | 34 +++
drivers/mtd/nand/onenand/onenand_base.c | 5 +-
drivers/mtd/nand/onenand/onenand_bbt.c | 3 -
drivers/mtd/nand/raw/Kconfig | 395 ++++++++++++++++----------------
drivers/mtd/nand/raw/Makefile | 9 +-
drivers/mtd/nand/raw/atmel/nand-controller.c | 127 ++++++++---
drivers/mtd/nand/raw/atmel/pmecc.c | 5 +-
drivers/mtd/nand/raw/atmel/pmecc.h | 6 +-
drivers/mtd/nand/raw/bcm47xxnflash/ops_bcm4706.c | 2 +-
drivers/mtd/nand/raw/brcmnand/brcmnand.c | 7 +-
drivers/mtd/nand/raw/denali.c | 1216 ++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------
drivers/mtd/nand/raw/denali.h | 117 ++++++++--
drivers/mtd/nand/raw/denali_dt.c | 98 +++++++-
drivers/mtd/nand/raw/denali_pci.c | 38 +++-
drivers/mtd/nand/raw/diskonchip.c | 7 +-
drivers/mtd/nand/raw/fsl_elbc_nand.c | 243 +++++++++++---------
drivers/mtd/nand/raw/fsl_ifc_nand.c | 4 +-
drivers/mtd/nand/raw/gpmi-nand/gpmi-lib.c | 6 +-
drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c | 19 +-
drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.h | 1 +
drivers/mtd/nand/raw/hisi504_nand.c | 2 +-
drivers/mtd/nand/raw/ingenic/Kconfig | 50 +++++
drivers/mtd/nand/raw/ingenic/Makefile | 7 +
drivers/mtd/nand/raw/ingenic/ingenic_ecc.c | 166 ++++++++++++++
drivers/mtd/nand/raw/ingenic/ingenic_ecc.h | 83 +++++++
drivers/mtd/nand/raw/ingenic/ingenic_nand.c | 530 +++++++++++++++++++++++++++++++++++++++++++
drivers/mtd/nand/raw/ingenic/jz4725b_bch.c | 295 ++++++++++++++++++++++++
drivers/mtd/nand/raw/ingenic/jz4740_ecc.c | 197 ++++++++++++++++
drivers/mtd/nand/raw/{ => ingenic}/jz4740_nand.c | 7 +-
drivers/mtd/nand/raw/{ => ingenic}/jz4780_bch.c | 180 +++------------
drivers/mtd/nand/raw/internals.h | 3 +-
drivers/mtd/nand/raw/jz4780_bch.h | 43 ----
drivers/mtd/nand/raw/jz4780_nand.c | 415 ----------------------------------
drivers/mtd/nand/raw/marvell_nand.c | 51 ++---
drivers/mtd/nand/raw/meson_nand.c | 30 +--
drivers/mtd/nand/raw/mtk_nand.c | 4 +-
drivers/mtd/nand/raw/nand_amd.c | 19 +-
drivers/mtd/nand/raw/nand_base.c | 322 ++++++++++++++++----------
drivers/mtd/nand/raw/nand_bbt.c | 73 +++---
drivers/mtd/nand/raw/nand_esmt.c | 19 +-
drivers/mtd/nand/raw/nand_hynix.c | 94 ++++----
drivers/mtd/nand/raw/nand_jedec.c | 27 ++-
drivers/mtd/nand/raw/nand_macronix.c | 2 +-
drivers/mtd/nand/raw/nand_micron.c | 16 +-
drivers/mtd/nand/raw/nand_onfi.c | 35 +--
drivers/mtd/nand/raw/nand_samsung.c | 46 ++--
drivers/mtd/nand/raw/nand_toshiba.c | 21 +-
drivers/mtd/nand/raw/nandsim.c | 144 +++++++-----
drivers/mtd/nand/raw/nuc900_nand.c | 3 +-
drivers/mtd/nand/raw/omap2.c | 4 +-
drivers/mtd/nand/raw/omap_elm.c | 4 +
drivers/mtd/nand/raw/qcom_nandc.c | 8 +-
drivers/mtd/nand/raw/sh_flctl.c | 13 +-
drivers/mtd/nand/raw/sunxi_nand.c | 90 ++++++--
drivers/mtd/nand/raw/tegra_nand.c | 8 +-
drivers/mtd/nand/raw/vf610_nfc.c | 3 +
drivers/mtd/nand/spi/core.c | 169 +++++++-------
drivers/mtd/nand/spi/gigadevice.c | 8 +-
drivers/mtd/nand/spi/macronix.c | 4 +-
drivers/mtd/nand/spi/micron.c | 2 +-
drivers/mtd/nand/spi/toshiba.c | 12 +-
drivers/mtd/nand/spi/winbond.c | 4 +-
drivers/mtd/sm_ftl.c | 12 +-
drivers/mtd/tests/mtd_nandecctest.c | 16 +-
include/linux/mtd/bbm.h | 14 +-
include/linux/mtd/nand.h | 32 ++-
include/linux/mtd/nand_bch.h | 6 +-
include/linux/mtd/onenand.h | 3 +
include/linux/mtd/rawnand.h | 122 ++++++----
include/linux/mtd/spinand.h | 7 +
include/linux/platform_data/elm.h | 2 +-
include/soc/at91/atmel-sfr.h | 34 ++-
163 files changed, 3992 insertions(+), 2459 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mtd/allwinner,sun4i-a10-nand.yaml
create mode 100644 Documentation/devicetree/bindings/mtd/nand-controller.yaml
delete mode 100644 Documentation/devicetree/bindings/mtd/nand.txt
delete mode 100644 Documentation/devicetree/bindings/mtd/sunxi-nand.txt
create mode 100644 drivers/mtd/nand/raw/ingenic/Kconfig
create mode 100644 drivers/mtd/nand/raw/ingenic/Makefile
create mode 100644 drivers/mtd/nand/raw/ingenic/ingenic_ecc.c
create mode 100644 drivers/mtd/nand/raw/ingenic/ingenic_ecc.h
create mode 100644 drivers/mtd/nand/raw/ingenic/ingenic_nand.c
create mode 100644 drivers/mtd/nand/raw/ingenic/jz4725b_bch.c
create mode 100644 drivers/mtd/nand/raw/ingenic/jz4740_ecc.c
rename drivers/mtd/nand/raw/{ => ingenic}/jz4740_nand.c (98%)
rename drivers/mtd/nand/raw/{ => ingenic}/jz4780_bch.c (57%)
delete mode 100644 drivers/mtd/nand/raw/jz4780_bch.h
delete mode 100644 drivers/mtd/nand/raw/jz4780_nand.c
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] mtd: nand: Changes for 5.2
2019-04-18 17:14 [GIT PULL] mtd: nand: Changes for 5.2 Miquel Raynal
@ 2019-05-05 9:56 ` Richard Weinberger
0 siblings, 0 replies; 2+ messages in thread
From: Richard Weinberger @ 2019-05-05 9:56 UTC (permalink / raw)
To: Miquel Raynal
Cc: Vignesh Raghavendra, Tudor Ambarus, Schrempf Frieder,
Marek Vasut, Boris Brezillon, linux-mtd, Brian Norris,
David Woodhouse
----- Ursprüngliche Mail -----
> Von: "Miquel Raynal" <miquel.raynal@bootlin.com>
> An: "Boris Brezillon" <boris.brezillon@collabora.com>
> CC: "linux-mtd" <linux-mtd@lists.infradead.org>, "richard" <richard@nod.at>, "Marek Vasut" <marek.vasut@gmail.com>,
> "Brian Norris" <computersforpeace@gmail.com>, "David Woodhouse" <dwmw2@infradead.org>, "Tudor Ambarus"
> <Tudor.Ambarus@microchip.com>, "Vignesh Raghavendra" <vigneshr@ti.com>, "Schrempf Frieder"
> <frieder.schrempf@kontron.de>
> Gesendet: Donnerstag, 18. April 2019 19:14:55
> Betreff: [GIT PULL] mtd: nand: Changes for 5.2
> Hello,
>
> This is the NAND PR for 5.2.
>
> Thanks,
> Miquèl
>
>
> The following changes since commit 9e98c678c2d6ae3a17cb2de55d17f69dddaa231b:
>
> Linux 5.1-rc1 (2019-03-17 14:22:26 -0700)
>
> are available in the Git repository at:
>
> ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git
> tags/nand/for-5.2
>
> for you to fetch changes up to 1c14fe2167ef4294b41949bcc372ea39c0510c00:
Pulled.
Thanks,
//richard
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-05-05 9:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-18 17:14 [GIT PULL] mtd: nand: Changes for 5.2 Miquel Raynal
2019-05-05 9:56 ` Richard Weinberger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).