| # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause | |
| %YAML 1.2 | |
| --- | |
| $id: http://devicetree.org/schemas/mtd/mxic,multi-itfc-v009-nand-controller.yaml# | |
| $schema: http://devicetree.org/meta-schemas/core.yaml# | |
| title: Macronix Raw NAND Controller | |
| maintainers: | |
| - Mason Yang <masonccyang@mxic.com.tw> | |
| description: | |
| The Macronix Multi-Interface Raw NAND Controller is a versatile flash | |
| memory controller for embedding in SoCs, capable of interfacing with | |
| various NAND devices. It requires dedicated clock inputs for core, data | |
| transmit, and delayed transmit paths along with register space and an | |
| interrupt line for operation. | |
| allOf: | |
| - $ref: nand-controller.yaml# | |
| properties: | |
| compatible: | |
| const: mxic,multi-itfc-v009-nand-controller | |
| reg: | |
| maxItems: 1 | |
| interrupts: | |
| maxItems: 1 | |
| "#address-cells": | |
| const: 1 | |
| "#size-cells": | |
| const: 0 | |
| clocks: | |
| minItems: 3 | |
| maxItems: 3 | |
| clock-names: | |
| items: | |
| - const: ps | |
| - const: send | |
| - const: send_dly | |
| required: | |
| - compatible | |
| - reg | |
| - interrupts | |
| - "#address-cells" | |
| - "#size-cells" | |
| - clocks | |
| - clock-names | |
| unevaluatedProperties: false | |
| examples: | |
| - | | |
| #include <dt-bindings/interrupt-controller/arm-gic.h> | |
| nand-controller@43c30000 { | |
| compatible = "mxic,multi-itfc-v009-nand-controller"; | |
| reg = <0x43c30000 0x10000>; | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| interrupts = <GIC_SPI 0x1d IRQ_TYPE_EDGE_RISING>; | |
| clocks = <&clkwizard 0>, <&clkwizard 1>, <&clkc 15>; | |
| clock-names = "ps", "send", "send_dly"; | |
| nand@0 { | |
| reg = <0>; | |
| nand-ecc-mode = "soft"; | |
| nand-ecc-algo = "bch"; | |
| }; | |
| }; | |
| ... |