Hi Andrey, On 2005-11-16, Andrey Volkov wrote: > It's pity, but all chips of m41xx family (approx. 20 members) have same > i2c slave address (0x68) and have not some hwd model specific id > registers. Hence I couldn't made any clue about chip specific > regs/pins/... at run-time (and couldn't use two or more chips in one i2c > subnet :)). And the situation worsens, as various chips have various > time regs offsets, as ex. REG_SEC of m41t00 have offset 0, but > in m41t85 _SAME_ REG_SEC have offset 1, etc (God, who in ST was so, > hm, ...., so made such decision?). I wholeheartedly second your views, it would be way way better if all I2C chips had an ID register. However, having a separate driver for every chip doesn't actually solve the undifferenciability issue. You can't prevent the user from loading the wrong driver. Also, the problem isn't specific to the m41txx family of chips, many other families of chips suffer the same. The main problem here is that i2c-core currently lacks a mechanism which would let us explicitely attach a given driver (and chip type within that driver) to an arbitrary adapter, address pair. I will be working on implementing this with the help of others in the next few weeks. RTC drivers and media/video drivers should enjoy this new interface. Thanks, -- Jean Delvare