1 /*
2  * Common data shared between Maxim 77693 and 77843 drivers
3  *
4  * Copyright (C) 2015 Samsung Electronics
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  */
11 
12 #ifndef __LINUX_MFD_MAX77693_COMMON_H
13 #define __LINUX_MFD_MAX77693_COMMON_H
14 
15 enum max77693_types {
16 	TYPE_MAX77693_UNKNOWN,
17 	TYPE_MAX77693,
18 	TYPE_MAX77843,
19 
20 	TYPE_MAX77693_NUM,
21 };
22 
23 /*
24  * Shared also with max77843.
25  */
26 struct max77693_dev {
27 	struct device *dev;
28 	struct i2c_client *i2c;		/* 0xCC , PMIC, Charger, Flash LED */
29 	struct i2c_client *i2c_muic;	/* 0x4A , MUIC */
30 	struct i2c_client *i2c_haptic;	/* MAX77693: 0x90 , Haptic */
31 	struct i2c_client *i2c_chg;	/* MAX77843: 0xD2, Charger */
32 
33 	enum max77693_types type;
34 
35 	struct regmap *regmap;
36 	struct regmap *regmap_muic;
37 	struct regmap *regmap_haptic;	/* Only MAX77693 */
38 	struct regmap *regmap_chg;	/* Only MAX77843 */
39 
40 	struct regmap_irq_chip_data *irq_data_led;
41 	struct regmap_irq_chip_data *irq_data_topsys;
42 	struct regmap_irq_chip_data *irq_data_chg; /* Only MAX77693 */
43 	struct regmap_irq_chip_data *irq_data_muic;
44 
45 	int irq;
46 };
47 
48 
49 #endif /*  __LINUX_MFD_MAX77693_COMMON_H */
50