This patches converts the old EEPROM drivers in driver/misc/eeprom to
use the NVMEM framework. These drivers export there content in /sys as
read only to root, since the EEPROM may contain sensitive information.
So the first patch adds a flag so the NVMEM framework will create its
file in /sys as root read only.
To keep backwards compatibility with these older drivers, the contents
of the EEPROM must be exports in sysfs in a file called eeprom in the
devices node in sys, where as the NVMEM places them under class/nvmem.
So add this optional backwards compatible to the framework.
Then convert the at24, at25 and 93xx46 by adding regmap support,
removing each drivers own /sys code and registering with the NVMEM
framework.
AT24 and 93xx46 has been boot tested, at25 compile tested only.
Andrew Lunn (6):
nvmem: Add flag to export NVMEM to root only
nvmem: Add backwards compatibility support for older EEPROM drivers.
eeprom: at24: extend driver to plug into the NVMEM framework
eeprom: at25: Remove in kernel API for accessing the EEPROM
eeprom: at25: extend driver to plug into the NVMEM framework
eeprom: 93xx46: extend driver to plug into the NVMEM framework
drivers/misc/eeprom/Kconfig | 9 +++
drivers/misc/eeprom/at24.c | 119 +++++++++++++++++++----------
drivers/misc/eeprom/at25.c | 147 ++++++++++++++++--------------------
drivers/misc/eeprom/eeprom_93xx46.c | 121 ++++++++++++++++++++++-------
drivers/nvmem/Kconfig | 7 ++
drivers/nvmem/core.c | 132 ++++++++++++++++++++++++++++++--
include/linux/nvmem-provider.h | 11 +++
include/linux/spi/eeprom.h | 2 -
8 files changed, 393 insertions(+), 155 deletions(-)
--