* [GIT PULL] mtd: nand: Changes for 5.8
@ 2020-05-31 9:18 Miquel Raynal
2020-06-01 18:42 ` Richard Weinberger
0 siblings, 1 reply; 2+ messages in thread
From: Miquel Raynal @ 2020-05-31 9:18 UTC (permalink / raw)
To: Richard Weinberger
Cc: linux-mtd, Vignesh Raghavendra, Frieder Schrempf, Tudor Ambarus
Hi Richard,
This is the NAND PR for 5.8.
I just updated it this morning to fix an issue reported by a build robot
in a !COMPILE_TEST driver due to some recent cleanup.
Thanks,
Miquèl
The following changes since commit 6a8b55ed4056ea5559ebe4f6a4b247f627870d4c:
Linux 5.7-rc3 (2020-04-26 13:51:02 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/nand/for-5.8
for you to fetch changes up to 86f2b225adf4ecd2edfdc8541a7342645556ac3b:
mtd: rawnand: Add an invalid ECC mode to discriminate with valid ones (2020-05-31 10:53:41 +0200)
----------------------------------------------------------------
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).
----------------------------------------------------------------
Boris Brezillon (34):
mtd: rawnand: Take check_only into account
mtd: rawnand: au1550nd: Stop using IO_ADDR_{R, W} in au_{read, write}_buf[16]()
mtd: rawnand: au1550nd: Implement exec_op()
mtd: rawnand: au1550nd: Get rid of the legacy interface implementation
mtd: rawnand: au1550nd: Patch the read/write buf helper prototypes
mtd: rawnand: cs553x: Declare controllers instead of NAND chips
mtd: rawnand: cs553x: Stop using chip->legacy.IO_ADDR_{R, W}
mtd: rawnand: cs553x: Implement exec_op()
mtd: rawnand: cs553x: Get rid of the legacy interface implementation
mtd: rawnand: toshiba: Add a specific init for TC58TEG5DCLTA00
mtd: rawnand: Define the "distance 3" MLC pairing scheme
mtd: rawnand: toshiba: Set the pairing scheme for TC58TEG5DCLTA00
mtd: Add support for emulated SLC mode on MLC NANDs
dt-bindings: mtd: partition: Document the slc-mode property
mtd: partitions: ofpart: Parse the slc-mode property
mtd: cmdlinepart: Add an slc option to use SLC mode on a part
ubi: Relax the 'no MLC' rule and allow MLCs operating in SLC mode
mtd: rawnand: Add a NAND_NO_BBM_QUIRK flag
mtd: rawnand: cafe: Set the NAND_NO_BBM_QUIRK flag
mtd: rawnand: diskonchip: Set the NAND_NO_BBM_QUIRK flag
mtd: rawnand: diskonchip: Make sure doc2001plus_readbuf() works for single byte reads
mtd: rawnand: diskonchip: Get rid of doc2000_readbuf_dword()
mtd: rawnand: diskonchip: Inherit from nand_controller
mtd: rawnand: diskonchip: Implement exec_op()
mtd: rawnand: diskonchip: Get rid of the legacy interface implementation
mtd: rawnand: Propage CS selection to sub operations
mtd: rawnand: davinci: Inherit from nand_controller
mtd: rawnand: davinci: Stop using nand_chip.legacy.IO_ADDR_{R, W}
mtd: rawnand: davinci: Implement exec_op()
mtd: rawnand: davinci: Get rid of the legacy interface implementation
mtd: rawnand: Fix nand_gpio_waitrdy()
mtd: rawnand: Remove the cmx270 NAND controller driver
mtd: rawnand: ingenic: Fix the RB gpio active-high property on qi, lb60
mtd: rawnand: ingenic: Convert the driver to exec_op()
Christophe Kerello (5):
mtd: rawnand: stm32_fmc2: manage all errors cases at probe time
mtd: rawnand: stm32_fmc2: remove useless inline comments
mtd: rawnand: stm32_fmc2: use FMC2_TIMEOUT_MS for timeouts
mtd: rawnand: stm32_fmc2: cosmetic change to use nfc instead of fmc2 where relevant
mtd: rawnand: stm32_fmc2: use FIELD_PREP/FIELD_GET macros
Dinghao Liu (3):
mtd: rawnand: gpmi: Fix runtime PM imbalance on error
mtd: rawnand: gpmi: Fix runtime PM imbalance in gpmi_nand_probe
mtd: rawnand: omap_elm: Fix runtime PM imbalance on error
Fenghua Yu (1):
mtd: rawnand: fsmc: Change to non-atomic bit operations
Masahiro Yamada (1):
mtd: rawnand: denali: add more delays before latching incoming data
Miquel Raynal (124):
mtd: rawnand: Give more information about the ECC weakness
mtd: rawnand: marvell: Fix the condition on a return code
mtd: rawnand: marvell: Use devm_platform_ioremap_res()
mtd: rawnand: marvell: Use nand_cleanup() when the device is not yet registered
mtd: rawnand: marvell: Fix probe error path
mtd: rawnand: marvell: Rename a function to clarify
mtd: rawnand: marvell: Rename the ->correct() function
mtd: rawnand: timings: Add mode information to the timings structure
mtd: rawnand: timings: Fix default tR_max and tCCS_min timings
mtd: rawnand: onfi: Fix redundancy detection check
mtd: rawnand: onfi: Use intermediate variables to improve readability
mtd: rawnand: onfi: Define the number of parameter pages
mtd: rawnand: onfi: Avoid doing a copy of the parameter page
mtd: rawnand: onfi: Drop a useless parameter page read
mtd: rawnand: jedec: Define the number of parameter pages
mtd: rawnand: jedec: Use intermediate variables to improve readability
mtd: rawnand: Translate obscure bitfields into readable macros
mtd: rawnand: Reorder the nand_chip->options flags
mtd: rawnand: Rename a NAND chip option
mtd: rawnand: Fix comments about the use of bufpoi
mtd: rawnand: Rename the use_bufpoi variables
mtd: rawnand: Avoid indirect access to ->data_buf()
mtd: rawnand: Add a helper to check supported operations
mtd: rawnand: Give the possibility to verify a read operation is supported
mtd: rawnand: onfi: Adapt the parameter page read to constraint controllers
mtd: rawnand: jedec: Adapt the parameter page read to constraint controllers
mtd: rawnand: Expose monolithic read/write_page_raw() helpers
mtd: rawnand: Allow controllers to overload soft ECC hooks
mtd: rawnand: micron: Allow controllers to overload raw accessors
MAINTAINERS: Remove Piotr Sroka and mark Cadence NFC as orphaned
MAINTAINERS: Remove Xiaolei Li and mark MTK NFC as orphaned
mtd: rawnand: micron: Adapt the PAGE READ flow to constraint controllers
lib/bch: Rework a little bit the exported function names
lib/bch: Allow easy bit swapping
mtd: rawnand: Ensure the number of bitflips is consistent
mtd: rawnand: Add nand_extract_bits()
MAINTAINERS: Add Arasan NAND controller and bindings
dt-bindings: mtd: Document ARASAN NAND bindings
mtd: rawnand: arasan: Add new Arasan NAND controller
mtd: rawnand: arasan: Support the hardware BCH ECC engine
mtd: rawnand: ams-delta: Stop using nand_release()
mtd: rawnand: au1550nd: Stop using nand_release()
mtd: rawnand: bcm47xx: Stop using nand_release()
mtd: rawnand: brcmnand: Stop using nand_release()
mtd: rawnand: cadence: Stop using nand_release()
mtd: rawnand: cafe: Stop using nand_release()
mtd: rawnand: cs553x: Stop using nand_release()
mtd: rawnand: davinci: Stop using nand_release()
mtd: rawnand: denali: Delete items from the list in the _remove() path
mtd: rawnand: denali: Stop using nand_release()
mtd: rawnand: diskonchip: Fix the probe error path
mtd: rawnand: diskonchip: Stop using nand_release()
mtd: rawnand: fsl_elbc: Stop using nand_release()
mtd: rawnand: fsl_ifc: Stop using nand_release()
mtd: rawnand: fsl_upm: Stop using nand_release()
mtd: rawnand: fsmc: Stop using nand_release()
mtd: rawnand: gpio: Stop using nand_release()
mtd: rawnand: gpmi: Stop using nand_release()
mtd: rawnand: hisi504: Stop using nand_release()
mtd: rawnand: ingenic: Fix the probe error path
mtd: rawnand: ingenic: Stop using nand_release()
mtd: rawnand: lpc32xx_mlc: Stop using nand_release()
mtd: rawnand: lpc32xx_slc: Stop using nand_release()
mtd: rawnand: marvell: Stop using nand_release()
mtd: rawnand: mpc5121: Stop using nand_release()
mtd: rawnand: mtk: Fix the probe error path
mtd: rawnand: mtk: Stop using nand_release()
mtd: rawnand: mxc: Stop using nand_release()
mtd: rawnand: mxic: Stop using nand_release()
mtd: rawnand: ndfc: Stop using nand_release()
mtd: rawnand: omap2: Stop using nand_release()
mtd: rawnand: orion: Fix the probe error path
mtd: rawnand: orion: Stop using nand_release()
mtd: rawnand: oxnas: Keep track of registered devices
mtd: rawnand: oxnas: Fix the probe error path
mtd: rawnand: oxnas: Unregister all devices on error
mtd: rawnand: oxnas: Release all devices in the _remove() path
mtd: rawnand: oxnas: Stop using nand_release()
mtd: rawnand: pasemi: Fix the probe error path
mtd: rawnand: pasemi: Stop using nand_release()
mtd: rawnand: plat_nand: Fix the probe error path
mtd: rawnand: plat_nand: Stop using nand_release()
mtd: rawnand: qcom: Stop using nand_release()
mtd: rawnand: r852: Stop using nand_release()
mtd: rawnand: s3c2410: Stop using nand_release()
mtd: rawnand: sh_flctl: Stop using nand_release()
mtd: rawnand: sharpsl: Fix the probe error path
mtd: rawnand: sharpsl: Stop using nand_release()
mtd: rawnand: socrates: Fix the probe error path
mtd: rawnand: socrates: Stop using nand_release()
mtd: rawnand: stm32_fmc2: Stop using nand_release()
mtd: rawnand: sunxi: Fix the probe error path
mtd: rawnand: sunxi: Stop using nand_release()
mtd: rawnand: tango: Stop using nand_release()
mtd: rawnand: tmio: Fix the probe error path
mtd: rawnand: tmio: Stop using nand_release()
mtd: rawnand: txx9ndfmc: Stop using nand_release()
mtd: rawnand: vf610: Stop using nand_release()
mtd: rawnand: xway: Fix the probe error path
mtd: rawnand: xway: Stop using nand_release()
mtd: rawnand: gpmi: Use nand_extract_bits()
mtd: rawnand: nandsim: Consistent use of 'ns' instead of 'dev'
mtd: rawnand: nandsim: Use octal permissions
mtd: rawnand: nandsim: Use a consistent ns_ prefix for all functions
mtd: rawnand: nandsim: Clean error handling
mtd: rawnand: nandsim: Keep track of the created debugfs entries
mtd: rawnand: nandsim: Remove debugfs entries at unload time
mtd: rawnand: nandsim: Fix the two ns_alloc_device() error paths
mtd: rawnand: nandsim: Free partition names on error in ns_init()
mtd: rawnand: nandsim: Free the allocated device on error in ns_init()
mtd: rawnand: nandsim: Free the partition names in ns_free()
mtd: rawnand: nandsim: Stop using nand_release()
mtd: rawnand: nandsim: Use an additional label when freeing the nandsim object
mtd: rawnand: nandsim: Free erase_block_wear on error
mtd: rawnand: nandsim: Fix the label pointing on nand_cleanup()
mtd: rawnand: nandsim: Manage lists on error in ns_init_module()
mtd: rawnand: nandsim: Rename a label in ns_init_module()
mtd: rawnand: nandsim: Reorganize ns_cleanup_module()
mtd: rawnand: Stop using nand_release()
mtd: Fix typo in mtd_ooblayout_set_databytes() description
mtd: rawnand: Avoid a typedef
mtd: rawnand: Drop OOB_FIRST placement scheme
mtd: rawnand: Return an enum from of_get_nand_ecc_algo()
mtd: rawnand: Add an invalid ECC mode to discriminate with valid ones
YueHaibing (3):
mtd: rawnand: ingenic: Make qi_lb60_ooblayout_ops static
mtd: rawnand: cadence: Make cadence_nand_attach_chip static
mtd: rawnand: brcmnand: Remove unused including <linux/version.h>
Álvaro Fernández Rojas (8):
mtd: rawnand: brcmnand: fix hamming oob layout
mtd: rawnand: brcmnand: improve hamming oob layout
mtd: rawnand: brcmnand: correctly verify erased pages
mtd: rawnand: brcmnand: rename v4 registers
mtd: rawnand: brcmnand: fix CS0 layout
mtd: rawnand: brcmnand: rename page sizes
dt-bindings: mtd: brcmnand: add v2.1 and v2.2 support
mtd: rawnand: brcmnand: support v2.1-v2.2 controllers
Documentation/devicetree/bindings/mtd/arasan,nand-controller.yaml | 63 ++++++++
Documentation/devicetree/bindings/mtd/brcm,brcmnand.txt | 2 +
Documentation/devicetree/bindings/mtd/partition.txt | 3 +
Documentation/driver-api/mtdnand.rst | 6 +-
MAINTAINERS | 13 +-
drivers/mtd/devices/docg3.c | 10 +-
drivers/mtd/mtdcore.c | 191 +++++++++++++++++++++--
drivers/mtd/mtdpart.c | 54 ++++---
drivers/mtd/nand/raw/Kconfig | 12 +-
drivers/mtd/nand/raw/Makefile | 2 +-
drivers/mtd/nand/raw/ams-delta.c | 5 +-
drivers/mtd/nand/raw/arasan-nand-controller.c | 1297 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
drivers/mtd/nand/raw/atmel/nand-controller.c | 2 +-
drivers/mtd/nand/raw/au1550nd.c | 417 +++++++++++++++++--------------------------------
drivers/mtd/nand/raw/bcm47xxnflash/main.c | 6 +-
drivers/mtd/nand/raw/brcmnand/brcmnand.c | 164 +++++++++++++------
drivers/mtd/nand/raw/cadence-nand-controller.c | 17 +-
drivers/mtd/nand/raw/cafe_nand.c | 16 +-
drivers/mtd/nand/raw/cmx270_nand.c | 236 ----------------------------
drivers/mtd/nand/raw/cs553x_nand.c | 199 ++++++++++++++++--------
drivers/mtd/nand/raw/davinci_nand.c | 324 +++++++++++++++++++++++---------------
drivers/mtd/nand/raw/denali.c | 60 +++++--
drivers/mtd/nand/raw/diskonchip.c | 497 ++++++++++++++++++++++------------------------------------
drivers/mtd/nand/raw/fsl_elbc_nand.c | 7 +-
drivers/mtd/nand/raw/fsl_ifc_nand.c | 7 +-
drivers/mtd/nand/raw/fsl_upm.c | 9 +-
drivers/mtd/nand/raw/fsmc_nand.c | 19 ++-
drivers/mtd/nand/raw/gpio.c | 6 +-
drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c | 189 +++-------------------
drivers/mtd/nand/raw/hisi504_nand.c | 6 +-
drivers/mtd/nand/raw/ingenic/ingenic_nand_drv.c | 170 ++++++++++++--------
drivers/mtd/nand/raw/internals.h | 12 ++
drivers/mtd/nand/raw/lpc32xx_mlc.c | 7 +-
drivers/mtd/nand/raw/lpc32xx_slc.c | 6 +-
drivers/mtd/nand/raw/marvell_nand.c | 68 ++++----
drivers/mtd/nand/raw/meson_nand.c | 5 +-
drivers/mtd/nand/raw/mpc5121_nfc.c | 5 +-
drivers/mtd/nand/raw/mtk_nand.c | 19 ++-
drivers/mtd/nand/raw/mxc_nand.c | 6 +-
drivers/mtd/nand/raw/mxic_nand.c | 10 +-
drivers/mtd/nand/raw/nand_base.c | 445 ++++++++++++++++++++++++++++++++--------------------
drivers/mtd/nand/raw/nand_bch.c | 10 +-
drivers/mtd/nand/raw/nand_jedec.c | 30 ++--
drivers/mtd/nand/raw/nand_legacy.c | 8 +-
drivers/mtd/nand/raw/nand_micron.c | 65 ++++++--
drivers/mtd/nand/raw/nand_onfi.c | 69 ++++----
drivers/mtd/nand/raw/nand_timings.c | 11 +-
drivers/mtd/nand/raw/nand_toshiba.c | 14 ++
drivers/mtd/nand/raw/nandsim.c | 440 +++++++++++++++++++++++++++++----------------------
drivers/mtd/nand/raw/ndfc.c | 8 +-
drivers/mtd/nand/raw/omap2.c | 8 +-
drivers/mtd/nand/raw/omap_elm.c | 1 +
drivers/mtd/nand/raw/orion_nand.c | 8 +-
drivers/mtd/nand/raw/oxnas_nand.c | 33 ++--
drivers/mtd/nand/raw/pasemi_nand.c | 9 +-
drivers/mtd/nand/raw/plat_nand.c | 8 +-
drivers/mtd/nand/raw/qcom_nandc.c | 13 +-
drivers/mtd/nand/raw/r852.c | 6 +-
drivers/mtd/nand/raw/s3c2410.c | 3 +-
drivers/mtd/nand/raw/sh_flctl.c | 6 +-
drivers/mtd/nand/raw/sharpsl.c | 14 +-
drivers/mtd/nand/raw/socrates_nand.c | 8 +-
drivers/mtd/nand/raw/stm32_fmc2_nand.c | 1065 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------
drivers/mtd/nand/raw/sunxi_nand.c | 16 +-
drivers/mtd/nand/raw/tango_nand.c | 13 +-
drivers/mtd/nand/raw/tegra_nand.c | 6 +-
drivers/mtd/nand/raw/tmio_nand.c | 8 +-
drivers/mtd/nand/raw/txx9ndfmc.c | 6 +-
drivers/mtd/nand/raw/vf610_nfc.c | 10 +-
drivers/mtd/nand/raw/xway_nand.c | 8 +-
drivers/mtd/parsers/cmdlinepart.c | 12 +-
drivers/mtd/parsers/ofpart.c | 3 +
drivers/mtd/ubi/build.c | 5 +-
include/linux/bch.h | 11 +-
include/linux/mtd/bbm.h | 2 +-
include/linux/mtd/mtd.h | 7 +-
include/linux/mtd/partitions.h | 2 +
include/linux/mtd/rawnand.h | 133 +++++++++-------
include/linux/platform_data/mtd-davinci.h | 2 +-
include/linux/platform_data/mtd-nand-s3c2410.h | 2 +-
include/uapi/mtd/mtd-abi.h | 1 +
lib/bch.c | 152 ++++++++++++------
82 files changed, 4275 insertions(+), 2553 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mtd/arasan,nand-controller.yaml
create mode 100644 drivers/mtd/nand/raw/arasan-nand-controller.c
delete mode 100644 drivers/mtd/nand/raw/cmx270_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.8
2020-05-31 9:18 [GIT PULL] mtd: nand: Changes for 5.8 Miquel Raynal
@ 2020-06-01 18:42 ` Richard Weinberger
0 siblings, 0 replies; 2+ messages in thread
From: Richard Weinberger @ 2020-06-01 18:42 UTC (permalink / raw)
To: Miquel Raynal
Cc: Richard Weinberger, linux-mtd, Vignesh Raghavendra,
Frieder Schrempf, Tudor Ambarus
On Sun, May 31, 2020 at 11:18 AM Miquel Raynal
<miquel.raynal@bootlin.com> wrote:
>
> Hi Richard,
>
> This is the NAND PR for 5.8.
>
> I just updated it this morning to fix an issue reported by a build robot
> in a !COMPILE_TEST driver due to some recent cleanup.
>
> Thanks,
> Miquèl
>
>
> The following changes since commit 6a8b55ed4056ea5559ebe4f6a4b247f627870d4c:
>
> Linux 5.7-rc3 (2020-04-26 13:51:02 -0700)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/nand/for-5.8
>
> for you to fetch changes up to 86f2b225adf4ecd2edfdc8541a7342645556ac3b:
>
> mtd: rawnand: Add an invalid ECC mode to discriminate with valid ones (2020-05-31 10:53:41 +0200)
>
> ----------------------------------------------------------------
> 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).
>
> ----------------------------------------------------------------
> Boris Brezillon (34):
> mtd: rawnand: Take check_only into account
> mtd: rawnand: au1550nd: Stop using IO_ADDR_{R, W} in au_{read, write}_buf[16]()
> mtd: rawnand: au1550nd: Implement exec_op()
> mtd: rawnand: au1550nd: Get rid of the legacy interface implementation
> mtd: rawnand: au1550nd: Patch the read/write buf helper prototypes
> mtd: rawnand: cs553x: Declare controllers instead of NAND chips
> mtd: rawnand: cs553x: Stop using chip->legacy.IO_ADDR_{R, W}
> mtd: rawnand: cs553x: Implement exec_op()
> mtd: rawnand: cs553x: Get rid of the legacy interface implementation
> mtd: rawnand: toshiba: Add a specific init for TC58TEG5DCLTA00
> mtd: rawnand: Define the "distance 3" MLC pairing scheme
> mtd: rawnand: toshiba: Set the pairing scheme for TC58TEG5DCLTA00
> mtd: Add support for emulated SLC mode on MLC NANDs
> dt-bindings: mtd: partition: Document the slc-mode property
> mtd: partitions: ofpart: Parse the slc-mode property
> mtd: cmdlinepart: Add an slc option to use SLC mode on a part
> ubi: Relax the 'no MLC' rule and allow MLCs operating in SLC mode
> mtd: rawnand: Add a NAND_NO_BBM_QUIRK flag
> mtd: rawnand: cafe: Set the NAND_NO_BBM_QUIRK flag
> mtd: rawnand: diskonchip: Set the NAND_NO_BBM_QUIRK flag
> mtd: rawnand: diskonchip: Make sure doc2001plus_readbuf() works for single byte reads
> mtd: rawnand: diskonchip: Get rid of doc2000_readbuf_dword()
> mtd: rawnand: diskonchip: Inherit from nand_controller
> mtd: rawnand: diskonchip: Implement exec_op()
> mtd: rawnand: diskonchip: Get rid of the legacy interface implementation
> mtd: rawnand: Propage CS selection to sub operations
> mtd: rawnand: davinci: Inherit from nand_controller
> mtd: rawnand: davinci: Stop using nand_chip.legacy.IO_ADDR_{R, W}
> mtd: rawnand: davinci: Implement exec_op()
> mtd: rawnand: davinci: Get rid of the legacy interface implementation
> mtd: rawnand: Fix nand_gpio_waitrdy()
> mtd: rawnand: Remove the cmx270 NAND controller driver
> mtd: rawnand: ingenic: Fix the RB gpio active-high property on qi, lb60
> mtd: rawnand: ingenic: Convert the driver to exec_op()
>
> Christophe Kerello (5):
> mtd: rawnand: stm32_fmc2: manage all errors cases at probe time
> mtd: rawnand: stm32_fmc2: remove useless inline comments
> mtd: rawnand: stm32_fmc2: use FMC2_TIMEOUT_MS for timeouts
> mtd: rawnand: stm32_fmc2: cosmetic change to use nfc instead of fmc2 where relevant
> mtd: rawnand: stm32_fmc2: use FIELD_PREP/FIELD_GET macros
>
> Dinghao Liu (3):
> mtd: rawnand: gpmi: Fix runtime PM imbalance on error
> mtd: rawnand: gpmi: Fix runtime PM imbalance in gpmi_nand_probe
> mtd: rawnand: omap_elm: Fix runtime PM imbalance on error
>
> Fenghua Yu (1):
> mtd: rawnand: fsmc: Change to non-atomic bit operations
>
> Masahiro Yamada (1):
> mtd: rawnand: denali: add more delays before latching incoming data
>
> Miquel Raynal (124):
> mtd: rawnand: Give more information about the ECC weakness
> mtd: rawnand: marvell: Fix the condition on a return code
> mtd: rawnand: marvell: Use devm_platform_ioremap_res()
> mtd: rawnand: marvell: Use nand_cleanup() when the device is not yet registered
> mtd: rawnand: marvell: Fix probe error path
> mtd: rawnand: marvell: Rename a function to clarify
> mtd: rawnand: marvell: Rename the ->correct() function
> mtd: rawnand: timings: Add mode information to the timings structure
> mtd: rawnand: timings: Fix default tR_max and tCCS_min timings
> mtd: rawnand: onfi: Fix redundancy detection check
> mtd: rawnand: onfi: Use intermediate variables to improve readability
> mtd: rawnand: onfi: Define the number of parameter pages
> mtd: rawnand: onfi: Avoid doing a copy of the parameter page
> mtd: rawnand: onfi: Drop a useless parameter page read
> mtd: rawnand: jedec: Define the number of parameter pages
> mtd: rawnand: jedec: Use intermediate variables to improve readability
> mtd: rawnand: Translate obscure bitfields into readable macros
> mtd: rawnand: Reorder the nand_chip->options flags
> mtd: rawnand: Rename a NAND chip option
> mtd: rawnand: Fix comments about the use of bufpoi
> mtd: rawnand: Rename the use_bufpoi variables
> mtd: rawnand: Avoid indirect access to ->data_buf()
> mtd: rawnand: Add a helper to check supported operations
> mtd: rawnand: Give the possibility to verify a read operation is supported
> mtd: rawnand: onfi: Adapt the parameter page read to constraint controllers
> mtd: rawnand: jedec: Adapt the parameter page read to constraint controllers
> mtd: rawnand: Expose monolithic read/write_page_raw() helpers
> mtd: rawnand: Allow controllers to overload soft ECC hooks
> mtd: rawnand: micron: Allow controllers to overload raw accessors
> MAINTAINERS: Remove Piotr Sroka and mark Cadence NFC as orphaned
> MAINTAINERS: Remove Xiaolei Li and mark MTK NFC as orphaned
> mtd: rawnand: micron: Adapt the PAGE READ flow to constraint controllers
> lib/bch: Rework a little bit the exported function names
> lib/bch: Allow easy bit swapping
> mtd: rawnand: Ensure the number of bitflips is consistent
> mtd: rawnand: Add nand_extract_bits()
> MAINTAINERS: Add Arasan NAND controller and bindings
> dt-bindings: mtd: Document ARASAN NAND bindings
> mtd: rawnand: arasan: Add new Arasan NAND controller
> mtd: rawnand: arasan: Support the hardware BCH ECC engine
> mtd: rawnand: ams-delta: Stop using nand_release()
> mtd: rawnand: au1550nd: Stop using nand_release()
> mtd: rawnand: bcm47xx: Stop using nand_release()
> mtd: rawnand: brcmnand: Stop using nand_release()
> mtd: rawnand: cadence: Stop using nand_release()
> mtd: rawnand: cafe: Stop using nand_release()
> mtd: rawnand: cs553x: Stop using nand_release()
> mtd: rawnand: davinci: Stop using nand_release()
> mtd: rawnand: denali: Delete items from the list in the _remove() path
> mtd: rawnand: denali: Stop using nand_release()
> mtd: rawnand: diskonchip: Fix the probe error path
> mtd: rawnand: diskonchip: Stop using nand_release()
> mtd: rawnand: fsl_elbc: Stop using nand_release()
> mtd: rawnand: fsl_ifc: Stop using nand_release()
> mtd: rawnand: fsl_upm: Stop using nand_release()
> mtd: rawnand: fsmc: Stop using nand_release()
> mtd: rawnand: gpio: Stop using nand_release()
> mtd: rawnand: gpmi: Stop using nand_release()
> mtd: rawnand: hisi504: Stop using nand_release()
> mtd: rawnand: ingenic: Fix the probe error path
> mtd: rawnand: ingenic: Stop using nand_release()
> mtd: rawnand: lpc32xx_mlc: Stop using nand_release()
> mtd: rawnand: lpc32xx_slc: Stop using nand_release()
> mtd: rawnand: marvell: Stop using nand_release()
> mtd: rawnand: mpc5121: Stop using nand_release()
> mtd: rawnand: mtk: Fix the probe error path
> mtd: rawnand: mtk: Stop using nand_release()
> mtd: rawnand: mxc: Stop using nand_release()
> mtd: rawnand: mxic: Stop using nand_release()
> mtd: rawnand: ndfc: Stop using nand_release()
> mtd: rawnand: omap2: Stop using nand_release()
> mtd: rawnand: orion: Fix the probe error path
> mtd: rawnand: orion: Stop using nand_release()
> mtd: rawnand: oxnas: Keep track of registered devices
> mtd: rawnand: oxnas: Fix the probe error path
> mtd: rawnand: oxnas: Unregister all devices on error
> mtd: rawnand: oxnas: Release all devices in the _remove() path
> mtd: rawnand: oxnas: Stop using nand_release()
> mtd: rawnand: pasemi: Fix the probe error path
> mtd: rawnand: pasemi: Stop using nand_release()
> mtd: rawnand: plat_nand: Fix the probe error path
> mtd: rawnand: plat_nand: Stop using nand_release()
> mtd: rawnand: qcom: Stop using nand_release()
> mtd: rawnand: r852: Stop using nand_release()
> mtd: rawnand: s3c2410: Stop using nand_release()
> mtd: rawnand: sh_flctl: Stop using nand_release()
> mtd: rawnand: sharpsl: Fix the probe error path
> mtd: rawnand: sharpsl: Stop using nand_release()
> mtd: rawnand: socrates: Fix the probe error path
> mtd: rawnand: socrates: Stop using nand_release()
> mtd: rawnand: stm32_fmc2: Stop using nand_release()
> mtd: rawnand: sunxi: Fix the probe error path
> mtd: rawnand: sunxi: Stop using nand_release()
> mtd: rawnand: tango: Stop using nand_release()
> mtd: rawnand: tmio: Fix the probe error path
> mtd: rawnand: tmio: Stop using nand_release()
> mtd: rawnand: txx9ndfmc: Stop using nand_release()
> mtd: rawnand: vf610: Stop using nand_release()
> mtd: rawnand: xway: Fix the probe error path
> mtd: rawnand: xway: Stop using nand_release()
> mtd: rawnand: gpmi: Use nand_extract_bits()
> mtd: rawnand: nandsim: Consistent use of 'ns' instead of 'dev'
> mtd: rawnand: nandsim: Use octal permissions
> mtd: rawnand: nandsim: Use a consistent ns_ prefix for all functions
> mtd: rawnand: nandsim: Clean error handling
> mtd: rawnand: nandsim: Keep track of the created debugfs entries
> mtd: rawnand: nandsim: Remove debugfs entries at unload time
> mtd: rawnand: nandsim: Fix the two ns_alloc_device() error paths
> mtd: rawnand: nandsim: Free partition names on error in ns_init()
> mtd: rawnand: nandsim: Free the allocated device on error in ns_init()
> mtd: rawnand: nandsim: Free the partition names in ns_free()
> mtd: rawnand: nandsim: Stop using nand_release()
> mtd: rawnand: nandsim: Use an additional label when freeing the nandsim object
> mtd: rawnand: nandsim: Free erase_block_wear on error
> mtd: rawnand: nandsim: Fix the label pointing on nand_cleanup()
> mtd: rawnand: nandsim: Manage lists on error in ns_init_module()
> mtd: rawnand: nandsim: Rename a label in ns_init_module()
> mtd: rawnand: nandsim: Reorganize ns_cleanup_module()
> mtd: rawnand: Stop using nand_release()
> mtd: Fix typo in mtd_ooblayout_set_databytes() description
> mtd: rawnand: Avoid a typedef
> mtd: rawnand: Drop OOB_FIRST placement scheme
> mtd: rawnand: Return an enum from of_get_nand_ecc_algo()
> mtd: rawnand: Add an invalid ECC mode to discriminate with valid ones
>
> YueHaibing (3):
> mtd: rawnand: ingenic: Make qi_lb60_ooblayout_ops static
> mtd: rawnand: cadence: Make cadence_nand_attach_chip static
> mtd: rawnand: brcmnand: Remove unused including <linux/version.h>
>
> Álvaro Fernández Rojas (8):
> mtd: rawnand: brcmnand: fix hamming oob layout
> mtd: rawnand: brcmnand: improve hamming oob layout
> mtd: rawnand: brcmnand: correctly verify erased pages
> mtd: rawnand: brcmnand: rename v4 registers
> mtd: rawnand: brcmnand: fix CS0 layout
> mtd: rawnand: brcmnand: rename page sizes
> dt-bindings: mtd: brcmnand: add v2.1 and v2.2 support
> mtd: rawnand: brcmnand: support v2.1-v2.2 controllers
>
> Documentation/devicetree/bindings/mtd/arasan,nand-controller.yaml | 63 ++++++++
> Documentation/devicetree/bindings/mtd/brcm,brcmnand.txt | 2 +
> Documentation/devicetree/bindings/mtd/partition.txt | 3 +
> Documentation/driver-api/mtdnand.rst | 6 +-
> MAINTAINERS | 13 +-
> drivers/mtd/devices/docg3.c | 10 +-
> drivers/mtd/mtdcore.c | 191 +++++++++++++++++++++--
> drivers/mtd/mtdpart.c | 54 ++++---
> drivers/mtd/nand/raw/Kconfig | 12 +-
> drivers/mtd/nand/raw/Makefile | 2 +-
> drivers/mtd/nand/raw/ams-delta.c | 5 +-
> drivers/mtd/nand/raw/arasan-nand-controller.c | 1297 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> drivers/mtd/nand/raw/atmel/nand-controller.c | 2 +-
> drivers/mtd/nand/raw/au1550nd.c | 417 +++++++++++++++++--------------------------------
> drivers/mtd/nand/raw/bcm47xxnflash/main.c | 6 +-
> drivers/mtd/nand/raw/brcmnand/brcmnand.c | 164 +++++++++++++------
> drivers/mtd/nand/raw/cadence-nand-controller.c | 17 +-
> drivers/mtd/nand/raw/cafe_nand.c | 16 +-
> drivers/mtd/nand/raw/cmx270_nand.c | 236 ----------------------------
> drivers/mtd/nand/raw/cs553x_nand.c | 199 ++++++++++++++++--------
> drivers/mtd/nand/raw/davinci_nand.c | 324 +++++++++++++++++++++++---------------
> drivers/mtd/nand/raw/denali.c | 60 +++++--
> drivers/mtd/nand/raw/diskonchip.c | 497 ++++++++++++++++++++++------------------------------------
> drivers/mtd/nand/raw/fsl_elbc_nand.c | 7 +-
> drivers/mtd/nand/raw/fsl_ifc_nand.c | 7 +-
> drivers/mtd/nand/raw/fsl_upm.c | 9 +-
> drivers/mtd/nand/raw/fsmc_nand.c | 19 ++-
> drivers/mtd/nand/raw/gpio.c | 6 +-
> drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c | 189 +++-------------------
> drivers/mtd/nand/raw/hisi504_nand.c | 6 +-
> drivers/mtd/nand/raw/ingenic/ingenic_nand_drv.c | 170 ++++++++++++--------
> drivers/mtd/nand/raw/internals.h | 12 ++
> drivers/mtd/nand/raw/lpc32xx_mlc.c | 7 +-
> drivers/mtd/nand/raw/lpc32xx_slc.c | 6 +-
> drivers/mtd/nand/raw/marvell_nand.c | 68 ++++----
> drivers/mtd/nand/raw/meson_nand.c | 5 +-
> drivers/mtd/nand/raw/mpc5121_nfc.c | 5 +-
> drivers/mtd/nand/raw/mtk_nand.c | 19 ++-
> drivers/mtd/nand/raw/mxc_nand.c | 6 +-
> drivers/mtd/nand/raw/mxic_nand.c | 10 +-
> drivers/mtd/nand/raw/nand_base.c | 445 ++++++++++++++++++++++++++++++++--------------------
> drivers/mtd/nand/raw/nand_bch.c | 10 +-
> drivers/mtd/nand/raw/nand_jedec.c | 30 ++--
> drivers/mtd/nand/raw/nand_legacy.c | 8 +-
> drivers/mtd/nand/raw/nand_micron.c | 65 ++++++--
> drivers/mtd/nand/raw/nand_onfi.c | 69 ++++----
> drivers/mtd/nand/raw/nand_timings.c | 11 +-
> drivers/mtd/nand/raw/nand_toshiba.c | 14 ++
> drivers/mtd/nand/raw/nandsim.c | 440 +++++++++++++++++++++++++++++----------------------
> drivers/mtd/nand/raw/ndfc.c | 8 +-
> drivers/mtd/nand/raw/omap2.c | 8 +-
> drivers/mtd/nand/raw/omap_elm.c | 1 +
> drivers/mtd/nand/raw/orion_nand.c | 8 +-
> drivers/mtd/nand/raw/oxnas_nand.c | 33 ++--
> drivers/mtd/nand/raw/pasemi_nand.c | 9 +-
> drivers/mtd/nand/raw/plat_nand.c | 8 +-
> drivers/mtd/nand/raw/qcom_nandc.c | 13 +-
> drivers/mtd/nand/raw/r852.c | 6 +-
> drivers/mtd/nand/raw/s3c2410.c | 3 +-
> drivers/mtd/nand/raw/sh_flctl.c | 6 +-
> drivers/mtd/nand/raw/sharpsl.c | 14 +-
> drivers/mtd/nand/raw/socrates_nand.c | 8 +-
> drivers/mtd/nand/raw/stm32_fmc2_nand.c | 1065 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------
> drivers/mtd/nand/raw/sunxi_nand.c | 16 +-
> drivers/mtd/nand/raw/tango_nand.c | 13 +-
> drivers/mtd/nand/raw/tegra_nand.c | 6 +-
> drivers/mtd/nand/raw/tmio_nand.c | 8 +-
> drivers/mtd/nand/raw/txx9ndfmc.c | 6 +-
> drivers/mtd/nand/raw/vf610_nfc.c | 10 +-
> drivers/mtd/nand/raw/xway_nand.c | 8 +-
> drivers/mtd/parsers/cmdlinepart.c | 12 +-
> drivers/mtd/parsers/ofpart.c | 3 +
> drivers/mtd/ubi/build.c | 5 +-
> include/linux/bch.h | 11 +-
> include/linux/mtd/bbm.h | 2 +-
> include/linux/mtd/mtd.h | 7 +-
> include/linux/mtd/partitions.h | 2 +
> include/linux/mtd/rawnand.h | 133 +++++++++-------
> include/linux/platform_data/mtd-davinci.h | 2 +-
> include/linux/platform_data/mtd-nand-s3c2410.h | 2 +-
> include/uapi/mtd/mtd-abi.h | 1 +
> lib/bch.c | 152 ++++++++++++------
> 82 files changed, 4275 insertions(+), 2553 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/mtd/arasan,nand-controller.yaml
> create mode 100644 drivers/mtd/nand/raw/arasan-nand-controller.c
> delete mode 100644 drivers/mtd/nand/raw/cmx270_nand.c
Pulled, thanks!
--
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:[~2020-06-01 18:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-31 9:18 [GIT PULL] mtd: nand: Changes for 5.8 Miquel Raynal
2020-06-01 18:42 ` 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).