1*5956d97fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*5956d97fSEmmanuel Vadot%YAML 1.2 3*5956d97fSEmmanuel Vadot--- 4*5956d97fSEmmanuel Vadot$id: http://devicetree.org/schemas/mtd/mtd.yaml# 5*5956d97fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*5956d97fSEmmanuel Vadot 7*5956d97fSEmmanuel Vadottitle: MTD (Memory Technology Device) Device Tree Bindings 8*5956d97fSEmmanuel Vadot 9*5956d97fSEmmanuel Vadotmaintainers: 10*5956d97fSEmmanuel Vadot - Miquel Raynal <miquel.raynal@bootlin.com> 11*5956d97fSEmmanuel Vadot - Richard Weinberger <richard@nod.at> 12*5956d97fSEmmanuel Vadot 13*5956d97fSEmmanuel Vadotproperties: 14*5956d97fSEmmanuel Vadot $nodename: 15*5956d97fSEmmanuel Vadot pattern: "^flash(@.*)?$" 16*5956d97fSEmmanuel Vadot 17*5956d97fSEmmanuel Vadot label: 18*5956d97fSEmmanuel Vadot description: 19*5956d97fSEmmanuel Vadot User-defined MTD device name. Can be used to assign user friendly 20*5956d97fSEmmanuel Vadot names to MTD devices (instead of the flash model or flash controller 21*5956d97fSEmmanuel Vadot based name) in order to ease flash device identification and/or 22*5956d97fSEmmanuel Vadot describe what they are used for. 23*5956d97fSEmmanuel Vadot 24*5956d97fSEmmanuel VadotpatternProperties: 25*5956d97fSEmmanuel Vadot "^otp(-[0-9]+)?$": 26*5956d97fSEmmanuel Vadot type: object 27*5956d97fSEmmanuel Vadot $ref: ../nvmem/nvmem.yaml# 28*5956d97fSEmmanuel Vadot 29*5956d97fSEmmanuel Vadot description: | 30*5956d97fSEmmanuel Vadot An OTP memory region. Some flashes provide a one-time-programmable 31*5956d97fSEmmanuel Vadot memory whose content can either be programmed by a user or is already 32*5956d97fSEmmanuel Vadot pre-programmed by the factory. Some flashes might provide both. 33*5956d97fSEmmanuel Vadot 34*5956d97fSEmmanuel Vadot properties: 35*5956d97fSEmmanuel Vadot compatible: 36*5956d97fSEmmanuel Vadot enum: 37*5956d97fSEmmanuel Vadot - user-otp 38*5956d97fSEmmanuel Vadot - factory-otp 39*5956d97fSEmmanuel Vadot 40*5956d97fSEmmanuel Vadot required: 41*5956d97fSEmmanuel Vadot - compatible 42*5956d97fSEmmanuel Vadot 43*5956d97fSEmmanuel VadotadditionalProperties: true 44*5956d97fSEmmanuel Vadot 45*5956d97fSEmmanuel Vadotexamples: 46*5956d97fSEmmanuel Vadot - | 47*5956d97fSEmmanuel Vadot spi { 48*5956d97fSEmmanuel Vadot #address-cells = <1>; 49*5956d97fSEmmanuel Vadot #size-cells = <0>; 50*5956d97fSEmmanuel Vadot 51*5956d97fSEmmanuel Vadot flash@0 { 52*5956d97fSEmmanuel Vadot reg = <0>; 53*5956d97fSEmmanuel Vadot compatible = "jedec,spi-nor"; 54*5956d97fSEmmanuel Vadot label = "System-firmware"; 55*5956d97fSEmmanuel Vadot }; 56*5956d97fSEmmanuel Vadot }; 57*5956d97fSEmmanuel Vadot 58*5956d97fSEmmanuel Vadot - | 59*5956d97fSEmmanuel Vadot spi { 60*5956d97fSEmmanuel Vadot #address-cells = <1>; 61*5956d97fSEmmanuel Vadot #size-cells = <0>; 62*5956d97fSEmmanuel Vadot 63*5956d97fSEmmanuel Vadot flash@0 { 64*5956d97fSEmmanuel Vadot reg = <0>; 65*5956d97fSEmmanuel Vadot compatible = "jedec,spi-nor"; 66*5956d97fSEmmanuel Vadot 67*5956d97fSEmmanuel Vadot otp-1 { 68*5956d97fSEmmanuel Vadot compatible = "factory-otp"; 69*5956d97fSEmmanuel Vadot #address-cells = <1>; 70*5956d97fSEmmanuel Vadot #size-cells = <1>; 71*5956d97fSEmmanuel Vadot 72*5956d97fSEmmanuel Vadot electronic-serial-number@0 { 73*5956d97fSEmmanuel Vadot reg = <0 8>; 74*5956d97fSEmmanuel Vadot }; 75*5956d97fSEmmanuel Vadot }; 76*5956d97fSEmmanuel Vadot 77*5956d97fSEmmanuel Vadot otp-2 { 78*5956d97fSEmmanuel Vadot compatible = "user-otp"; 79*5956d97fSEmmanuel Vadot #address-cells = <1>; 80*5956d97fSEmmanuel Vadot #size-cells = <1>; 81*5956d97fSEmmanuel Vadot 82*5956d97fSEmmanuel Vadot mac-address@0 { 83*5956d97fSEmmanuel Vadot reg = <0 6>; 84*5956d97fSEmmanuel Vadot }; 85*5956d97fSEmmanuel Vadot }; 86*5956d97fSEmmanuel Vadot }; 87*5956d97fSEmmanuel Vadot }; 88*5956d97fSEmmanuel Vadot 89*5956d97fSEmmanuel Vadot... 90