#include <linux/acpi.h>
#include <linux/interrupt.h>
#include <linux/i2c.h>
#include <linux/mfd/core.h>
#include <linux/mfd/intel_soc_pmic.h>
#include <linux/module.h>
#include <linux/regmap.h>
#define CHTDC_TI_IRQLVL1 …
#define CHTDC_TI_MASK_IRQLVL1 …
enum { … };
static const struct resource power_button_resources[] = …;
static const struct resource thermal_resources[] = …;
static const struct resource adc_resources[] = …;
static const struct resource pwrsrc_resources[] = …;
static const struct resource battery_resources[] = …;
static struct mfd_cell chtdc_ti_dev[] = …;
static const struct regmap_config chtdc_ti_regmap_config = …;
static const struct regmap_irq chtdc_ti_irqs[] = …;
static const struct regmap_irq_chip chtdc_ti_irq_chip = …;
static int chtdc_ti_probe(struct i2c_client *i2c)
{ … }
static void chtdc_ti_shutdown(struct i2c_client *i2c)
{ … }
static int chtdc_ti_suspend(struct device *dev)
{ … }
static int chtdc_ti_resume(struct device *dev)
{ … }
static DEFINE_SIMPLE_DEV_PM_OPS(chtdc_ti_pm_ops, chtdc_ti_suspend, chtdc_ti_resume);
static const struct acpi_device_id chtdc_ti_acpi_ids[] = …;
MODULE_DEVICE_TABLE(acpi, chtdc_ti_acpi_ids);
static struct i2c_driver chtdc_ti_i2c_driver = …;
module_i2c_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;