On Fri, Dec 11, 2015 at 02:55:10PM +0100, Bartosz Golaszewski wrote: > 2015-12-11 13:08 GMT+01:00 Wolfram Sang : > > On Wed, Dec 02, 2015 at 11:25:17AM +0100, Bartosz Golaszewski wrote: > >> Chips from the at24cs EEPROM series have an additional read-only memory area > >> containing a factory pre-programmed serial number. In order to access it, a > >> dummy write must be executed before reading the serial number bytes. > > > > Can't you instantiate a read-only EEPROM on this second address? Or a > > seperate driver attaching to this address? What is the advantage of > > having this in at24? > > > > The regular memory area and serial number read-only block share the > internal address pointer. We must ensure that there's no race > conditions between normal EEPROM reads/writes and serial number reads. I don't get it. Both, regular at24 reads and the serial read, setup the pointer every time by using two messages, first write to set the pointer, then read. The per-adapter lock makes sure those two messages will not get interrupted. So, it looks to me that it would be OK if a serial read access gets inbetween a eeprom read access. Am I wrong?