#include <linux/err.h>
#include <linux/i2c.h>
#include <linux/module.h>
#include <linux/pm_runtime.h>
#include <linux/regmap.h>
#include <linux/regulator/consumer.h>
#include <linux/slab.h>
#include <linux/of.h>
#include <linux/mfd/arizona/core.h>
#include "arizona.h"
static int arizona_i2c_probe(struct i2c_client *i2c)
{ … }
static void arizona_i2c_remove(struct i2c_client *i2c)
{ … }
static const struct i2c_device_id arizona_i2c_id[] = …;
MODULE_DEVICE_TABLE(i2c, arizona_i2c_id);
#ifdef CONFIG_OF
static const struct of_device_id arizona_i2c_of_match[] = …;
MODULE_DEVICE_TABLE(of, arizona_i2c_of_match);
#endif
static struct i2c_driver arizona_i2c_driver = …;
module_i2c_driver(…) …;
MODULE_SOFTDEP(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;