#include <linux/i2c.h>
#include <linux/kernel.h>
#include <linux/mfd/core.h>
#include <linux/module.h>
#include <linux/mod_devicetable.h>
#include <linux/regmap.h>
#define RT5120_REG_INTENABLE …
#define RT5120_REG_INTSTAT …
#define RT5120_REG_FZCMODE …
#define RT5120_INT_HOTDIE …
#define RT5120_INT_PWRKEY_REL …
#define RT5120_INT_PWRKEY_PRESS …
static const struct regmap_range rt5120_rd_yes_ranges[] = …;
static const struct regmap_range rt5120_wr_yes_ranges[] = …;
static const struct regmap_access_table rt5120_rd_table = …;
static const struct regmap_access_table rt5120_wr_table = …;
static const struct regmap_config rt5120_regmap_config = …;
static const struct regmap_irq rt5120_irqs[] = …;
static const struct regmap_irq_chip rt5120_irq_chip = …;
static const struct resource rt5120_regulator_resources[] = …;
static const struct resource rt5120_pwrkey_resources[] = …;
static const struct mfd_cell rt5120_devs[] = …;
static int rt5120_probe(struct i2c_client *i2c)
{ … }
static const struct of_device_id rt5120_device_match_table[] = …;
MODULE_DEVICE_TABLE(of, rt5120_device_match_table);
static struct i2c_driver rt5120_driver = …;
module_i2c_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;