#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/err.h>
#include <linux/slab.h>
#include <linux/mutex.h>
#include <linux/i2c.h>
#include <linux/pmbus.h>
#include "pmbus.h"
struct pmbus_device_info { … };
static const struct i2c_device_id pmbus_id[];
static void pmbus_find_sensor_groups(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int pmbus_identify(struct i2c_client *client,
struct pmbus_driver_info *info)
{ … }
static int pmbus_probe(struct i2c_client *client)
{ … }
static const struct pmbus_device_info pmbus_info_one = …;
static const struct pmbus_device_info pmbus_info_zero = …;
static const struct pmbus_device_info pmbus_info_one_skip = …;
static const struct pmbus_device_info pmbus_info_one_status = …;
static const struct i2c_device_id pmbus_id[] = …;
MODULE_DEVICE_TABLE(i2c, pmbus_id);
static struct i2c_driver pmbus_driver = …;
module_i2c_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_IMPORT_NS(…);