Hello
Is it possible to use some Linux I2C driver to program an I2C EEPROM,
for example 24C16?
I have noticed only read-only access to "DIMM eeproms". Are they
24C16-alike?
Is there some reason why write driver is not present like users could
inadvertently overwrite their DIMM eeproms? Do these eeproms have a
protection against write?
I am mainly interested in an application where 24C16 is in-circuit
connected to a PC and contents read and wrote (typically poking
at firmware configuration of various devices).
CL<
Karel Kulhavy wrote:
> Hello
>
> Is it possible to use some Linux I2C driver to program an I2C EEPROM,
> for example 24C16?
>
> I have noticed only read-only access to "DIMM eeproms". Are they
> 24C16-alike?
SPD EEPROMs on DIMMs are 24C02.
> Is there some reason why write driver is not present like users could
> inadvertently overwrite their DIMM eeproms? Do these eeproms have a
> protection against write?
The SPD EEPROMs should not be write protected - that's what
specification says - so probably are not.
> I am mainly interested in an application where 24C16 is in-circuit
> connected to a PC and contents read and wrote (typically poking
> at firmware configuration of various devices).
>
> CL<
--
Ondrej Zary
Hi Karel,
Sorry for the delay.
> Is it possible to use some Linux I2C driver to program an I2C EEPROM,
> for example 24C16?
I don't think there is a driver for that. A driver isn't the only
solution to do that though.
> I have noticed only read-only access to "DIMM eeproms". Are they
> 24C16-alike?
The eeprom driver supports the 24C01, 24C02, 24C04, 24C08 and 24C16. In
other words, all models which can be read using SMBus read byte data
commands.
> Is there some reason why write driver is not present like users could
> inadvertently overwrite their DIMM eeproms?
Exactly.
> Do these eeproms have a protection against write?
Some have, but that's unrelated.
> I am mainly interested in an application where 24C16 is in-circuit
> connected to a PC and contents read and wrote (typically poking
> at firmware configuration of various devices).
You may want to look at the prog/eepromer directory of the lm_sensors
project. We have a set of user-space tools to write to EEPROMs of
various sizes. They rely on the i2c-dev driver as the user-space/kernel
interface.
--
Jean Delvare