From: Jean Delvare <jdelv...@suse.de> commit 25e5ef302c24a6fead369c0cfe88c073d7b97ca8 upstream.
The integration of the at24 driver into the nvmem framework broke the world-readability of spd EEPROMs. Fix it. Signed-off-by: Jean Delvare <jdelv...@suse.de> Cc: sta...@vger.kernel.org Fixes: 57d155506dd5 ("eeprom: at24: extend driver to plug into the NVMEM framework") Cc: Andrew Lunn <and...@lunn.ch> Cc: Srinivas Kandagatla <srinivas.kandaga...@linaro.org> Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org> Cc: Bartosz Golaszewski <b...@bgdev.pl> Cc: Arnd Bergmann <a...@arndb.de> Signed-off-by: Bartosz Golaszewski <bgolaszew...@baylibre.com> [Bartosz: backported the patch to older branches] Signed-off-by: Bartosz Golaszewski <bgolaszew...@baylibre.com> Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> --- drivers/misc/eeprom/at24.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/misc/eeprom/at24.c +++ b/drivers/misc/eeprom/at24.c @@ -834,7 +834,7 @@ static int at24_probe(struct i2c_client at24->nvmem_config.name = dev_name(&client->dev); at24->nvmem_config.dev = &client->dev; at24->nvmem_config.read_only = !writable; - at24->nvmem_config.root_only = true; + at24->nvmem_config.root_only = !(chip.flags & AT24_FLAG_IRUGO); at24->nvmem_config.owner = THIS_MODULE; at24->nvmem_config.compat = true; at24->nvmem_config.base_dev = &client->dev;