1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/mtd/ingenic,nand.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: Ingenic SoCs NAND controller 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Paul Cercueil <paul@crapouillou.net> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel VadotallOf: 13c66ec88fSEmmanuel Vadot - $ref: nand-controller.yaml# 14d5b0e70fSEmmanuel Vadot - $ref: /schemas/memory-controllers/ingenic,nemc-peripherals.yaml# 15c66ec88fSEmmanuel Vadot 16c66ec88fSEmmanuel Vadotproperties: 17c66ec88fSEmmanuel Vadot compatible: 18c66ec88fSEmmanuel Vadot enum: 19c66ec88fSEmmanuel Vadot - ingenic,jz4740-nand 20c66ec88fSEmmanuel Vadot - ingenic,jz4725b-nand 21c66ec88fSEmmanuel Vadot - ingenic,jz4780-nand 22c66ec88fSEmmanuel Vadot 23c66ec88fSEmmanuel Vadot reg: 24c66ec88fSEmmanuel Vadot items: 25c66ec88fSEmmanuel Vadot - description: Bank number, offset and size of first attached NAND chip 26c66ec88fSEmmanuel Vadot - description: Bank number, offset and size of second attached NAND chip 27c66ec88fSEmmanuel Vadot - description: Bank number, offset and size of third attached NAND chip 28c66ec88fSEmmanuel Vadot - description: Bank number, offset and size of fourth attached NAND chip 29c66ec88fSEmmanuel Vadot minItems: 1 30c66ec88fSEmmanuel Vadot 31c66ec88fSEmmanuel Vadot ecc-engine: true 32c66ec88fSEmmanuel Vadot 33c66ec88fSEmmanuel Vadot partitions: 34c66ec88fSEmmanuel Vadot type: object 358bab661aSEmmanuel Vadot deprecated: true 36c66ec88fSEmmanuel Vadot description: 37c66ec88fSEmmanuel Vadot Node containing description of fixed partitions. 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel VadotpatternProperties: 40c66ec88fSEmmanuel Vadot "^nand@[a-f0-9]$": 41c66ec88fSEmmanuel Vadot type: object 42*f126890aSEmmanuel Vadot $ref: raw-nand-chip.yaml 43c66ec88fSEmmanuel Vadot properties: 44*f126890aSEmmanuel Vadot 45c66ec88fSEmmanuel Vadot rb-gpios: 46c66ec88fSEmmanuel Vadot description: GPIO specifier for the busy pin. 47c66ec88fSEmmanuel Vadot maxItems: 1 48c66ec88fSEmmanuel Vadot 49c66ec88fSEmmanuel Vadot wp-gpios: 50c66ec88fSEmmanuel Vadot description: GPIO specifier for the write-protect pin. 51c66ec88fSEmmanuel Vadot maxItems: 1 52c66ec88fSEmmanuel Vadot 53*f126890aSEmmanuel Vadot unevaluatedProperties: false 54*f126890aSEmmanuel Vadot 55c66ec88fSEmmanuel Vadotrequired: 56c66ec88fSEmmanuel Vadot - compatible 57c66ec88fSEmmanuel Vadot - reg 58c66ec88fSEmmanuel Vadot 596be33864SEmmanuel VadotunevaluatedProperties: false 606be33864SEmmanuel Vadot 61c66ec88fSEmmanuel Vadotexamples: 62c66ec88fSEmmanuel Vadot - | 638cc087a1SEmmanuel Vadot #include <dt-bindings/clock/ingenic,jz4780-cgu.h> 64c66ec88fSEmmanuel Vadot memory-controller@13410000 { 65c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-nemc"; 66c66ec88fSEmmanuel Vadot reg = <0x13410000 0x10000>; 67c66ec88fSEmmanuel Vadot #address-cells = <2>; 68c66ec88fSEmmanuel Vadot #size-cells = <1>; 69c66ec88fSEmmanuel Vadot ranges = <1 0 0x1b000000 0x1000000>, 70c66ec88fSEmmanuel Vadot <2 0 0x1a000000 0x1000000>, 71c66ec88fSEmmanuel Vadot <3 0 0x19000000 0x1000000>, 72c66ec88fSEmmanuel Vadot <4 0 0x18000000 0x1000000>, 73c66ec88fSEmmanuel Vadot <5 0 0x17000000 0x1000000>, 74c66ec88fSEmmanuel Vadot <6 0 0x16000000 0x1000000>; 75c66ec88fSEmmanuel Vadot 76c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_NEMC>; 77c66ec88fSEmmanuel Vadot 78c66ec88fSEmmanuel Vadot nand-controller@1 { 79c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-nand"; 80c66ec88fSEmmanuel Vadot reg = <1 0 0x1000000>; 81c66ec88fSEmmanuel Vadot 82c66ec88fSEmmanuel Vadot #address-cells = <1>; 83c66ec88fSEmmanuel Vadot #size-cells = <0>; 84c66ec88fSEmmanuel Vadot 85c66ec88fSEmmanuel Vadot ecc-engine = <&bch>; 86c66ec88fSEmmanuel Vadot 87c66ec88fSEmmanuel Vadot ingenic,nemc-tAS = <10>; 88c66ec88fSEmmanuel Vadot ingenic,nemc-tAH = <5>; 89c66ec88fSEmmanuel Vadot ingenic,nemc-tBP = <10>; 90c66ec88fSEmmanuel Vadot ingenic,nemc-tAW = <15>; 91c66ec88fSEmmanuel Vadot ingenic,nemc-tSTRV = <100>; 92c66ec88fSEmmanuel Vadot 93c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 94c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_nemc>; 95c66ec88fSEmmanuel Vadot 96c66ec88fSEmmanuel Vadot nand@1 { 97c66ec88fSEmmanuel Vadot reg = <1>; 98c66ec88fSEmmanuel Vadot 99c66ec88fSEmmanuel Vadot nand-ecc-step-size = <1024>; 100c66ec88fSEmmanuel Vadot nand-ecc-strength = <24>; 101c66ec88fSEmmanuel Vadot nand-ecc-mode = "hw"; 102c66ec88fSEmmanuel Vadot nand-on-flash-bbt; 103c66ec88fSEmmanuel Vadot 104c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 105c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_nemc_cs1>; 106c66ec88fSEmmanuel Vadot 107c66ec88fSEmmanuel Vadot partitions { 108c66ec88fSEmmanuel Vadot compatible = "fixed-partitions"; 109c66ec88fSEmmanuel Vadot #address-cells = <2>; 110c66ec88fSEmmanuel Vadot #size-cells = <2>; 111c66ec88fSEmmanuel Vadot 112c66ec88fSEmmanuel Vadot partition@0 { 113c66ec88fSEmmanuel Vadot label = "u-boot-spl"; 114c66ec88fSEmmanuel Vadot reg = <0x0 0x0 0x0 0x800000>; 115c66ec88fSEmmanuel Vadot }; 116c66ec88fSEmmanuel Vadot 117c66ec88fSEmmanuel Vadot partition@800000 { 118c66ec88fSEmmanuel Vadot label = "u-boot"; 119c66ec88fSEmmanuel Vadot reg = <0x0 0x800000 0x0 0x200000>; 120c66ec88fSEmmanuel Vadot }; 121c66ec88fSEmmanuel Vadot 122c66ec88fSEmmanuel Vadot partition@a00000 { 123c66ec88fSEmmanuel Vadot label = "u-boot-env"; 124c66ec88fSEmmanuel Vadot reg = <0x0 0xa00000 0x0 0x200000>; 125c66ec88fSEmmanuel Vadot }; 126c66ec88fSEmmanuel Vadot 127c66ec88fSEmmanuel Vadot partition@c00000 { 128c66ec88fSEmmanuel Vadot label = "boot"; 129c66ec88fSEmmanuel Vadot reg = <0x0 0xc00000 0x0 0x4000000>; 130c66ec88fSEmmanuel Vadot }; 131c66ec88fSEmmanuel Vadot 132c66ec88fSEmmanuel Vadot partition@4c00000 { 133c66ec88fSEmmanuel Vadot label = "system"; 134c66ec88fSEmmanuel Vadot reg = <0x0 0x4c00000 0x1 0xfb400000>; 135c66ec88fSEmmanuel Vadot }; 136c66ec88fSEmmanuel Vadot }; 137c66ec88fSEmmanuel Vadot }; 138c66ec88fSEmmanuel Vadot }; 139c66ec88fSEmmanuel Vadot }; 140