Merge tag 'for-linus-20171120' of git://git.infradead.org/linux-mtd
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 23 Nov 2017 06:46:06 +0000 (20:46 -1000)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 23 Nov 2017 06:46:06 +0000 (20:46 -1000)
Pull MTD updates from Richard Weinberger:
 "General changes:
   -  Unconfuse get_unmapped_area and point/unpoint driver methods
   -  New partition parser: sharpslpart
   -  Kill GENERIC_IO
   -  Various fixes

  NAND changes:
   -  Add a flag to mark NANDs that require 3 address cycles to encode a
      page address
   -  Set a default ECC/free layout when NAND_ECC_NONE is requested
   -  Fix a bug in panic_nand_write()
   -  Another batch of cleanups for the denali driver
   -  Fix PM support in the atmel driver
   -  Remove support for platform data in the omap driver
   -  Fix subpage write in the omap driver
   -  Fix irq handling in the mtk driver
   -  Change link order of mtk_ecc and mtk_nand drivers to speed up boot
      time
   -  Change log level of ECC error messages in the mxc driver
   -  Patch the pxa3xx driver to support Armada 8k platforms
   -  Add BAM DMA support to the qcom driver
   -  Convert gpio-nand to the GPIO desc API
   -  Fix ECC handling in the mt29f driver

  SPI-NOR changes:
   -  Introduce system power management support
   -  New mechanism to select the proper .quad_enable() hook by JEDEC
      ID, when needed, instead of only by manufacturer ID
   -  Add support to new memory parts from Gigadevice, Winbond, Macronix
      and Everspin
   -  Maintainance for Cadence, Intel, Mediatek and STM32 drivers"

*  tag 'for-linus-20171120' of git://git.infradead.org/linux-mtd: (85 commits)
  mtd: Avoid probe failures when mtd->dbg.dfs_dir is invalid
  mtd: sharpslpart: Add sharpslpart partition parser
  mtd: Add sanity checks in mtd_write/read_oob()
  mtd: remove the get_unmapped_area method
  mtd: implement mtd_get_unmapped_area() using the point method
  mtd: chips/map_rom.c: implement point and unpoint methods
  mtd: chips/map_ram.c: implement point and unpoint methods
  mtd: mtdram: properly handle the phys argument in the point method
  mtd: mtdswap: fix spelling mistake: 'TRESHOLD' -> 'THRESHOLD'
  mtd: slram: use memremap() instead of ioremap()
  kconfig: kill off GENERIC_IO option
  mtd: Fix C++ comment in include/linux/mtd/mtd.h
  mtd: constify mtd_partition
  mtd: plat-ram: Replace manual resource management by devm
  mtd: nand: Fix writing mtdoops to nand flash.
  mtd: intel-spi: Add Intel Lewisburg PCH SPI super SKU PCI ID
  mtd: nand: mtk: fix infinite ECC decode IRQ issue
  mtd: spi-nor: Add support for mr25h128
  mtd: nand: mtk: change the compile sequence of mtk_nand.o and mtk_ecc.o
  mtd: spi-nor: enable 4B opcodes for mx66l51235l
  ...

1  2 
Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt
arch/um/Kconfig.common
drivers/mtd/nand/Makefile
include/linux/mtd/nand-gpio.h
include/linux/platform_data/mtd-nand-omap2.h
lib/Kconfig

index 4cab5d85cf6f8eaf11cdf5b90b18cdcc3def4626,956bb046e599d576e3f881b2901e0d369a3c9802..376fa2f50e6bc9b41052928037acd4b3a382d380
@@@ -13,7 -13,7 +13,8 @@@ Required properties
                   at25df321a
                   at25df641
                   at26df081a
 +                 en25s64
+                  mr25h128
                   mr25h256
                   mr25h10
                   mr25h40
@@@ -32,7 -32,6 +33,7 @@@
                   s25fl008k
                   s25fl064k
                   sst25vf040b
 +                 sst25wf040b
                   m25p40
                   m25p80
                   m25p16
diff --combined arch/um/Kconfig.common
index d9280482a2f89c7c559b76448c6da8358ccda82c,5514ec52108fdaac180377268f4c84bbd3835c39..c68add8df3aef6232976dccbb2399270495e5814
@@@ -1,4 -1,3 +1,4 @@@
 +# SPDX-License-Identifier: GPL-2.0
  config UML
        bool
        default y
@@@ -10,7 -9,6 +10,6 @@@
        select HAVE_DEBUG_KMEMLEAK
        select GENERIC_IRQ_SHOW
        select GENERIC_CPU_DEVICES
-       select GENERIC_IO
        select GENERIC_CLOCKEVENTS
        select HAVE_GCC_PLUGINS
        select TTY # Needed for line.c
index 6e2db700d923ddd14bdd6b0ae9cc5b554cf0ef1e,57f4cdedf137024ec94c03bce685b7d73113b41c..118a1349aad3a47a78242f8561d88c9ee2f2bb1d
@@@ -1,4 -1,3 +1,4 @@@
 +# SPDX-License-Identifier: GPL-2.0
  #
  # linux/drivers/nand/Makefile
  #
@@@ -59,7 -58,7 +59,7 @@@ obj-$(CONFIG_MTD_NAND_SUNXI)          += sunxi_
  obj-$(CONFIG_MTD_NAND_HISI504)                += hisi504_nand.o
  obj-$(CONFIG_MTD_NAND_BRCMNAND)               += brcmnand/
  obj-$(CONFIG_MTD_NAND_QCOM)           += qcom_nandc.o
- obj-$(CONFIG_MTD_NAND_MTK)            += mtk_nand.o mtk_ecc.o
+ obj-$(CONFIG_MTD_NAND_MTK)            += mtk_ecc.o mtk_nand.o
  
  nand-objs := nand_base.o nand_bbt.o nand_timings.o nand_ids.o
  nand-objs += nand_amd.o
index fdef72d6e19891081af777b8fc5e75e19a674a57,98f71908212d2fb84527703846a80be36b95dcbf..7ab51bc4a380e281b6d27ed875ab537bd627f423
@@@ -1,15 -1,9 +1,10 @@@
 +/* SPDX-License-Identifier: GPL-2.0 */
  #ifndef __LINUX_MTD_NAND_GPIO_H
  #define __LINUX_MTD_NAND_GPIO_H
  
  #include <linux/mtd/rawnand.h>
  
  struct gpio_nand_platdata {
-       int     gpio_nce;
-       int     gpio_nwp;
-       int     gpio_cle;
-       int     gpio_ale;
-       int     gpio_rdy;
        void    (*adjust_parts)(struct gpio_nand_platdata *, size_t);
        struct mtd_partition *parts;
        unsigned int num_parts;
index 25e267f1970c9bde11d1cb580bcc6625e61d1d1e,8b8b124e8aea39c5d5d922f9dcd469f66dae4b81..619df2431e750794c1081580221e88659241554b
@@@ -63,22 -63,7 +63,5 @@@ struct gpmc_nand_regs 
        void __iomem    *gpmc_bch_result4[GPMC_BCH_NUM_REMAINDER];
        void __iomem    *gpmc_bch_result5[GPMC_BCH_NUM_REMAINDER];
        void __iomem    *gpmc_bch_result6[GPMC_BCH_NUM_REMAINDER];
 -      /* Deprecated. Do not use */
 -      void __iomem    *gpmc_status;
  };
- struct omap_nand_platform_data {
-       int                     cs;
-       struct mtd_partition    *parts;
-       int                     nr_parts;
-       bool                    flash_bbt;
-       enum nand_io            xfer_type;
-       int                     devsize;
-       enum omap_ecc           ecc_opt;
-       struct device_node      *elm_of_node;
-       /* deprecated */
-       struct gpmc_nand_regs   reg;
-       struct device_node      *of_node;
-       bool                    dev_ready;
- };
  #endif
diff --combined lib/Kconfig
index 368972f0db783dc5173e40ce0e337aac8d1a5077,994fa37a1d961c4c627d38c4df721e3e722c68dc..c5e84fbcb30b7562656dcbbc050bcc0ec4cb7a90
@@@ -46,10 -46,6 +46,6 @@@ config GENERIC_IOMA
        bool
        select GENERIC_PCI_IOMAP
  
- config GENERIC_IO
-       bool
-       default n
  config STMP_DEVICE
        bool
  
@@@ -584,24 -580,6 +580,24 @@@ config PRIME_NUMBER
        tristate
  
  config STRING_SELFTEST
 -      bool "Test string functions"
 +      tristate "Test string functions"
  
  endmenu
 +
 +config GENERIC_ASHLDI3
 +      bool
 +
 +config GENERIC_ASHRDI3
 +      bool
 +
 +config GENERIC_LSHRDI3
 +      bool
 +
 +config GENERIC_MULDI3
 +      bool
 +
 +config GENERIC_CMPDI2
 +      bool
 +
 +config GENERIC_UCMPDI2
 +      bool