1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mtd/mtd.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: MTD (Memory Technology Device) 8 9maintainers: 10 - Miquel Raynal <miquel.raynal@bootlin.com> 11 - Richard Weinberger <richard@nod.at> 12 13select: false 14 15properties: 16 $nodename: 17 pattern: "^(flash|.*sram|nand)(@.*)?$" 18 19 label: 20 description: 21 User-defined MTD device name. Can be used to assign user friendly 22 names to MTD devices (instead of the flash model or flash controller 23 based name) in order to ease flash device identification and/or 24 describe what they are used for. 25 26 '#address-cells': 27 deprecated: true 28 29 '#size-cells': 30 deprecated: true 31 32 partitions: 33 $ref: /schemas/mtd/partitions/partitions.yaml 34 35 required: 36 - compatible 37 38patternProperties: 39 "@[0-9a-f]+$": 40 $ref: partitions/partition.yaml 41 deprecated: true 42 43 "^partition@[0-9a-f]+": 44 $ref: partitions/partition.yaml 45 deprecated: true 46 47 "^otp(-[0-9]+)?$": 48 type: object 49 50 allOf: 51 - $ref: /schemas/nvmem/nvmem.yaml# 52 - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml# 53 54 unevaluatedProperties: false 55 56 description: | 57 An OTP memory region. Some flashes provide a one-time-programmable 58 memory whose content can either be programmed by a user or is already 59 pre-programmed by the factory. Some flashes might provide both. 60 61 properties: 62 compatible: 63 enum: 64 - user-otp 65 - factory-otp 66 67 required: 68 - compatible 69 70# This is a generic file other binding inherit from 71additionalProperties: true 72 73examples: 74 - | 75 spi { 76 #address-cells = <1>; 77 #size-cells = <0>; 78 79 flash@0 { 80 reg = <0>; 81 compatible = "jedec,spi-nor"; 82 label = "System-firmware"; 83 }; 84 }; 85 86 - | 87 spi { 88 #address-cells = <1>; 89 #size-cells = <0>; 90 91 flash@0 { 92 reg = <0>; 93 compatible = "jedec,spi-nor"; 94 95 otp-1 { 96 compatible = "factory-otp"; 97 #address-cells = <1>; 98 #size-cells = <1>; 99 100 electronic-serial-number@0 { 101 reg = <0 8>; 102 }; 103 }; 104 105 otp-2 { 106 compatible = "user-otp"; 107 #address-cells = <1>; 108 #size-cells = <1>; 109 110 mac-address@0 { 111 reg = <0 6>; 112 }; 113 }; 114 }; 115 }; 116 117... 118