diff options
author | Hubert Feurstein <h.feurstein@gmail.com> | 2011-06-20 23:46:34 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-06-21 13:56:49 +0200 |
commit | f568880f8f560938650896284950338592d0f8fa (patch) | |
tree | f214a860a747830eb19b1f450160fa7bb38541a5 /include/spi | |
parent | c0b962986773539ec059f1cb4d47506a7c8f6077 (diff) | |
download | barebox-f568880f8f560938650896284950338592d0f8fa.tar.gz barebox-f568880f8f560938650896284950338592d0f8fa.tar.xz |
eeprom: add at25 eeprom driver
This commit adds support for most spi eeproms, such as the
Atmel at25 models.
Signed-off-by: Hubert Feurstein <h.feurstein@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/spi')
-rw-r--r-- | include/spi/eeprom.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/include/spi/eeprom.h b/include/spi/eeprom.h new file mode 100644 index 0000000000..15495e59f5 --- /dev/null +++ b/include/spi/eeprom.h @@ -0,0 +1,22 @@ +#ifndef _SPI_EEPROM_H +#define _SPI_EEPROM_H + +/* + * Put one of these structures in platform_data for SPI EEPROMS handled + * by the "at25" driver. On SPI, most EEPROMS understand the same core + * command set. If you need to support EEPROMs that don't yet fit, add + * flags to support those protocol options. These values all come from + * the chip datasheets. + */ +struct spi_eeprom { + char name[10]; + u16 page_size; /* for writes */ + u16 flags; +#define EE_ADDR1 0x0001 /* 8 bit addrs */ +#define EE_ADDR2 0x0002 /* 16 bit addrs */ +#define EE_ADDR3 0x0004 /* 24 bit addrs */ +#define EE_READONLY 0x0008 /* disallow writes */ + u32 size; +}; + +#endif /* _SPI_EEPROM_H */ |