#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/irq.h>
#include <linux/mfd/core.h>
#include <linux/mfd/max77650.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/regmap.h>
#define MAX77650_INT_GPI_F_MSK …
#define MAX77650_INT_GPI_R_MSK …
#define MAX77650_INT_GPI_MSK …
#define MAX77650_INT_nEN_F_MSK …
#define MAX77650_INT_nEN_R_MSK …
#define MAX77650_INT_TJAL1_R_MSK …
#define MAX77650_INT_TJAL2_R_MSK …
#define MAX77650_INT_DOD_R_MSK …
#define MAX77650_INT_THM_MSK …
#define MAX77650_INT_CHG_MSK …
#define MAX77650_INT_CHGIN_MSK …
#define MAX77650_INT_TJ_REG_MSK …
#define MAX77650_INT_CHGIN_CTRL_MSK …
#define MAX77650_INT_SYS_CTRL_MSK …
#define MAX77650_INT_SYS_CNFG_MSK …
#define MAX77650_INT_GLBL_OFFSET …
#define MAX77650_INT_CHG_OFFSET …
#define MAX77650_SBIA_LPM_MASK …
#define MAX77650_SBIA_LPM_DISABLED …
enum { … };
static const struct resource max77650_charger_resources[] = …;
static const struct resource max77650_gpio_resources[] = …;
static const struct resource max77650_onkey_resources[] = …;
static const struct mfd_cell max77650_cells[] = …;
static const struct regmap_irq max77650_irqs[] = …;
static const struct regmap_irq_chip max77650_irq_chip = …;
static const struct regmap_config max77650_regmap_config = …;
static int max77650_i2c_probe(struct i2c_client *i2c)
{ … }
static const struct of_device_id max77650_of_match[] = …;
MODULE_DEVICE_TABLE(of, max77650_of_match);
static struct i2c_driver max77650_i2c_driver = …;
module_i2c_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;