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 */ |
46 | |