• Linus Torvalds's avatar
    Merge tag 'mtd/for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 6f51ab94
    Linus Torvalds authored
    Pull MTD updates from Richard Weinberger:
     "MTD core changes:
       - partition parser: Support MTD names containing one or more colons.
       - mtdblock: clear cache_state to avoid writing to bad blocks
         repeatedly.
    
      Raw NAND core changes:
       - Stop using nand_release(), patched all drivers.
       - Give more information about the ECC weakness when not matching the
         chip's requirement.
       - MAINTAINERS updates.
       - Support emulated SLC mode on MLC NANDs.
       - Support "constrained" controllers, adapt the core and ONFI/JEDEC
         table parsing and Micron's code.
       - Take check_only into account.
       - Add an invalid ECC mode to discriminate with valid ones.
       - Return an enum from of_get_nand_ecc_algo().
       - Drop OOB_FIRST placement scheme.
       - Introduce nand_extract_bits().
       - Ensure a consistent bitflips numbering.
       - BCH lib:
          - Allow easy bit swapping.
          - Rework a little bit the exported function names.
       - Fix nand_gpio_waitrdy().
       - Propage CS selection to sub operations.
       - Add a NAND_NO_BBM_QUIRK flag.
       - Give the possibility to verify a read operation is supported.
       - Add a helper to check supported operations.
       - Avoid indirect access to ->data_buf().
       - Rename the use_bufpoi variables.
       - Fix comments about the use of bufpoi.
       - Rename a NAND chip option.
       - Reorder the nand_chip->options flags.
       - Translate obscure bitfields into readable macros.
       - Timings:
          - Fix default values.
          - Add mode information to the timings structure.
    
      Raw NAND controller driver changes:
       - Fixed many error paths.
       - Arasan
          - New driver
       - Au1550nd:
          - Various cleanups
          - Migration to ->exec_op()
       - brcmnand:
          - Misc cleanup.
          - Support v2.1-v2.2 controllers.
          - Remove unused including <linux/version.h>.
          - Correctly verify erased pages.
          - Fix Hamming OOB layout.
       - Cadence
          - Make cadence_nand_attach_chip static.
       - Cafe:
          - Set the NAND_NO_BBM_QUIRK flag
       - cmx270:
          - Remove this controller driver.
       - cs553x:
          - Misc cleanup
          - Migration to ->exec_op()
       - Davinci:
          - Misc cleanup.
          - Migration to ->exec_op()
       - Denali:
          - Add more delays before latching incoming data
       - Diskonchip:
          - Misc cleanup
          - Migration to ->exec_op()
       - Fsmc:
          - Change to non-atomic bit operations.
       - GPMI:
          - Use nand_extract_bits()
          - Fix runtime PM imbalance.
       - Ingenic:
          - Migration to exec_op()
          - Fix the RB gpio active-high property on qi, lb60
          - Make qi_lb60_ooblayout_ops static.
       - Marvell:
          - Misc cleanup and small fixes
       - Nandsim:
          - Fix the error paths, driver wide.
       - Omap_elm:
          - Fix runtime PM imbalance.
       - STM32_FMC2:
          - Misc cleanups (error cases, comments, timeout valus, cosmetic
            changes).
    
      SPI NOR core changes:
       - Add, update support and fix few flashes.
       - Prepare BFPT parsing for JESD216 rev D.
       - Kernel doc fixes.
    
      CFI changes:
       - Support the absence of protection registers for Intel CFI flashes.
       - Replace zero-length array with flexible-arrays"
    
    * tag 'mtd/for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (208 commits)
      mtd: clear cache_state to avoid writing to bad blocks repeatedly
      mtd: parser: cmdline: Support MTD names containing one or more colons
      mtd: physmap_of_gemini: remove defined but not used symbol 'syscon_match'
      mtd: rawnand: Add an invalid ECC mode to discriminate with valid ones
      mtd: rawnand: Return an enum from of_get_nand_ecc_algo()
      mtd: rawnand: Drop OOB_FIRST placement scheme
      mtd: rawnand: Avoid a typedef
      mtd: Fix typo in mtd_ooblayout_set_databytes() description
      mtd: rawnand: Stop using nand_release()
      mtd: rawnand: nandsim: Reorganize ns_cleanup_module()
      mtd: rawnand: nandsim: Rename a label in ns_init_module()
      mtd: rawnand: nandsim: Manage lists on error in ns_init_module()
      mtd: rawnand: nandsim: Fix the label pointing on nand_cleanup()
      mtd: rawnand: nandsim: Free erase_block_wear on error
      mtd: rawnand: nandsim: Use an additional label when freeing the nandsim object
      mtd: rawnand: nandsim: Stop using nand_release()
      mtd: rawnand: nandsim: Free the partition names in ns_free()
      mtd: rawnand: nandsim: Free the allocated device on error in ns_init()
      mtd: rawnand: nandsim: Free partition names on error in ns_init()
      mtd: rawnand: nandsim: Fix the two ns_alloc_device() error paths
      ...
    6f51ab94
mtdcore.c 58.8 KB