1 # SPDX-License-Identifier: GPL-2.0-only
2 # Copyright 2019 BayLibre SAS
5 $id: http://devicetree.org/schemas/eeprom/at24.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 title: I2C EEPROMs compatible with Atmel's AT24
11 - Bartosz Golaszewski <bgolaszewski@baylibre.com>
14 - $ref: /schemas/nvmem/nvmem.yaml
20 pattern: "^atmel,(24(c|cs|mac)[0-9]+|spd)$"
26 pattern: "^eeprom@[0-9a-f]{1,2}$"
28 # There are multiple known vendors who manufacture EEPROM chips compatible
29 # with Atmel's AT24. The compatible string requires either a single item
30 # if the memory comes from Atmel (in which case the vendor part must be
31 # 'atmel') or two items with the same 'model' part where the vendor part of
32 # the first one is the actual manufacturer and the second item is the
33 # corresponding 'atmel,<model>' from Atmel.
39 - pattern: "^(atmel|catalyst|microchip|nxp|ramtron|renesas|rohm|st),(24(c|cs|lc|mac)[0-9]+|spd)$"
40 - pattern: "^atmel,(24(c|cs|mac)[0-9]+|spd)$"
104 # These are special cases that don't conform to the above pattern.
105 # Each requires a standard at24 model as fallback.
107 - const: belling,bl24c16a
125 - const: renesas,r1ex24016
128 - const: giantec,gt24c32a
134 - const: atmel,24c128
137 description: Descriptive name of the EEPROM.
144 The length of the pagesize for writing. Please consult the
145 manual of your device, that value varies a lot. A wrong value
146 may result in data loss! If not specified, a safety value of
147 '1' is used which will be very slow.
148 $ref: /schemas/types.yaml#/definitions/uint32
149 enum: [1, 8, 16, 32, 64, 128, 256]
153 $ref: /schemas/types.yaml#/definitions/flag
155 Disables writes to the eeprom.
158 $ref: /schemas/types.yaml#/definitions/uint32
160 Total eeprom size in bytes.
163 $ref: /schemas/types.yaml#/definitions/flag
165 Indicates that the multi-address eeprom does not automatically roll
166 over reads to the next slave address. Please consult the manual of
173 Number of address bits.
174 $ref: /schemas/types.yaml#/definitions/uint32
180 Total number of i2c slave addresses this device takes.
181 $ref: /schemas/types.yaml#/definitions/uint32
188 phandle of the regulator that provides the supply voltage.
194 unevaluatedProperties: false
199 #address-cells = <1>;
203 compatible = "microchip,24c32", "atmel,24c32";
206 wp-gpios = <&gpio1 3 0>;