From patchwork Mon Aug 13 06:44:12 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Boris Brezillon X-Patchwork-Id: 956835 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:e::133; helo=bombadil.infradead.org; envelope-from=linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bootlin.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="NmtyuBMO"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 41pmRy6qhTz9sBD for ; Mon, 13 Aug 2018 16:44:46 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Subject:To:From :Date:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=Ixlz58vCEYv+KBHNanrXuntztsaEgfACjY3cS/A5OUE=; b=NmtyuBMObNYIp/ B4ZUEFs5ZFbUhDQhKaOzrnpwNBI+K3JAnlVNOdJzE1aDzBaQx/d8doxvdteoeenz3DJgZZnkjapHD b1/nyqilCZC3Pr5Lt/VCNm3hR3LkpaG6uOdX7k/58TzAnQbVxoBWK+dp4EoOhK7+KzjmWH5XAp6NT k22NOSfIQp6TQhwqcy5C7IHKZ1d7+jMVMvHJ1KMHg3KciV5josRpeQ2J6DEmRIqRNw0t3mIeUVZKY ORX8U+dleiI9SeLnAuaTc1VzvJDAFvyO3ZfaDkvKrbV2HUZlCmXUSxKZnDXlmdqOGZIT0QEteSa2Z K/qsdWwPiYG39w43O2Jg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1fp6ak-0000Kh-BW; Mon, 13 Aug 2018 06:44:38 +0000 Received: from mail.bootlin.com ([62.4.15.54]) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1fp6af-0000IM-GJ for linux-mtd@lists.infradead.org; Mon, 13 Aug 2018 06:44:36 +0000 Received: by mail.bootlin.com (Postfix, from userid 110) id 2D7D020728; Mon, 13 Aug 2018 08:44:19 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mail.bootlin.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT, URIBL_BLOCKED shortcircuit=ham autolearn=disabled version=3.4.0 Received: from bbrezillon (LStLambert-656-1-150-232.w80-14.abo.wanadoo.fr [80.14.32.232]) by mail.bootlin.com (Postfix) with ESMTPSA id E8A3620717; Mon, 13 Aug 2018 08:44:14 +0200 (CEST) Date: Mon, 13 Aug 2018 08:44:12 +0200 From: Boris Brezillon To: Linus Torvalds Subject: [GIT PULL] mtd: Changes for 4.19 Message-ID: <20180813084412.4d583661@bbrezillon> X-Mailer: Claws Mail 3.15.0-dirty (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20180812_234433_962056_0A864C6F X-CRM114-Status: GOOD ( 20.91 ) X-Spam-Score: -0.0 (/) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-0.0 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [62.4.15.54 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Marek Vasut , Richard Weinberger , "linux-mtd@lists.infradead.org" , Miquel Raynal , Brian Norris , David Woodhouse Sender: "linux-mtd" Errors-To: linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org Hello Linus, Here is the MTD PR for 4.19. Regards, Boris The following changes since commit 021c91791a5e7e85c567452f1be3e4c2c6cb6063: Linux 4.18-rc3 (2018-07-01 16:04:53 -0700) are available in the git repository at: git://git.infradead.org/linux-mtd.git tags/mtd/for-4.19 for you to fetch changes up to 9805d4bcf8f98dbeb1a66c3195f2ea8b917a083e: mtd: rawnand: atmel: Select GENERIC_ALLOCATOR (2018-08-11 18:07:44 +0200) ---------------------------------------------------------------- JFFS2 changes: - Support 64-bit timestamps MTD changes: Core changes: - Support sub-partitions - Clarify mtd_oob_ops documentation - Make Kconfig formatting consistent - Fix potential overflows in mtdchar_{write,read}() - Fallback to ->_{read,write}() when ->_{read,write}_oob() is missing and no OOB data were requested - Remove VLA usage in the bch lib Driver changes: - Use mtd_device_register() instead of mtd_device_parse_register() where applicable - Use proper printk format to print physical addresses in the solutionengine driver - Add missing mtd_set_of_node() call in the powernv driver - Remove unneeded variables in a few drivers - Plug the TRX part parser to the DT partition parsers logic - Check ioremap_cache() return code in the gpio-addr-flash driver - Stop using VMLINUX_SYMBOL_STR() in gen_probe.c SPI NOR changes: Core changes: - Apply reset hacks only when reset is explicitly marked as broken in the DT Driver changes: - Minor cleanup/fixes in the m25p80 driver - Release flash_np in the nxp-spifi driver - Add suspend/resume hooks to the atmel-quadspi driver - Include gpio/consumer.h instead of gpio.h in the atmel-quadspi driver - Use %pK instead of %p in the stm32-quadspi driver - Improve timeout handling in the cadence-quadspi driver - Use mtd_device_register() instead of mtd_device_parse_register() in the intel-spi driver NAND changes: Core changes: - Add the SPI-NAND framework. - Create a helper to find the best ECC configuration. - Create NAND controller operations. - Allocate dynamically ONFI parameters structure. - Add defines for ONFI version bits. - Add manufacturer fixup for ONFI parameter page. - Add an option to specify NAND chip as a boot device. - Add Reed-Solomon error correction algorithm. - Better name for the controller structure. - Remove unused caller_is_module() definition. - Make subop helpers return unsigned values. - Expose _notsupp() helpers for raw page accessors. - Add default values for dynamic timings. - Kill the chip->scan_bbt() hook. - Rename nand_default_bbt() into nand_create_bbt(). - Start to clean the nand_chip structure. - Remove stale prototype from rawnand.h. Raw NAND controllers drivers changes: - Qcom: structuring cleanup. - Denali: use core helper to find the best ECC configuration. - Possible build of almost all drivers by adding a dependency on COMPILE_TEST for almost all of them in Kconfig, implies various fixes, Kconfig cleanup, GPIO headers inclusion cleanup, and even changes in sparc64 and ia64 architectures. - Clean the ->probe() functions error path of a lot of drivers. - Migrate all drivers to use nand_scan() instead of nand_scan_ident()/nand_scan_tail() pair. - Use mtd_device_register() where applicable to simplify the code. - Marvell: * Handle on-die ECC. * Better clocks handling. * Remove bogus comment. * Add suspend and resume support. - Tegra: add NAND controller driver. - Atmel: * Add module param to avoid using dma. * Drop Wenyou Yang from MAINTAINERS. - Denali: optimize timings handling. - FSMC: Stop using chip->read_buf(). - FSL: * Switch to SPDX license tag identifiers. * Fix qualifiers in MXC init functions. Raw NAND chip drivers changes: - Micron: * Add fixup for ONFI revision. * Update ecc_stats.corrected. * Make ECC activation stateful. * Avoid enabling/disabling ECC when it can't be disabled. * Get the actual number of bitflips. * Allow forced on-die ECC. * Support 8/512 on-die ECC. * Fix on-die ECC detection logic. - Hynix: * Fix decoding the OOB size on H27UCG8T2BTR. * Use ->exec_op() in hynix_nand_reg_write_op(). ---------------------------------------------------------------- Abhishek Sahu (15): mtd: rawnand: helper function for setting up ECC configuration mtd: rawnand: denali: use helper function for ecc setup dt-bindings: qcom_nandc: update for ECC strength and step size mtd: rawnand: qcom: remove dt property nand-ecc-step-size mtd: rawnand: qcom: use the ecc strength from device parameter mtd: rawnand: qcom: wait for desc completion in all BAM channels mtd: rawnand: qcom: erased page detection for uncorrectable errors only mtd: rawnand: qcom: fix null pointer access for erased page detection mtd: rawnand: qcom: parse read errors for read oob also mtd: rawnand: qcom: modify write_oob to remove read codeword part mtd: rawnand: qcom: fix return value for raw page read mtd: rawnand: qcom: check for operation errors in case of raw read mtd: rawnand: qcom: code reorganization for raw read mtd: rawnand: provide only single helper function for ECC conf mtd: rawnand: qcom: erased page bitflips detection Alexey Khoroshilov (1): mtd: spi-nor: nxp-spifi: release flash_np in nxp_spifi_probe() Anders Roxell (1): drivers/memory/Kconfig: Add CONFIG_OF dependency Arnd Bergmann (6): jffs2: use 64-bit intermediate timestamps jffs2: use unsigned 32-bit timstamps consistently mtd: rawnand: MTD_NAND_BCM47XXNFLASH needs CONFIG_BCMA mtd: rawnand: qcom: stop using phys_to_dma() ia64: use asm-generic/io.h sparc64: add reads{b,w,l}/writes{b,w,l} Benjamin Gaignard (1): mtd: spi-nor: stm32-quadspi: replace "%p" with "%pK" Boris Brezillon (67): mtd: m25p80: Remove unneeded m25p->command field mtd: m25p80: Use SPI_MEM_OP_NO_DUMMY instead of SPI_MEM_OP_DUMMY(0, x) mtd: rawnand: micron: Update ecc_stats.corrected dt-bindings: Add bindings for SPI NAND devices mtd: spinand: Add initial support for the MX35LF1GE4AB chip mtd: rawnand: gpmi: Remove useless dependency on MTD_NAND mtd: rawnand: Add 'depends on HAS_IOMEM' where missing mtd: rawnand: omap2: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: sharpsl: Remove inclusion of mach and asm headers mtd: rawnand: sharpsl: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: lpc32xx: Allow selection of these drivers when COMPILE_TEST=y mtd: rawnand: brcmnand: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: mxc: Avoid inclusion of asm/mach headers mtd: rawnand: mxc: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: qcom: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: nuc900: Allow selection of this driver when COMPILE_TEST=y bcma: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: Kill cafe_nand_bug() mtd: rawnand: Remove nand_do_read() prototype from rawnand.h mtd: rawnand: Remove forward declaration of mtd_info mtd: rawnand: Remove forward declaration of device_node mtd: rawnand: Rename nand_default_bbt() into nand_create_bbt() mtd: rawnand: Kill the chip->scan_bbt() hook mtd: rawnand: orion_nand: Kill orion_nand_data.dev_ready() mtd: rawnand: plat_nand: Kill pdata->ctrl.{hwcontrol, read_byte}() mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op() mtd: rawnand: atmel: Use uintptr_t casts instead of unsigned int mtd: rawnand: atmel: Add an __iomem cast on gen_pool_dma_alloc() call mtd: rawnand: atmel: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: davinci: Stop doing iomem pointer <-> u32 conversions mtd: rawnand: davinci: Use uintptr_t casts instead of unsigned ones mtd: rawnand: davinci: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: sunxi: Add an U suffix to NFC_PAGE_OP definition mtd: rawnand: sunxi: Make sure ret is initialized in sunxi_nfc_read_byte() mtd: rawnand: sunxi: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: fscm: Avoid collision on PC def when compiling for MIPS mtd: rawnand: fsmc: Use uintptr_t casts instead of unsigned ones mtd: rawnand: fsmc: Allow selection of this driver when COMPILE_TEST=y memory: fsl_ifc: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: fsl_ifc: Add an __iomem specifier on eccstat_regs mtd: rawnand: fsl_ifc: Allow selection of this driver when COMPILE_TEST=y MIPS: txx9: Move the ndfc.h header to include/linux/platform_data/txx9 mtd: rawnand: txx9ndfmc: Allow selection of this driver when COMPILE_TEST=y MIPS: jz4740: Move jz4740_nand.h header to include/linux/platform_data/jz4740 mtd: rawnand: jz4740: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: jz4780: Drop the dependency on MACH_JZ4780 mtd: Make Kconfig formatting consistent mtd: rawnand: jz4740: Use the proper format specifier to print chipnr memory: jz4780-nemc: Allow selection of this driver when COMPILE_TEST=y mtd: rawnand: fsmc: Stop using chip->read_buf() mtd: rawnand: micron: Fix on-die ECC detection logic mtd: rawnand: Expose _notsupp() helpers for raw page accessors mtd: rawnand: micron: Get the actual number of bitflips mtd: rawnand: micron: Avoid enabling/disabling ECC when it can't be disabled mtd: rawnand: micron: Make ECC activation stateful mtd: rawnand: orion: Avoid direct inclusion of asm headers mtd: rawnand: orion: Handle cases where __LINUX_ARM_ARCH__ is not defined mtd: rawnand: s3c2410: Error out when ->nrsets < 0 or ->sets == NULL mtd: rawnand: Remove unused caller_is_module() definition mtd: rawnand: jz4740: Include gpio/consumer.h instead of gpio.h mtd: rawnand: sunxi: Remove gpio.h and of_gpio.h inclusions mtd: rawnand: atmel: Stop including gpio.h mtd: rawnand: au1550nd: Remove unneeded gpio.h inclusion mtd: spi-nor: atmel-quadspi: Include gpio/consumer.h instead of gpio.h Merge tag 'nand/for-4.19' of git://git.infradead.org/linux-mtd into mtd/next Merge tag 'spi-nor/for-4.19' of git://git.infradead.org/linux-mtd into mtd/next mtd: rawnand: atmel: Select GENERIC_ALLOCATOR Brian Norris (1): mtd: spi-nor: only apply reset hacks to broken hardware Chris Packham (6): mtd: rawnand: marvell: Handle on-die ECC mtd: rawnand: add manufacturer fixup for ONFI parameter page mtd: rawnand: add defines for ONFI version bits mtd: rawnand: micron: add fixup for ONFI revision mtd: rawnand: micron: support 8/512 on-die ECC mtd: rawnand: micron: allow forced on-die ECC Claudiu Beznea (1): mtd: spi-nor: atmel-quadspi: add suspend/resume hooks Colin Ian King (3): mtd: cfi: cmdset_0002: remove redundant variable timeo mtd: nftl: remove redundant variable nb_erases mtd: rawnand: gpmi: remove redundant variable payload_virt Daniel Mack (3): mtd: rawnand: marvell: add suspend and resume hooks mtd: rawnand: marvell: remove bogus comment in marvell_nfc_select_chip() mtd: rawnand: marvell: set reg_clk to NULL if it can't be obtained Fabio Estevam (2): mtd: rawnand: gpmi: Switch to SPDX identifier mtd: rawnand: mxc: Switch to SPDX identifier Frieder Schrempf (1): mtd: spinand: Add initial support for Winbond W25M02GV Geert Uytterhoeven (1): mtd: Use kasprintf() instead of fixed buffer formatting Jann Horn (1): mtdchar: fix overflows in adjustment of `count` Kees Cook (1): lib/bch: Remove VLA usage Martin Blumenstingl (1): mtd: rawnand: hynix: fix decoding the OOB size on H27UCG8T2BTR Martin Kaiser (1): mtd: rawnand: mxc: remove __init qualifier from mxcnd_probe_dt Masahiro Yamada (5): mtd: replace VMLINUX_SYMBOL_STR() with string literal mtd: rawnand: denali_dt: use dev as a shorthand of &pdev->dev dt-binding: mtd: denali_dt: document clock property mtd: rawnand: denali_dt: add more clocks based on IP datasheet mtd: rawnand: denali: optimize timing parameters for data interface Miquel Raynal (50): mtd: spinand: macronix: Add support for MX35LF2GE4AB mtd: rawnand: docg4: fix the probe function error path mtd: rawnand: fix indentation in Kconfig mtd: Fallback to ->_read/write() when ->_read/write_oob() is missing mtd: adapt misleading comment in mtd_oob_ops structure mtd: rawnand: add default values for dynamic timings mtd: rawnand: make subop helpers return unsigned values mtd: rawnand: better name for the controller structure mtd: rawnand: add hooks that may be called during nand_scan() mtd: rawnand: davinci: convert driver to nand_scan() mtd: rawnand: denali: convert to nand_scan() mtd: rawnand: fsl_elbc: return meaningful values mtd: rawnand: fsl_elbc: convert driver to nand_scan() mtd: rawnand: fsl_ifc: convert driver to nand_scan() mtd: rawnand: fsmc: convert driver to nand_scan() mtd: rawnand: gpmi: convert driver to nand_scan() mtd: rawnand: hisi504: convert driver to nand_scan() mtd: rawnand: jz4780: convert driver to nand_scan() mtd: rawnand: lpc32xx_slc: convert driver to nand_scan() mtd: rawnand: marvell: convert driver to nand_scan() mtd: rawnand: mtk: convert driver to nand_scan() mtd: rawnand: mxc: convert driver to nand_scan() mtd: rawnand: nandsim: convert driver to nand_scan() mtd: rawnand: s3c2410: convert driver to nand_scan() mtd: rawnand: sh_flctl: convert driver to nand_scan() mtd: rawnand: sunxi: convert driver to nand_scan() mtd: rawnand: tango: convert driver to nand_scan() mtd: rawnand: txx9ndfmc: rename nand controller internal structure mtd: rawnand: vf610: convert driver to nand_scan() mtd: rawnand: sm_common: fix the probe function error path mtd: rawnand: sm_common: convert driver to nand_scan_with_ids() mtd: rawnand: qcom: convert driver to nand_scan() mtd: rawnand: brcmnand: convert driver to nand_scan() mtd: rawnand: cafe: convert driver to nand_scan() mtd: rawnand: lpc32xx_mlc: convert driver to nand_scan() mtd: rawnand: omap2: convert driver to nand_scan() mtd: rawnand: atmel: clarify NAND addition/removal paths mtd: rawnand: atmel: convert driver to nand_scan() mtd: rawnand: do not execute nand_scan_ident() if maxchips is zero mtd: rawnand: docg4: convert driver to nand_scan() mtd: rawnand: jz4740: fix probe function error path mtd: rawnand: jz4740: group nand_scan_{ident, tail} calls mtd: rawnand: jz4740: convert driver to nand_scan() mtd: rawnand: tegra: convert driver to nand_scan() mtd: rawnand: txx9ndfmc: clarify ECC parameters assignation mtd: rawnand: txx9ndfmc: convert driver to nand_scan() mtd: rawnand: do not export nand_scan_[ident|tail]() anymore mtd: rawnand: allocate model parameter dynamically mtd: rawnand: allocate dynamically ONFI parameters during detection MAINTAINERS: drop Wenyou Yang from Atmel NAND driver support Nicholas Mc Guire (1): mtd: spi-nor: cadence-quadspi: fix timeout handling Peter Pan (2): mtd: nand: Add core infrastructure to support SPI NANDs mtd: spinand: Add initial support for Micron MT29F2G01ABAGD Peter Rosin (1): mtd: rawnand: atmel: add module param to avoid using dma Rafał Miłecki (11): dt-bindings: mtd: document Broadcom's TRX firmware format binding mtd: parsers: trx: add of_match_table with the new DT binding mtd: powernv_flash: set of_node in mtd's dev mtd: maps: use mtd_device_register() where applicable mtd: sst25l: use mtd_device_register() mtd: rawnand: use mtd_device_register() where applicable mtd: onenand: use mtd_device_register() where applicable mtd: lpddr: use mtd_device_register() dt-bindings: mtd: explicitly document nesting partitions descriptions mtd: partitions: use DT info for parsing partitions with "compatible" prop mtd: spi-nor: intel-spi: use mtd_device_register() Randy Dunlap (1): mtd/maps: fix solutionengine.c printk format warnings Stefan Agner (5): mtd: rawnand: add Reed-Solomon error correction algorithm mtd: rawnand: add an option to specify NAND chip as a boot device dt-bindings: mtd: add tegra NAND controller binding mtd: rawnand: add NVIDIA Tegra NAND Flash controller driver mtd: rawnand: tegra: check bounds of die_nr properly Zhouyang Jia (1): mtd: maps: gpio-addr-flash: add error handling for ioremap_nocache Documentation/devicetree/bindings/mtd/denali-nand.txt | 5 + Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt | 9 + Documentation/devicetree/bindings/mtd/nand.txt | 6 +- Documentation/devicetree/bindings/mtd/nvidia-tegra20-nand.txt | 64 ++ Documentation/devicetree/bindings/mtd/partition.txt | 46 ++ Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt | 37 + Documentation/devicetree/bindings/mtd/qcom_nandc.txt | 7 +- Documentation/devicetree/bindings/mtd/spi-nand.txt | 5 + MAINTAINERS | 8 +- arch/arm/mach-pxa/balloon3.c | 1 - arch/arm/mach-pxa/em-x270.c | 1 - arch/ia64/include/asm/io.h | 13 +- arch/mips/jz4740/board-qi_lb60.c | 3 +- arch/mips/txx9/generic/setup.c | 2 +- arch/mips/txx9/generic/setup_tx4938.c | 2 +- arch/mips/txx9/generic/setup_tx4939.c | 2 +- arch/sparc/include/asm/io_64.h | 19 +- drivers/bcma/Kconfig | 3 +- drivers/memory/Kconfig | 6 +- drivers/mtd/Kconfig | 24 +- drivers/mtd/chips/Kconfig | 2 +- drivers/mtd/chips/cfi_cmdset_0002.c | 2 - drivers/mtd/chips/gen_probe.c | 7 +- drivers/mtd/devices/Kconfig | 4 +- drivers/mtd/devices/m25p80.c | 5 +- drivers/mtd/devices/powernv_flash.c | 1 + drivers/mtd/devices/sst25l.c | 5 +- drivers/mtd/lpddr/Kconfig | 8 +- drivers/mtd/lpddr/lpddr2_nvm.c | 2 +- drivers/mtd/maps/Kconfig | 24 +- drivers/mtd/maps/gpio-addr-flash.c | 3 + drivers/mtd/maps/impa7.c | 5 +- drivers/mtd/maps/intel_vr_nor.c | 2 +- drivers/mtd/maps/latch-addr-flash.c | 5 +- drivers/mtd/maps/rbtx4939-flash.c | 3 +- drivers/mtd/maps/solutionengine.c | 6 +- drivers/mtd/mtdchar.c | 10 +- drivers/mtd/mtdcore.c | 28 +- drivers/mtd/mtdpart.c | 33 +- drivers/mtd/nand/Kconfig | 1 + drivers/mtd/nand/Makefile | 1 + drivers/mtd/nand/onenand/generic.c | 5 +- drivers/mtd/nand/onenand/samsung.c | 5 +- drivers/mtd/nand/raw/Kconfig | 157 ++-- drivers/mtd/nand/raw/Makefile | 1 + drivers/mtd/nand/raw/atmel/nand-controller.c | 175 ++-- drivers/mtd/nand/raw/au1550nd.c | 1 - drivers/mtd/nand/raw/brcmnand/brcmnand.c | 67 +- drivers/mtd/nand/raw/cafe_nand.c | 143 ++-- drivers/mtd/nand/raw/cmx270_nand.c | 4 +- drivers/mtd/nand/raw/cs553x_nand.c | 3 +- drivers/mtd/nand/raw/davinci_nand.c | 231 +++--- drivers/mtd/nand/raw/denali.c | 216 +++-- drivers/mtd/nand/raw/denali.h | 1 + drivers/mtd/nand/raw/denali_dt.c | 70 +- drivers/mtd/nand/raw/denali_pci.c | 1 + drivers/mtd/nand/raw/diskonchip.c | 4 +- drivers/mtd/nand/raw/docg4.c | 89 ++- drivers/mtd/nand/raw/fsl_elbc_nand.c | 25 +- drivers/mtd/nand/raw/fsl_ifc_nand.c | 25 +- drivers/mtd/nand/raw/fsmc_nand.c | 183 +++-- drivers/mtd/nand/raw/gpmi-nand/gpmi-lib.c | 15 +- drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c | 76 +- drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.h | 11 +- drivers/mtd/nand/raw/hisi504_nand.c | 78 +- drivers/mtd/nand/raw/jz4740_nand.c | 51 +- drivers/mtd/nand/raw/jz4780_nand.c | 41 +- drivers/mtd/nand/raw/lpc32xx_mlc.c | 61 +- drivers/mtd/nand/raw/lpc32xx_slc.c | 77 +- drivers/mtd/nand/raw/marvell_nand.c | 302 ++++--- drivers/mtd/nand/raw/mtk_nand.c | 79 +- drivers/mtd/nand/raw/mxc_nand.c | 157 ++-- drivers/mtd/nand/raw/nand_base.c | 345 +++++--- drivers/mtd/nand/raw/nand_bbt.c | 10 +- drivers/mtd/nand/raw/nand_hynix.c | 23 + drivers/mtd/nand/raw/nand_micron.c | 351 ++++++-- drivers/mtd/nand/raw/nand_timings.c | 32 +- drivers/mtd/nand/raw/nandsim.c | 84 +- drivers/mtd/nand/raw/ndfc.c | 4 +- drivers/mtd/nand/raw/omap2.c | 463 ++++++----- drivers/mtd/nand/raw/orion_nand.c | 9 +- drivers/mtd/nand/raw/oxnas_nand.c | 4 +- drivers/mtd/nand/raw/plat_nand.c | 2 - drivers/mtd/nand/raw/qcom_nandc.c | 591 +++++++++----- drivers/mtd/nand/raw/s3c2410.c | 52 +- drivers/mtd/nand/raw/sh_flctl.c | 36 +- drivers/mtd/nand/raw/sharpsl.c | 5 +- drivers/mtd/nand/raw/sm_common.c | 39 +- drivers/mtd/nand/raw/sunxi_nand.c | 55 +- drivers/mtd/nand/raw/tango_nand.c | 44 +- drivers/mtd/nand/raw/tegra_nand.c | 1246 +++++++++++++++++++++++++++++ drivers/mtd/nand/raw/txx9ndfmc.c | 44 +- drivers/mtd/nand/raw/vf610_nfc.c | 127 +-- drivers/mtd/nand/spi/Kconfig | 7 + drivers/mtd/nand/spi/Makefile | 3 + drivers/mtd/nand/spi/core.c | 1155 ++++++++++++++++++++++++++ drivers/mtd/nand/spi/macronix.c | 144 ++++ drivers/mtd/nand/spi/micron.c | 133 +++ drivers/mtd/nand/spi/winbond.c | 141 ++++ drivers/mtd/nftlmount.c | 3 +- drivers/mtd/parsers/parser_trx.c | 7 + drivers/mtd/spi-nor/atmel-quadspi.c | 23 +- drivers/mtd/spi-nor/cadence-quadspi.c | 20 +- drivers/mtd/spi-nor/intel-spi.c | 2 +- drivers/mtd/spi-nor/nxp-spifi.c | 1 + drivers/mtd/spi-nor/spi-nor.c | 18 +- drivers/mtd/spi-nor/stm32-quadspi.c | 6 +- fs/jffs2/dir.c | 32 +- fs/jffs2/file.c | 6 +- fs/jffs2/fs.c | 12 +- fs/jffs2/os-linux.h | 13 +- include/linux/mtd/mtd.h | 8 +- include/linux/mtd/rawnand.h | 126 +-- include/linux/mtd/spi-nor.h | 1 + include/linux/mtd/spinand.h | 421 ++++++++++ .../linux/platform_data/jz4740}/jz4740_nand.h | 4 +- include/linux/platform_data/mtd-orion_nand.h | 1 - .../mips/include/asm => include/linux/platform_data}/txx9/ndfmc.h | 6 +- include/linux/spi/spi-mem.h | 4 +- lib/Makefile | 1 + lib/bch.c | 23 +- 121 files changed, 6467 insertions(+), 2194 deletions(-) create mode 100644 Documentation/devicetree/bindings/mtd/nvidia-tegra20-nand.txt create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt create mode 100644 Documentation/devicetree/bindings/mtd/spi-nand.txt create mode 100644 drivers/mtd/nand/raw/tegra_nand.c create mode 100644 drivers/mtd/nand/spi/Kconfig create mode 100644 drivers/mtd/nand/spi/Makefile create mode 100644 drivers/mtd/nand/spi/core.c create mode 100644 drivers/mtd/nand/spi/macronix.c create mode 100644 drivers/mtd/nand/spi/micron.c create mode 100644 drivers/mtd/nand/spi/winbond.c create mode 100644 include/linux/mtd/spinand.h rename {arch/mips/include/asm/mach-jz4740 => include/linux/platform_data/jz4740}/jz4740_nand.h (91%) rename {arch/mips/include/asm => include/linux/platform_data}/txx9/ndfmc.h (91%)