Re: [PATCH 2/6] nvmem: Add backwards compatibility support for older EEPROM drivers.

From: Srinivas Kandagatla
Date: Tue Dec 15 2015 - 05:04:55 EST




On 11/12/15 13:03, Wolfram Sang wrote:
On Tue, Dec 08, 2015 at 03:05:07PM +0100, Andrew Lunn wrote:
Older drivers made an 'eeprom' file available in the /sys device
directory. Have the NVMEM core provide this to retain backwards
compatibility.

Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
---
drivers/nvmem/Kconfig | 7 ++++
drivers/nvmem/core.c | 75 +++++++++++++++++++++++++++++++++++++++---
include/linux/nvmem-provider.h | 10 ++++++
3 files changed, 88 insertions(+), 4 deletions(-)

diff --git a/drivers/nvmem/Kconfig b/drivers/nvmem/Kconfig
index bc4ea585b42e..b4e79ba7d502 100644
--- a/drivers/nvmem/Kconfig
+++ b/drivers/nvmem/Kconfig
@@ -13,6 +13,13 @@ menuconfig NVMEM
If unsure, say no.

if NVMEM
+config NVMEM_COMPAT
+ bool "Enable /sys compatibility with old eeprom drivers"
+ help
+ Older EEPROM drivers, such as AT24, AT25, provide access to
+ the eeprom via a file called "eeprom" in /sys under the
+ device node. Enabling this option makes the NVMEM core
+ provide this file to retain backwards compatibility

I don't like this being a Kconfig option TBH. In most cases, when I read
"retain backwards compatibility" in Kconfig help texts, I keep the
option activated because I don't know the details when exactly it is
safe to disable it. Plus, we have too many Kconfig symbols already.

+1 for not adding new Kconfig here.


I suggest to add this flag to nvmem_config and let the old eeprom
drivers always set this flag because they need to provide this file for
some more time, if not forever. New drivers using the nvmem_layer will
probably not want to set this.

yes, thats my view to, we should move the flag to nvmem_config and let nvmem_register() do what it wants with it, this would avoid adding new api too.

BTW how does this NVMEM framework relate to the memory_accessor
framework. Can it be used to replace it? I think we should keep the
number of eeprom interfaces at a sane level, preferably 1 ;)

Non DT users can still get access to nvmem by passing nvmem provider name to nvmem_device_get(), this should be able to replace the need of memory_accessor.

--srini



Also adding Pantelis to CC who also submitted at24 NVMEM support a while
ago.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/