[lm-sensors] RFC patch to add eeprom write support

David Hubbard david.c.hubbard at gmail.com
Wed Nov 22 18:48:45 CET 2006


Hi Walter,

I am not the lm-sensors maintainer, so if my comments are helpful in
any way, that's all I'm trying to accomplish.

> +config SENSORS_EEPROM_WRITE
> +  bool "EEPROM Write support (experimental)"
> +  depends on I2C && SENSORS_EEPROM && EXPERIMENTAL
> +  help
> +    If you say yes here you get write access to the EEPROM data. Be
> +    VERY carefull when writing since this driver is designed to work
> +    with chips on memory DIMMs which you will NOT want to destroy!
> +
> +    Even when write support is enabled you will need to unlock it at
> +    runtime to prevent errors. Write UNLOCK to the lock file in the
> +    sys/i2c/devices/<address>/ directory to gain write access. Any
> +    other value will lock write support.

This is confusing, I think. In the code below, the correct unlock
value is "0", not the string "UNLOCK."

> +static ssize_t set_lock(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
> +{
> +  struct i2c_client *client = to_i2c_client(dev);
> +  struct eeprom_data *data = i2c_get_clientdata(client);
> +  unsigned long val = simple_strtoul(buf, NULL, 10);
> +  if (val == 0)
> +  {
> +       data->write_lock = 0;
> +  } else {
> +       data->write_lock = 1;
> +  }
> +  return count;
> +}
> +
> +static DEVICE_ATTR(write_lock, S_IWUSR | S_IRUGO, show_lock, set_lock);
> +
> +#endif //CONFIG_SENSORS_EEPROM_WRITE
> +

David Hubbard




More information about the lm-sensors mailing list