#include <linux/device.h>
#include <linux/module.h>
#include <linux/input.h>
#include <linux/mfd/core.h>
#include <linux/i2c.h>
#include <linux/err.h>
#include <linux/of.h>
#include <linux/mfd/da9052/da9052.h>
#include <linux/mfd/da9052/reg.h>
static inline bool i2c_safe_reg(unsigned char reg)
{ … }
static int da9052_i2c_fix(struct da9052 *da9052, unsigned char reg)
{ … }
static int da9052_i2c_disable_multiwrite(struct da9052 *da9052)
{ … }
static const struct i2c_device_id da9052_i2c_id[] = …;
MODULE_DEVICE_TABLE(i2c, da9052_i2c_id);
#ifdef CONFIG_OF
static const struct of_device_id dialog_dt_ids[] = …;
#endif
static int da9052_i2c_probe(struct i2c_client *client)
{ … }
static void da9052_i2c_remove(struct i2c_client *client)
{ … }
static struct i2c_driver da9052_i2c_driver = …;
static int __init da9052_i2c_init(void)
{ … }
subsys_initcall(da9052_i2c_init);
static void __exit da9052_i2c_exit(void)
{ … }
module_exit(da9052_i2c_exit);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;