1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * Common data shared between Maxim 77693, 77705 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_MAX77705, 15 TYPE_MAX77843, 16 17 TYPE_MAX77693_NUM, 18 }; 19 20 /* 21 * Shared also with max77843. 22 */ 23 struct max77693_dev { 24 struct device *dev; 25 struct i2c_client *i2c; /* 0xCC , PMIC, Charger, Flash LED */ 26 struct i2c_client *i2c_muic; /* 0x4A , MUIC */ 27 struct i2c_client *i2c_haptic; /* MAX77693: 0x90 , Haptic */ 28 struct i2c_client *i2c_chg; /* MAX77843: 0xD2, Charger */ 29 30 enum max77693_types type; 31 32 struct regmap *regmap; 33 struct regmap *regmap_muic; 34 struct regmap *regmap_haptic; /* Only MAX77693 */ 35 struct regmap *regmap_chg; /* Only MAX77843 */ 36 struct regmap *regmap_leds; /* Only MAX77705 */ 37 38 struct regmap_irq_chip_data *irq_data_led; 39 struct regmap_irq_chip_data *irq_data_topsys; 40 struct regmap_irq_chip_data *irq_data_chg; /* Only MAX77693 */ 41 struct regmap_irq_chip_data *irq_data_muic; 42 43 int irq; 44 }; 45 46 47 #endif /* __LINUX_MFD_MAX77693_COMMON_H */ 48