On 08/12/15 14:05, Andrew Lunn wrote:
The setup() callback is not used by any in kernel code. Remove it.
Any new code which requires access to the eeprom can use the NVMEM
API.

Signed-off-by: Andrew Lunn <and...@lunn.ch>
---
  drivers/misc/eeprom/at25.c | 26 --------------------------
  include/linux/spi/eeprom.h |  2 --
  2 files changed, 28 deletions(-)


This is nice, The memory_accessor users can still use the nvmem_device_get() by passing the nvmem provider device_name which would give a handle to nvmem_device.


--srini
diff --git a/drivers/misc/eeprom/at25.c b/drivers/misc/eeprom/at25.c
index f850ef556bcc..4732f6997289 100644
--- a/drivers/misc/eeprom/at25.c
+++ b/drivers/misc/eeprom/at25.c
@@ -29,7 +29,6 @@

  struct at25_data {
        struct spi_device       *spi;
-       struct memory_accessor  mem;
        struct mutex            lock;
        struct spi_eeprom       chip;
        struct bin_attribute    bin;
@@ -281,26 +280,6 @@ at25_bin_write(struct file *filp, struct kobject *kobj,

  /*-------------------------------------------------------------------------*/

-/* Let in-kernel code access the eeprom data. */
-
-static ssize_t at25_mem_read(struct memory_accessor *mem, char *buf,
-                        off_t offset, size_t count)
-{
-       struct at25_data *at25 = container_of(mem, struct at25_data, mem);
-
-       return at25_ee_read(at25, buf, offset, count);
-}
-
-static ssize_t at25_mem_write(struct memory_accessor *mem, const char *buf,
-                         off_t offset, size_t count)
-{
-       struct at25_data *at25 = container_of(mem, struct at25_data, mem);
-
-       return at25_ee_write(at25, buf, offset, count);
-}
-
-/*-------------------------------------------------------------------------*/
-
  static int at25_fw_to_chip(struct device *dev, struct spi_eeprom *chip)
  {
        u32 val;
@@ -415,22 +394,17 @@ static int at25_probe(struct spi_device *spi)
        at25->bin.attr.name = "eeprom";
        at25->bin.attr.mode = S_IRUSR;
        at25->bin.read = at25_bin_read;
-       at25->mem.read = at25_mem_read;

        at25->bin.size = at25->chip.byte_len;
        if (!(chip.flags & EE_READONLY)) {
                at25->bin.write = at25_bin_write;
                at25->bin.attr.mode |= S_IWUSR;
-               at25->mem.write = at25_mem_write;
        }

        err = sysfs_create_bin_file(&spi->dev.kobj, &at25->bin);
        if (err)
                return err;

-       if (chip.setup)
-               chip.setup(&at25->mem, chip.context);
-
        dev_info(&spi->dev, "%Zd %s %s eeprom%s, pagesize %u\n",
                (at25->bin.size < 1024)
                        ? at25->bin.size
diff --git a/include/linux/spi/eeprom.h b/include/linux/spi/eeprom.h
index 403e007aef68..e34e169f9dcb 100644
--- a/include/linux/spi/eeprom.h
+++ b/include/linux/spi/eeprom.h
@@ -30,8 +30,6 @@ struct spi_eeprom {
         */
  #define EE_INSTR_BIT3_IS_ADDR 0x0010

-       /* for exporting this chip's data to other kernel code */
-       void (*setup)(struct memory_accessor *mem, void *context);
        void *context;
  };


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

Reply via email to