#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/init.h>
#include <linux/err.h>
#include <linux/slab.h>
#include <linux/i2c.h>
#include <linux/of.h>
#include <linux/interrupt.h>
#include <linux/pm_runtime.h>
#include <linux/mutex.h>
#include <linux/mfd/core.h>
#include <linux/mfd/samsung/core.h>
#include <linux/mfd/samsung/irq.h>
#include <linux/mfd/samsung/s2mpa01.h>
#include <linux/mfd/samsung/s2mps11.h>
#include <linux/mfd/samsung/s2mps13.h>
#include <linux/mfd/samsung/s2mps14.h>
#include <linux/mfd/samsung/s2mps15.h>
#include <linux/mfd/samsung/s2mpu02.h>
#include <linux/mfd/samsung/s5m8767.h>
#include <linux/regmap.h>
static const struct mfd_cell s5m8767_devs[] = …;
static const struct mfd_cell s2mps11_devs[] = …;
static const struct mfd_cell s2mps13_devs[] = …;
static const struct mfd_cell s2mps14_devs[] = …;
static const struct mfd_cell s2mps15_devs[] = …;
static const struct mfd_cell s2mpa01_devs[] = …;
static const struct mfd_cell s2mpu02_devs[] = …;
static const struct of_device_id sec_dt_match[] = …;
MODULE_DEVICE_TABLE(of, sec_dt_match);
static bool s2mpa01_volatile(struct device *dev, unsigned int reg)
{ … }
static bool s2mps11_volatile(struct device *dev, unsigned int reg)
{ … }
static bool s2mpu02_volatile(struct device *dev, unsigned int reg)
{ … }
static const struct regmap_config sec_regmap_config = …;
static const struct regmap_config s2mpa01_regmap_config = …;
static const struct regmap_config s2mps11_regmap_config = …;
static const struct regmap_config s2mps13_regmap_config = …;
static const struct regmap_config s2mps14_regmap_config = …;
static const struct regmap_config s2mps15_regmap_config = …;
static const struct regmap_config s2mpu02_regmap_config = …;
static const struct regmap_config s5m8767_regmap_config = …;
static void sec_pmic_dump_rev(struct sec_pmic_dev *sec_pmic)
{ … }
static void sec_pmic_configure(struct sec_pmic_dev *sec_pmic)
{ … }
static struct sec_platform_data *
sec_pmic_i2c_parse_dt_pdata(struct device *dev)
{ … }
static int sec_pmic_probe(struct i2c_client *i2c)
{ … }
static void sec_pmic_shutdown(struct i2c_client *i2c)
{ … }
static int sec_pmic_suspend(struct device *dev)
{ … }
static int sec_pmic_resume(struct device *dev)
{ … }
static DEFINE_SIMPLE_DEV_PM_OPS(sec_pmic_pm_ops,
sec_pmic_suspend, sec_pmic_resume);
static struct i2c_driver sec_pmic_driver = …;
module_i2c_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;