1# SPDX-License-Identifier: GPL-2.0-only 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mtd/jedec,spi-nor.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: SPI NOR flash ST M25Pxx (and similar) serial flash chips 8 9maintainers: 10 - Rob Herring <robh@kernel.org> 11 12allOf: 13 - $ref: "mtd.yaml#" 14 15properties: 16 compatible: 17 oneOf: 18 - items: 19 - pattern: "^((((micron|spansion|st),)?\ 20 (m25p(40|80|16|32|64|128)|\ 21 n25q(32b|064|128a11|128a13|256a|512a|164k)))|\ 22 atmel,at25df(321a|641|081a)|\ 23 everspin,mr25h(10|40|128|256)|\ 24 (mxicy|macronix),mx25l(4005a|1606e|6405d|8005|12805d|25635e)|\ 25 (mxicy|macronix),mx25u(4033|4035)|\ 26 (spansion,)?s25fl(128s|256s1|512s|008k|064k|164k)|\ 27 (sst|microchip),sst25vf(016b|032b|040b)|\ 28 (sst,)?sst26wf016b|\ 29 (sst,)?sst25wf(040b|080)|\ 30 winbond,w25x(80|32)|\ 31 (winbond,)?w25q(16|32(w|dw)?|64(dw)?|80bl|128(fw)?|256))$" 32 - const: jedec,spi-nor 33 - items: 34 - enum: 35 - issi,is25lp016d 36 - micron,mt25qu02g 37 - mxicy,mx25r1635f 38 - mxicy,mx25u6435f 39 - mxicy,mx25v8035f 40 - spansion,s25sl12801 41 - spansion,s25fs512s 42 - const: jedec,spi-nor 43 - const: jedec,spi-nor 44 description: 45 Must also include "jedec,spi-nor" for any SPI NOR flash that can be 46 identified by the JEDEC READ ID opcode (0x9F). 47 48 reg: 49 maxItems: 1 50 51 spi-max-frequency: true 52 spi-rx-bus-width: true 53 spi-tx-bus-width: true 54 55 m25p,fast-read: 56 type: boolean 57 description: 58 Use the "fast read" opcode to read data from the chip instead of the usual 59 "read" opcode. This opcode is not supported by all chips and support for 60 it can not be detected at runtime. Refer to your chips' datasheet to check 61 if this is supported by your chip. 62 63 broken-flash-reset: 64 type: boolean 65 description: 66 Some flash devices utilize stateful addressing modes (e.g., for 32-bit 67 addressing) which need to be managed carefully by a system. Because these 68 sorts of flash don't have a standardized software reset command, and 69 because some systems don't toggle the flash RESET# pin upon system reset 70 (if the pin even exists at all), there are systems which cannot reboot 71 properly if the flash is left in the "wrong" state. This boolean flag can 72 be used on such systems, to denote the absence of a reliable reset 73 mechanism. 74 75 label: true 76 77 partitions: 78 type: object 79 80 '#address-cells': true 81 '#size-cells': true 82 83patternProperties: 84 # Note: use 'partitions' node for new users 85 '^partition@': 86 type: object 87 88 "^otp(-[0-9]+)?$": 89 type: object 90 91additionalProperties: false 92 93examples: 94 - | 95 spi { 96 #address-cells = <1>; 97 #size-cells = <0>; 98 99 flash@0 { 100 #address-cells = <1>; 101 #size-cells = <1>; 102 compatible = "spansion,m25p80", "jedec,spi-nor"; 103 reg = <0>; 104 spi-max-frequency = <40000000>; 105 m25p,fast-read; 106 }; 107 }; 108... 109