Received: by 10.223.176.5 with SMTP id f5csp2651578wra; Mon, 29 Jan 2018 01:35:43 -0800 (PST) X-Google-Smtp-Source: AH8x225nlTRXtB8ylrAU7NyUE7ZJLPAU8YWRvJluDzxXvCoCAhmK8ZHxo/M89y3LbRL5G3YXvbNK X-Received: by 10.98.65.193 with SMTP id g62mr26210978pfd.60.1517218543176; Mon, 29 Jan 2018 01:35:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517218543; cv=none; d=google.com; s=arc-20160816; b=ZD8s3WPNU0pNntgv55z7tr3IhRapSZ7wrpDFmIB8XzvGOzdypNSY5zveRP3LMaHWOM 4nVU8t2lFM8HfyHEcNqV0yXeE3cFVzke7ZyPmhZikK7btI8tOxE8syu1DAgoeibt+ZFD fen1BEgdr09haltMYVDnlqKWDdz6KUIXbhthoiGgwpp+0JPGy5dURI6JR0PE9dZD8pr+ +o4wJbsPCILBKt1v2VgTuuYEo+/tsgS2uwvoAbAzV1EGkBn/EcdRIoL6L5vKDjwxuZeo xxxS8jwT/2hf26TciSi3s37cB46aDYZZMrymOeDdiPNnRWitHL7IwpAy/Hib9/HqZHWy 6FGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:subject:cc:to:from:date:arc-authentication-results; bh=cBaHdhGACGGREbh3maZ2owaqJeeYxSRvjcPBOWmgggM=; b=zokw2Poh0bMdJACYv23lIaAnrJw288IqJYeggH91sH1J1ZQ3CYXKbbkvVzuQHzlCME 82azltlNn1fKIx3LFuWv18HYY37xWugrFW6KHIcQJ/jBPBMMFniKcjyYvg0OPOXISZlk KDRjRFGqAAx29vMyXM7YPnDceezVQl8UFAat6P8n3eRBRtQi6kDg7x46UTrqYGpiIuIL TfEPiQszV4vBv/k81lK7XU7wzTBNpdJuElJsvmvb/KIHEWzgY3qpRjjltYFDIilXtDY1 8mNcFQt336xx+z/6WPgCPJvxLxB9BtVvN6X9uZkZ7QhwYh8zr/K5tbeNSTiRJMkTnlV8 K+7A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k15-v6si8184509pll.352.2018.01.29.01.35.28; Mon, 29 Jan 2018 01:35:43 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751298AbeA2JfC (ORCPT + 99 others); Mon, 29 Jan 2018 04:35:02 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:58241 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750959AbeA2Je7 (ORCPT ); Mon, 29 Jan 2018 04:34:59 -0500 Received: by mail.free-electrons.com (Postfix, from userid 110) id 0908D21997; Mon, 29 Jan 2018 10:34:58 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mail.free-electrons.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT shortcircuit=ham autolearn=disabled version=3.4.0 Received: from bbrezillon (LStLambert-657-1-97-87.w90-63.abo.wanadoo.fr [90.63.216.87]) by mail.free-electrons.com (Postfix) with ESMTPSA id AC13121991; Mon, 29 Jan 2018 10:34:47 +0100 (CET) Date: Mon, 29 Jan 2018 10:34:47 +0100 From: Boris Brezillon To: Linus Torvalds Cc: Brian Norris , Richard Weinberger , Cyrille Pitchen , Marek Vasut , David Woodhouse , "linux-mtd@lists.infradead.org" , "linux-kernel@vger.kernel.org" Subject: [GIT PULL] mtd: Changes for 4.16 Message-ID: <20180129103447.2e786609@bbrezillon> X-Mailer: Claws Mail 3.15.0-dirty (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Linus, Here is the MTD PR for 4.16. Regards, Boris The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323: Linux 4.15-rc1 (2017-11-26 16:01:47 -0800) are available in the git repository at: git://git.infradead.org/linux-mtd.git tags/mtd/for-4.16 for you to fetch changes up to 571cb17b23eccc22f18c4fc0a0fc34cf0abca7ef: Merge tag 'nand/for-4.16' of git://git.infradead.org/linux-mtd into mtd/next (2018-01-29 09:58:36 +0100) ---------------------------------------------------------------- MTD changes: Core changes: * Rework core functions to avoid duplicating generic checks in NAND/OneNAND sub-layers * Update the MAINTAINERS entry to reflect the fact that MTD maintainers now use a single git tree Driver changes: * CFI: use macros instead of inline functions to limit stack usage and make KASAN happy NAND changes: Core changes: * Fix NAND_CMD_NONE handling in nand_command[_lp]() hooks * Introduce the ->exec_op() infrastructure * Rework NAND buffers handling * Fix ECC requirements for K9F4G08U0D * Fix nand_do_read_oob() to return the number of bitflips * Mark K9F1G08U0E as not supporting subpage writes Driver changes: * MTK: Rework the driver to support new IP versions * OMAP OneNAND: Full rework to use new APIs (libgpio, dmaengine) and fix DT support * Marvell: Add a new driver to replace the pxa3xx one SPI NOR changes: Core changes: * Add support to new ISSI and Cypress/Spansion memory parts. * Fix support of Micron memories by checking error bits in the FSR. * Fix update of block-protection bits by reading back the SR. * Restore the internal state of the SPI flash memory when removing the device. Driver changes: * Maintenance for Freescale, Intel and Metiatek drivers. * Add support of the direct access mode for the Cadence QSPI controller. ---------------------------------------------------------------- Aaron Sierra (1): mtd: spi-nor: Check that BP bits are set properly Angelo Dureghello (1): mtd: spi-nor: add support for ISSI is25lp128 Antonio Borneo (1): mtd: mchp23k256: propagate return value of spi_sync() Arnd Bergmann (2): mtd: cfi: convert inline functions to macros mtd: onenand: omap2: print resource using %pR format string Bean Huo (beanhuo) (1): mtd: spi-nor: check FSR error bits for Micron memories Boris Brezillon (15): mtd: nand: hynix: Don't wait after applying new read-retry params mtd: nand: provide several helpers to do common NAND operations mtd: nand: force drivers to explicitly send READ/PROG commands mtd: nand: denali: Avoid using ecc->code_buf as a temporary buffer mtd: nand: Only allocate ecc->{calc, code}_buf when actually needed MAINTAINERS: Move all MTD related branches to a single repo mtd: Do not allow MTD devices with inconsistent erase properties mtd: Add an helper to make erase request aligned on ->erasesize Merge tag 'gpmc-omap-for-v4.16-immutable' of https://github.com/rogerq/linux into nand/next mtd: mtdpart: Make ECC stat handling consistent mtd: Fallback to ->_read/write_oob() when ->_read/write() is missing mtd: Remove duplicate checks on mtd_oob_ops parameter mtd: nand: gpmi: Fix subpage reads Merge tag 'spi-nor/for-4.16' of git://git.infradead.org/linux-mtd into mtd/next Merge tag 'nand/for-4.16' of git://git.infradead.org/linux-mtd into mtd/next Christophe JAILLET (5): mtd: onenand: samsung: use devm_ function to simplify code and fix some leaks mtd: onenand: samsung: return an error if 'mtd_device_parse_register()' fails mtd: onenand: samsung: Propagate the error returned by 'onenand_scan()' mtd: onenand: samsung: Remove a useless include mtd: onenand: samsung: remove incorrect __iomem annotation Colin Ian King (4): mtd: mtdswap: make array 'name' static const, shrinks object size mtd: sharpslpart: fix overflow on block_adr calculation mtd: nand: marvell: fix spelling mistake: "suceed"-> "succeed" mtd: nand: marvell: remove redundant variable 'oob_len' Fabio Estevam (3): dt-bindings: mtd: fsl-quadspi: Pass the qspi clock names mtd: nand: brcmnand: Add a NULL check for devm_kasprintf() mtd: nand: qcom: Add a NULL check for devm_kasprintf() Guochun Mao (1): mtd: mtk-nor: modify functions' name more generally Gustavo A. R. Silva (1): mtd: nand: gpmi: replace _manual_ swap with swap macro Hou Zhiqiang (2): mtd: spi-nor: add an API to restore the status of SPI flash chip mtd: m25p80: restore the status of SPI flash when exiting Jagdish Gediya (1): mtd: nand: ifc: update bufnum mask for ver >= 2.0.0 Jesse Chan (1): mtd: nand: denali_pci: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE Julia Lawall (1): mtd: fsl-quadspi: account for const type of of_device_id.data Kamal Dasu (1): mtd: nand: brcmnand: Disable prefetch by default Ladislav Michl (15): memory: omap-gpmc: Make 'bank-width' property optional mtd: onenand: Remove obsolete url from Kconfig help mtd: nand: samsung: Disable subpage writes on E-die NAND dt-bindings: mtd: gpmc-onenand: Update properties description ARM: dts: OMAP2+: Add compatible property to onenand node ARM: dts: omap3-igep: Update onenand node timings mtd: onenand: omap2: Remove regulator support mtd: onenand: omap2: Remove skip initial unlocking support mtd: onenand: omap2: Remove partitioning support from platform data mtd: onenand: omap2: Account waiting time as waiting on IO mtd: onenand: omap2: Unify OMAP2 and OMAP3 DMA implementation mtd: onenand: omap2: Do not make delay for GPIO OMAP3 specific mtd: onenand: omap2: Decouple DMA enabling from INT pin availability mtd: onenand: omap2: Configure driver from DT ARM: OMAP2+: Remove gpmc-onenand Masahiro Yamada (6): mtd: nand: remove unnecessary extern from driver headers mtd: nand: denali: rename misleading dma_buf to tmp_buf mtd: nand: cafe: remove use of NAND_OWN_BUFFERS mtd: nand: remove unused NAND_OWN_BUFFERS flag mtd: nand: squash struct nand_buffers into struct nand_chip mtd: nand: cafe: clean up DMA address setup Mika Westerberg (1): spi-nor: intel-spi: Remove unused preopcodes field Miquel Raynal (16): mtd: nand: fix interpretation of NAND_CMD_NONE in nand_command[_lp]() mtd: nand: use usual return values for the ->erase() hook mtd: nand: provide valid ->data_interface during NAND detection mtd: nand: samsung: add ECC requirements for K9F4G08U0D mtd: nand: add ->exec_op() implementation mtd: nand: Fix unfinished comment in nand_init_data_interface() mtd: mtd_oobtest: Handle bitflips during reads mtd: nand: Fix nand_do_read_oob() return value dt-bindings: mtd: document new nand-rb property dt-bindings: mtd: add Marvell NAND controller documentation mtd: nand: add reworked Marvell NAND controller driver mtd: nand: use reworked NAND controller driver with Marvell EBU SoCs MAINTAINERS: Add entry for Marvell NAND controller driver mtd: nand: marvell: Fix missing memory allocation modifier mtd: nand: Fix build issues due to an anonymous union mtd: nand: sunxi: Fix ECC strength choice Nicolas Ferre (1): MAINTAINERS: mtd/nand: update Microchip nand entry Peter Ujfalusi (2): mtd: onenand: omap2: Simplify the DMA setup for various paths mtd: onenand: omap2: Convert to use dmaengine for memcpy Rafael Gago (1): mtd: spi-nor: Add support for s25fl128l and s25fl256l RogerCC Lin (3): mtd: nand: mtk: update DT bindings mtd: nand: mtk: Support different MTK NAND flash controller IP mtd: nand: mtk: Support MT7622 NAND flash controller. Romain Porte (1): mtd: spi-nor: Add ISSI is25lp080d support Sascha Hauer (2): mtd: nand: gpmi-nand: Remove wrong Kconfig help text mtd: tests: nandbiterrs: Fix read_page return value Sean Nyekjaer (2): mtd: spi-nor: add support for is25lq040b mtd: spi-nor: indent issi section Vignesh R (2): mtd: spi-nor: cadence-quadspi: Refactor indirect read/write sequence. mtd: spi-nor: cadence-quadspi: Add support for direct access mode Wei Yongjun (2): mtd: sharpslpart: make local function sharpsl_nand_cleanup_ftl() static mtd: onenand: omap2: Remove redundant dev_err call in omap2_onenand_probe() Xiaolei Li (1): mtd: nand: mtk: use nand_reset() to reset NAND devices in resume function Documentation/devicetree/bindings/mtd/fsl-quadspi.txt | 2 +- Documentation/devicetree/bindings/mtd/gpmc-onenand.txt | 6 +- Documentation/devicetree/bindings/mtd/marvell-nand.txt | 123 ++ Documentation/devicetree/bindings/mtd/mtk-nand.txt | 11 +- Documentation/devicetree/bindings/mtd/nand.txt | 1 + Documentation/mtd/spi-nor.txt | 3 + MAINTAINERS | 28 +- arch/arm/boot/dts/omap2420-n8x0-common.dtsi | 1 + arch/arm/boot/dts/omap3-igep.dtsi | 30 +- arch/arm/boot/dts/omap3-n900.dts | 1 + arch/arm/boot/dts/omap3-n950-n9.dtsi | 1 + arch/arm/boot/dts/omap3430-sdp.dts | 1 + arch/arm/configs/mvebu_v7_defconfig | 2 +- arch/arm/mach-omap2/Makefile | 3 - arch/arm/mach-omap2/gpmc-onenand.c | 409 ------ arch/arm64/configs/defconfig | 2 +- drivers/memory/omap-gpmc.c | 163 ++- drivers/mtd/devices/docg3.c | 70 - drivers/mtd/devices/m25p80.c | 9 + drivers/mtd/devices/mchp23k256.c | 18 +- drivers/mtd/mtdcore.c | 36 +- drivers/mtd/mtdpart.c | 43 +- drivers/mtd/mtdswap.c | 5 +- drivers/mtd/nand/Kconfig | 17 +- drivers/mtd/nand/Makefile | 1 + drivers/mtd/nand/atmel/nand-controller.c | 9 +- drivers/mtd/nand/bf5xx_nand.c | 6 +- drivers/mtd/nand/brcmnand/brcmnand.c | 38 +- drivers/mtd/nand/cafe_nand.c | 52 +- drivers/mtd/nand/denali.c | 84 +- drivers/mtd/nand/denali.h | 4 +- drivers/mtd/nand/denali_pci.c | 4 + drivers/mtd/nand/diskonchip.c | 4 +- drivers/mtd/nand/docg4.c | 21 +- drivers/mtd/nand/fsl_elbc_nand.c | 10 +- drivers/mtd/nand/fsl_ifc_nand.c | 13 +- drivers/mtd/nand/fsmc_nand.c | 9 +- drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 111 +- drivers/mtd/nand/gpmi-nand/gpmi-nand.h | 46 +- drivers/mtd/nand/hisi504_nand.c | 9 +- drivers/mtd/nand/jz4740_nand.c | 16 +- drivers/mtd/nand/lpc32xx_mlc.c | 7 +- drivers/mtd/nand/lpc32xx_slc.c | 33 +- drivers/mtd/nand/marvell_nand.c | 2896 +++++++++++++++++++++++++++++++++++++++++ drivers/mtd/nand/mtk_ecc.c | 126 +- drivers/mtd/nand/mtk_ecc.h | 3 +- drivers/mtd/nand/mtk_nand.c | 76 +- drivers/mtd/nand/nand_base.c | 2603 ++++++++++++++++++++++++++++-------- drivers/mtd/nand/nand_bbt.c | 2 +- drivers/mtd/nand/nand_hynix.c | 129 +- drivers/mtd/nand/nand_micron.c | 83 +- drivers/mtd/nand/nand_samsung.c | 19 + drivers/mtd/nand/nand_timings.c | 21 +- drivers/mtd/nand/omap2.c | 28 +- drivers/mtd/nand/pxa3xx_nand.c | 14 +- drivers/mtd/nand/qcom_nandc.c | 30 +- drivers/mtd/nand/r852.c | 11 +- drivers/mtd/nand/sh_flctl.c | 6 +- drivers/mtd/nand/sm_common.h | 2 +- drivers/mtd/nand/sunxi_nand.c | 111 +- drivers/mtd/nand/tango_nand.c | 27 +- drivers/mtd/nand/tmio_nand.c | 5 +- drivers/mtd/nand/vf610_nfc.c | 6 +- drivers/mtd/onenand/Kconfig | 7 +- drivers/mtd/onenand/omap2.c | 577 +++----- drivers/mtd/onenand/onenand_base.c | 81 -- drivers/mtd/onenand/samsung.c | 185 +-- drivers/mtd/parsers/sharpslpart.c | 6 +- drivers/mtd/spi-nor/cadence-quadspi.c | 55 +- drivers/mtd/spi-nor/fsl-quadspi.c | 8 +- drivers/mtd/spi-nor/intel-spi.c | 6 - drivers/mtd/spi-nor/mtk-quadspi.c | 240 ++-- drivers/mtd/spi-nor/spi-nor.c | 75 +- drivers/mtd/tests/nandbiterrs.c | 2 +- drivers/mtd/tests/oobtest.c | 21 + drivers/staging/mt29f_spinand/mt29f_spinand.c | 5 +- include/linux/mtd/map.h | 130 +- include/linux/mtd/mtd.h | 28 + include/linux/mtd/rawnand.h | 443 ++++++- include/linux/mtd/spi-nor.h | 12 +- include/linux/omap-gpmc.h | 28 + include/linux/platform_data/mtd-onenand-omap2.h | 34 - 82 files changed, 7013 insertions(+), 2590 deletions(-) create mode 100644 Documentation/devicetree/bindings/mtd/marvell-nand.txt delete mode 100644 arch/arm/mach-omap2/gpmc-onenand.c create mode 100644 drivers/mtd/nand/marvell_nand.c delete mode 100644 include/linux/platform_data/mtd-onenand-omap2.h