Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 1 | EEPROMs (I2C) |
| 2 | |
| 3 | Required properties: |
| 4 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 5 | - compatible: Must be a "<manufacturer>,<model>" pair. The following <model> |
| 6 | values are supported (assuming "atmel" as manufacturer): |
Wolfram Sang | f5e12d0 | 2016-01-07 21:50:59 +0100 | [diff] [blame] | 7 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 8 | "atmel,24c00", |
| 9 | "atmel,24c01", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 10 | "atmel,24cs01", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 11 | "atmel,24c02", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 12 | "atmel,24cs02", |
| 13 | "atmel,24mac402", |
| 14 | "atmel,24mac602", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 15 | "atmel,spd", |
| 16 | "atmel,24c04", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 17 | "atmel,24cs04", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 18 | "atmel,24c08", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 19 | "atmel,24cs08", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 20 | "atmel,24c16", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 21 | "atmel,24cs16", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 22 | "atmel,24c32", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 23 | "atmel,24cs32", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 24 | "atmel,24c64", |
Bartosz Golaszewski | e368204 | 2017-12-28 11:49:12 +0100 | [diff] [blame] | 25 | "atmel,24cs64", |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 26 | "atmel,24c128", |
| 27 | "atmel,24c256", |
| 28 | "atmel,24c512", |
| 29 | "atmel,24c1024", |
Wolfram Sang | f5e12d0 | 2016-01-07 21:50:59 +0100 | [diff] [blame] | 30 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 31 | If <manufacturer> is not "atmel", then a fallback must be used |
| 32 | with the same <model> and "atmel" as manufacturer. |
Wolfram Sang | f5e12d0 | 2016-01-07 21:50:59 +0100 | [diff] [blame] | 33 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 34 | Example: |
| 35 | compatible = "microchip,24c128", "atmel,24c128"; |
David Lechner | b514aea | 2017-01-13 13:03:41 -0600 | [diff] [blame] | 36 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 37 | Supported manufacturers are: |
Wolfram Sang | f5e12d0 | 2016-01-07 21:50:59 +0100 | [diff] [blame] | 38 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 39 | "catalyst", |
| 40 | "microchip", |
| 41 | "ramtron", |
| 42 | "renesas", |
| 43 | "nxp", |
| 44 | "st", |
Wolfram Sang | a570a27 | 2016-01-07 21:51:00 +0100 | [diff] [blame] | 45 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 46 | Some vendors use different model names for chips which are just |
| 47 | variants of the above. Known such exceptions are listed below: |
Javier Martinez Canillas | 2f13f8c | 2017-06-15 20:54:03 +0200 | [diff] [blame] | 48 | |
Bartosz Golaszewski | 6da28ac | 2017-12-28 11:49:10 +0100 | [diff] [blame] | 49 | "renesas,r1ex24002" - the fallback is "atmel,24c02" |
Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 50 | |
Bartosz Golaszewski | e32a1f3 | 2017-12-28 11:49:11 +0100 | [diff] [blame] | 51 | - reg: The I2C address of the EEPROM. |
Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 52 | |
| 53 | Optional properties: |
| 54 | |
Bartosz Golaszewski | e32a1f3 | 2017-12-28 11:49:11 +0100 | [diff] [blame] | 55 | - pagesize: The length of the pagesize for writing. Please consult the |
| 56 | manual of your device, that value varies a lot. A wrong value |
| 57 | may result in data loss! If not specified, a safety value of |
| 58 | '1' is used which will be very slow. |
Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 59 | |
Bartosz Golaszewski | e32a1f3 | 2017-12-28 11:49:11 +0100 | [diff] [blame] | 60 | - read-only: This parameterless property disables writes to the eeprom. |
Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 61 | |
Bartosz Golaszewski | e32a1f3 | 2017-12-28 11:49:11 +0100 | [diff] [blame] | 62 | - size: Total eeprom size in bytes. |
Divagar Mohandass | f2f5afd | 2017-10-10 11:30:35 +0530 | [diff] [blame] | 63 | |
Bartosz Golaszewski | e32a1f3 | 2017-12-28 11:49:11 +0100 | [diff] [blame] | 64 | - no-read-rollover: This parameterless property indicates that the |
| 65 | multi-address eeprom does not automatically roll over |
| 66 | reads to the next slave address. Please consult the |
| 67 | manual of your device. |
Sven Van Asbroeck | 355dd4c | 2017-12-08 11:28:31 -0500 | [diff] [blame] | 68 | |
Bartosz Golaszewski | 3f3d8ef | 2017-12-19 12:09:23 +0100 | [diff] [blame] | 69 | - wp-gpios: GPIO to which the write-protect pin of the chip is connected. |
| 70 | |
Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 71 | Example: |
| 72 | |
| 73 | eeprom@52 { |
| 74 | compatible = "atmel,24c32"; |
| 75 | reg = <0x52>; |
| 76 | pagesize = <32>; |
Bartosz Golaszewski | 3f3d8ef | 2017-12-19 12:09:23 +0100 | [diff] [blame] | 77 | wp-gpios = <&gpio1 3 0>; |
Wolfram Sang | 9ed030d | 2010-11-17 13:00:48 +0100 | [diff] [blame] | 78 | }; |