Commit a8dfb61d authored by Richard Weinberger's avatar Richard Weinberger
Browse files

Merge tag 'nand/for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux into mtd/next

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).
parents 3d77e6a8 86f2b225
Loading
Loading
Loading
Loading
+63 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mtd/arasan,nand-controller.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Arasan NAND Flash Controller with ONFI 3.1 support device tree bindings

allOf:
  - $ref: "nand-controller.yaml"

maintainers:
  - Naga Sureshkumar Relli <naga.sureshkumar.relli@xilinx.com>

properties:
  compatible:
    oneOf:
      - items:
        - enum:
          - xlnx,zynqmp-nand-controller
        - enum:
          - arasan,nfc-v3p10

  reg:
    maxItems: 1

  clocks:
    items:
      - description: Controller clock
      - description: NAND bus clock

  clock-names:
    items:
      - const: controller
      - const: bus

  interrupts:
    maxItems: 1

  "#address-cells": true
  "#size-cells": true

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - interrupts

additionalProperties: true

examples:
  - |
    nfc: nand-controller@ff100000 {
        compatible = "xlnx,zynqmp-nand-controller", "arasan,nfc-v3p10";
        reg = <0x0 0xff100000 0x0 0x1000>;
        clock-names = "controller", "bus";
        clocks = <&clk200>, <&clk100>;
        interrupt-parent = <&gic>;
        interrupts = <0 14 4>;
        #address-cells = <1>;
        #size-cells = <0>;
    };
+2 −0
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ Required properties:
                     "brcm,brcmnand" and an appropriate version compatibility
                     string, like "brcm,brcmnand-v7.0"
                     Possible values:
                         brcm,brcmnand-v2.1
                         brcm,brcmnand-v2.2
                         brcm,brcmnand-v4.0
                         brcm,brcmnand-v5.0
                         brcm,brcmnand-v6.0
+3 −0
Original line number Diff line number Diff line
@@ -61,6 +61,9 @@ Optional properties:
  clobbered.
- lock : Do not unlock the partition at initialization time (not supported on
  all devices)
- slc-mode: This parameter, if present, allows one to emulate SLC mode on a
  partition attached to an MLC NAND thus making this partition immune to
  paired-pages corruptions

Examples:

+4 −2
Original line number Diff line number Diff line
@@ -276,8 +276,10 @@ unregisters the partitions in the MTD layer.
    #ifdef MODULE
    static void __exit board_cleanup (void)
    {
        /* Release resources, unregister device */
        nand_release (mtd_to_nand(board_mtd));
        /* Unregister device */
        WARN_ON(mtd_device_unregister(board_mtd));
        /* Release resources */
        nand_cleanup(mtd_to_nand(board_mtd));

        /* unmap physical address */
        iounmap(baseaddr);
+9 −4
Original line number Diff line number Diff line
@@ -1284,6 +1284,13 @@ S: Supported
W:	http://www.aquantia.com
F:	drivers/net/ethernet/aquantia/atlantic/aq_ptp*
ARASAN NAND CONTROLLER DRIVER
M:	Naga Sureshkumar Relli <nagasure@xilinx.com>
L:	linux-mtd@lists.infradead.org
S:	Maintained
F:	Documentation/devicetree/bindings/mtd/arasan,nand-controller.yaml
F:	drivers/mtd/nand/raw/arasan-nand-controller.c
ARC FRAMEBUFFER DRIVER
M:	Jaya Kumar <jayalk@intworks.biz>
S:	Maintained
@@ -3741,9 +3748,8 @@ F: Documentation/devicetree/bindings/media/cdns,*.txt
F:	drivers/media/platform/cadence/cdns-csi2*
CADENCE NAND DRIVER
M:	Piotr Sroka <piotrs@cadence.com>
L:	linux-mtd@lists.infradead.org
S:	Maintained
S:	Orphan
F:	Documentation/devicetree/bindings/mtd/cadence-nand-controller.txt
F:	drivers/mtd/nand/raw/cadence-nand-controller.c
@@ -10727,9 +10733,8 @@ F: Documentation/devicetree/bindings/i2c/i2c-mt7621.txt
F:	drivers/i2c/busses/i2c-mt7621.c
MEDIATEK NAND CONTROLLER DRIVER
M:	Xiaolei Li <xiaolei.li@mediatek.com>
L:	linux-mtd@lists.infradead.org
S:	Maintained
S:	Orphan
F:	Documentation/devicetree/bindings/mtd/mtk-nand.txt
F:	drivers/mtd/nand/raw/mtk_*
Loading