Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1364253
| From | Bartosz Golaszewski <bgolaszewski@baylibre.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 10/13] eeprom: at24: add the at24cs series to the list of supported devices |
| Date | 2016-03-24 16:00 +0100 |
| Message-ID | <rgeTV-42l-41@gated-at.bofh.it> (permalink) |
| References | <rgeKe-3Y1-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
The infrastructure for reading of the factory-programmed serial number
for at24cs EEPROM series is now in place. Add the chips that are actually
equipped with the serial number memory area to the list of supported
devices.
The chips from the at24cs family have two memory areas - a regular
read-write block and a read-only area containing the serial number.
The latter is visible on a different slave address (the address of the
wr memory block + 0x08). In order to access both blocks the user needs
to instantiate a regular at24c device for the wr block address and a
corresponding at24cs device on the serial number block address.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
drivers/misc/eeprom/at24.c | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c
index 9515001..a95a301 100644
--- a/drivers/misc/eeprom/at24.c
+++ b/drivers/misc/eeprom/at24.c
@@ -114,16 +114,34 @@ static const struct i2c_device_id at24_ids[] = {
{ "24c00", AT24_DEVICE_MAGIC(128 / 8, AT24_FLAG_TAKE8ADDR) },
/* old variants can't be handled with this generic entry! */
{ "24c01", AT24_DEVICE_MAGIC(1024 / 8, 0) },
+ { "24cs01", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_SERIAL | AT24_FLAG_READONLY) },
{ "24c02", AT24_DEVICE_MAGIC(2048 / 8, 0) },
+ { "24cs02", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_SERIAL | AT24_FLAG_READONLY) },
/* spd is a 24c02 in memory DIMMs */
{ "spd", AT24_DEVICE_MAGIC(2048 / 8,
AT24_FLAG_READONLY | AT24_FLAG_IRUGO) },
{ "24c04", AT24_DEVICE_MAGIC(4096 / 8, 0) },
+ { "24cs04", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_SERIAL | AT24_FLAG_READONLY) },
/* 24rf08 quirk is handled at i2c-core */
{ "24c08", AT24_DEVICE_MAGIC(8192 / 8, 0) },
+ { "24cs08", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_SERIAL | AT24_FLAG_READONLY) },
{ "24c16", AT24_DEVICE_MAGIC(16384 / 8, 0) },
+ { "24cs16", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_SERIAL | AT24_FLAG_READONLY) },
{ "24c32", AT24_DEVICE_MAGIC(32768 / 8, AT24_FLAG_ADDR16) },
+ { "24cs32", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_ADDR16 |
+ AT24_FLAG_SERIAL |
+ AT24_FLAG_READONLY) },
{ "24c64", AT24_DEVICE_MAGIC(65536 / 8, AT24_FLAG_ADDR16) },
+ { "24cs64", AT24_DEVICE_MAGIC(128 / 8,
+ AT24_FLAG_ADDR16 |
+ AT24_FLAG_SERIAL |
+ AT24_FLAG_READONLY) },
{ "24c128", AT24_DEVICE_MAGIC(131072 / 8, AT24_FLAG_ADDR16) },
{ "24c256", AT24_DEVICE_MAGIC(262144 / 8, AT24_FLAG_ADDR16) },
{ "24c512", AT24_DEVICE_MAGIC(524288 / 8, AT24_FLAG_ADDR16) },
--
2.7.4
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 00/13] eeprom: support for at24cs and at24mac Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 15:50 +0100
[PATCH 08/13] eeprom: at24: call read and write routines via function pointers Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
Re: [PATCH 08/13] eeprom: at24: call read and write routines via function pointers kbuild test robot <lkp@intel.com> - 2016-03-24 16:20 +0100
[PATCH 13/13] eeprom: at24: add at24mac chips to the list of supported devices Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 07/13] eeprom: at24: support reading of the serial number Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 01/13] eeprom: at24: remove a reduntant if Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 05/13] eeprom: at24: replace msleep() with usleep_range() Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 12/13] eeprom: at24: add support for at24mac series Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 09/13] eeprom: at24: use at24cs_serial_read() Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 10/13] eeprom: at24: add the at24cs series to the list of supported devices Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
[PATCH 11/13] eeprom: at24: add at24mac series flag Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-03-24 16:00 +0100
csiph-web