Merge tag 'mips_5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux
[linux-2.6-microblaze.git] / include / linux / mfd / max77693-common.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Common data shared between Maxim 77693 and 77843 drivers
4  *
5  * Copyright (C) 2015 Samsung Electronics
6  */
7
8 #ifndef __LINUX_MFD_MAX77693_COMMON_H
9 #define __LINUX_MFD_MAX77693_COMMON_H
10
11 enum max77693_types {
12         TYPE_MAX77693_UNKNOWN,
13         TYPE_MAX77693,
14         TYPE_MAX77843,
15
16         TYPE_MAX77693_NUM,
17 };
18
19 /*
20  * Shared also with max77843.
21  */
22 struct max77693_dev {
23         struct device *dev;
24         struct i2c_client *i2c;         /* 0xCC , PMIC, Charger, Flash LED */
25         struct i2c_client *i2c_muic;    /* 0x4A , MUIC */
26         struct i2c_client *i2c_haptic;  /* MAX77693: 0x90 , Haptic */
27         struct i2c_client *i2c_chg;     /* MAX77843: 0xD2, Charger */
28
29         enum max77693_types type;
30
31         struct regmap *regmap;
32         struct regmap *regmap_muic;
33         struct regmap *regmap_haptic;   /* Only MAX77693 */
34         struct regmap *regmap_chg;      /* Only MAX77843 */
35
36         struct regmap_irq_chip_data *irq_data_led;
37         struct regmap_irq_chip_data *irq_data_topsys;
38         struct regmap_irq_chip_data *irq_data_chg; /* Only MAX77693 */
39         struct regmap_irq_chip_data *irq_data_muic;
40
41         int irq;
42 };
43
44
45 #endif /*  __LINUX_MFD_MAX77693_COMMON_H */