#include <linux/bits.h>
#include <linux/err.h>
#include <linux/i2c.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of.h>
#include "pmbus.h"
enum chips { … };
#define TPS53647_PAGE_NUM …
#define TPS53676_USER_DATA_03 …
#define TPS53676_MAX_PHASES …
#define TPS53679_PROT_VR12_5MV …
#define TPS53679_PROT_VR12_5_10MV …
#define TPS53679_PROT_VR13_10MV …
#define TPS53679_PROT_IMVP8_5MV …
#define TPS53679_PROT_VR13_5MV …
#define TPS53679_PAGE_NUM …
#define TPS53681_DEVICE_ID …
#define TPS53681_PMBUS_REVISION …
#define TPS53681_MFR_SPECIFIC_20 …
static const struct i2c_device_id tps53679_id[];
static int tps53679_identify_mode(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int tps53679_identify_phases(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int tps53679_identify_chip(struct i2c_client *client,
u8 revision, u16 id)
{ … }
static int tps53679_identify_multiphase(struct i2c_client *client,
struct pmbus_driver_info *info,
int pmbus_rev, int device_id)
{ … }
static int tps53679_identify(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int tps53681_identify(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int tps53676_identify(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int tps53681_read_word_data(struct i2c_client *client, int page,
int phase, int reg)
{ … }
static struct pmbus_driver_info tps53679_info = …;
static int tps53679_probe(struct i2c_client *client)
{ … }
static const struct i2c_device_id tps53679_id[] = …;
MODULE_DEVICE_TABLE(i2c, tps53679_id);
static const struct of_device_id __maybe_unused tps53679_of_match[] = …;
MODULE_DEVICE_TABLE(of, tps53679_of_match);
static struct i2c_driver tps53679_driver = …;
module_i2c_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_IMPORT_NS(…);