linux/drivers/misc/eeprom/eeprom_93xx46.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Driver for 93xx46 EEPROMs
 *
 * (C) 2011 DENX Software Engineering, Anatolij Gustschin <[email protected]>
 */

#include <linux/array_size.h>
#include <linux/bits.h>
#include <linux/delay.h>
#include <linux/device.h>
#include <linux/gpio/consumer.h>
#include <linux/kstrtox.h>
#include <linux/log2.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/property.h>
#include <linux/slab.h>
#include <linux/spi/spi.h>
#include <linux/string_choices.h>

#include <linux/nvmem-provider.h>

struct eeprom_93xx46_platform_data {};

#define OP_START
#define OP_WRITE
#define OP_READ
#define ADDR_EWDS
#define ADDR_ERAL
#define ADDR_EWEN

struct eeprom_93xx46_devtype_data {};

static const struct eeprom_93xx46_devtype_data at93c46_data =;

static const struct eeprom_93xx46_devtype_data at93c56_data =;

static const struct eeprom_93xx46_devtype_data at93c66_data =;

static const struct eeprom_93xx46_devtype_data atmel_at93c46d_data =;

static const struct eeprom_93xx46_devtype_data microchip_93lc46b_data =;

struct eeprom_93xx46_dev {};

static inline bool has_quirk_single_word_read(struct eeprom_93xx46_dev *edev)
{}

static inline bool has_quirk_instruction_length(struct eeprom_93xx46_dev *edev)
{}

static inline bool has_quirk_extra_read_cycle(struct eeprom_93xx46_dev *edev)
{}

static int eeprom_93xx46_read(void *priv, unsigned int off,
			      void *val, size_t count)
{}

static int eeprom_93xx46_ew(struct eeprom_93xx46_dev *edev, int is_on)
{}

static ssize_t
eeprom_93xx46_write_word(struct eeprom_93xx46_dev *edev,
			 const char *buf, unsigned off)
{}

static int eeprom_93xx46_write(void *priv, unsigned int off,
				   void *val, size_t count)
{}

static int eeprom_93xx46_eral(struct eeprom_93xx46_dev *edev)
{}

static ssize_t erase_store(struct device *dev, struct device_attribute *attr,
			   const char *buf, size_t count)
{}
static DEVICE_ATTR_WO(erase);

static const struct of_device_id eeprom_93xx46_of_table[] =;
MODULE_DEVICE_TABLE(of, eeprom_93xx46_of_table);

static const struct spi_device_id eeprom_93xx46_spi_ids[] =;
MODULE_DEVICE_TABLE(spi, eeprom_93xx46_spi_ids);

static int eeprom_93xx46_probe_fw(struct device *dev)
{}

static int eeprom_93xx46_probe(struct spi_device *spi)
{}

static void eeprom_93xx46_remove(struct spi_device *spi)
{}

static struct spi_driver eeprom_93xx46_driver =;

module_spi_driver();

MODULE_LICENSE();
MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_ALIAS();