# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mtd/gpmi-nand.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale General-Purpose Media Interface (GPMI)

maintainers:
  - Han Xu <han.xu@nxp.com>

description: |
  The GPMI nand controller provides an interface to control the NAND
  flash chips. The device tree may optionally contain sub-nodes
  describing partitions of the address space. See mtd.yaml for
  more detail.

properties:
  compatible:
    oneOf:
      - enum:
          - fsl,imx23-gpmi-nand
          - fsl,imx28-gpmi-nand
          - fsl,imx6q-gpmi-nand
          - fsl,imx6sx-gpmi-nand
          - fsl,imx7d-gpmi-nand
          - fsl,imx8qxp-gpmi-nand
      - items:
          - enum:
              - fsl,imx8mm-gpmi-nand
              - fsl,imx8mn-gpmi-nand
          - const: fsl,imx7d-gpmi-nand

  reg:
    items:
      - description: Address and length of gpmi block.
      - description: Address and length of bch block.

  reg-names:
    items:
      - const: gpmi-nand
      - const: bch

  interrupts:
    maxItems: 1

  interrupt-names:
    const: bch

  dmas:
    maxItems: 1

  dma-names:
    const: rx-tx

  clocks:
    minItems: 1
    maxItems: 5

  clock-names:
    minItems: 1
    maxItems: 5

  fsl,use-minimum-ecc:
    type: boolean
    description: |
      Protect this NAND flash with the minimum ECC strength required.
      The required ECC strength is automatically discoverable for some
      flash (e.g., according to the ONFI standard). However, note that
      if this strength is not discoverable or this property is not enabled,
      the software may chooses an implementation-defined ECC scheme.

  fsl,no-blockmark-swap:
    type: boolean
    description: |
      Don't swap the bad block marker from the OOB area with the byte in
      the data area but rely on the flash based BBT for identifying bad blocks.
      NOTE: this is only valid in conjunction with 'nand-on-flash-bbt'.
      WARNING: on i.MX28 blockmark swapping cannot be disabled for the BootROM
      in the FCB. Thus, partitions written from Linux with this feature turned
      on may not be accessible by the BootROM code.

required:
  - compatible
  - reg
  - reg-names
  - interrupts
  - interrupt-names
  - clocks
  - clock-names
  - dmas
  - dma-names

unevaluatedProperties: false

allOf:
  - $ref: nand-controller.yaml

  - if:
      properties:
        compatible:
          contains:
            enum:
              - fsl,imx23-gpmi-nand
              - fsl,imx28-gpmi-nand
    then:
      properties:
        clocks:
          items:
            - description: SoC gpmi io clock
        clock-names:
          items:
            - const: gpmi_io

  - if:
      properties:
        compatible:
          contains:
            enum:
              - fsl,imx6q-gpmi-nand
              - fsl,imx6sx-gpmi-nand
    then:
      properties:
        clocks:
          items:
            - description: SoC gpmi io clock
            - description: SoC gpmi apb clock
            - description: SoC gpmi bch clock
            - description: SoC gpmi bch apb clock
            - description: SoC per1 bch clock
        clock-names:
          items:
            - const: gpmi_io
            - const: gpmi_apb
            - const: gpmi_bch
            - const: gpmi_bch_apb
            - const: per1_bch

  - if:
      properties:
        compatible:
          contains:
            const: fsl,imx7d-gpmi-nand
    then:
      properties:
        clocks:
          items:
            - description: SoC gpmi io clock
            - description: SoC gpmi bch apb clock
        clock-names:
          items:
            - const: gpmi_io
            - const: gpmi_bch_apb

  - if:
      properties:
        compatible:
          contains:
            enum:
              - fsl,imx8qxp-gpmi-nand
    then:
      properties:
        clocks:
          items:
            - description: SoC gpmi io clock
            - description: SoC gpmi apb clock
            - description: SoC gpmi bch clock
            - description: SoC gpmi bch apb clock
        clock-names:
          items:
            - const: gpmi_io
            - const: gpmi_apb
            - const: gpmi_bch
            - const: gpmi_bch_apb

examples:
  - |
    nand-controller@8000c000 {
        #address-cells = <1>;
        #size-cells = <0>;
        compatible = "fsl,imx28-gpmi-nand";
        reg = <0x8000c000 0x2000>, <0x8000a000 0x2000>;
        reg-names = "gpmi-nand", "bch";
        interrupts = <41>;
        interrupt-names = "bch";
        clocks = <&clks 50>;
        clock-names = "gpmi_io";
        dmas = <&dma_apbh 4>;
        dma-names = "rx-tx";
    };
