]>
Commit | Line | Data |
---|---|---|
83871c00 CC |
1 | /* |
2 | * max77693.h - Driver for the Maxim 77693 | |
3 | * | |
4 | * Copyright (C) 2012 Samsung Electrnoics | |
5 | * SangYoung Son <hello.son@samsung.com> | |
6 | * | |
7 | * This program is not provided / owned by Maxim Integrated Products. | |
8 | * | |
9 | * This program is free software; you can redistribute it and/or modify | |
10 | * it under the terms of the GNU General Public License as published by | |
11 | * the Free Software Foundation; either version 2 of the License, or | |
12 | * (at your option) any later version. | |
13 | * | |
14 | * This program is distributed in the hope that it will be useful, | |
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | * GNU General Public License for more details. | |
18 | * | |
19 | * You should have received a copy of the GNU General Public License | |
20 | * along with this program; if not, write to the Free Software | |
21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
22 | * | |
23 | * This driver is based on max8997.h | |
24 | * | |
25 | * MAX77693 has PMIC, Charger, Flash LED, Haptic, MUIC devices. | |
26 | * The devices share the same I2C bus and included in | |
27 | * this mfd driver. | |
28 | */ | |
29 | ||
30 | #ifndef __LINUX_MFD_MAX77693_H | |
31 | #define __LINUX_MFD_MAX77693_H | |
32 | ||
eb2d90c0 | 33 | /* MAX77693 regulator IDs */ |
80b022e2 JL |
34 | enum max77693_regulators { |
35 | MAX77693_ESAFEOUT1 = 0, | |
36 | MAX77693_ESAFEOUT2, | |
37 | MAX77693_CHARGER, | |
38 | MAX77693_REG_MAX, | |
39 | }; | |
40 | ||
f8457d57 CC |
41 | struct max77693_reg_data { |
42 | u8 addr; | |
43 | u8 data; | |
44 | }; | |
45 | ||
46 | struct max77693_muic_platform_data { | |
47 | struct max77693_reg_data *init_data; | |
48 | int num_init_data; | |
297620fd CC |
49 | |
50 | int detcable_delay_ms; | |
2b75799f CC |
51 | |
52 | /* | |
53 | * Default usb/uart path whether UART/USB or AUX_UART/AUX_USB | |
54 | * h/w path of COMP2/COMN1 on CONTROL1 register. | |
55 | */ | |
56 | int path_usb; | |
57 | int path_uart; | |
f8457d57 CC |
58 | }; |
59 | ||
a0bc6072 JA |
60 | /* MAX77693 led flash */ |
61 | ||
62 | /* triggers */ | |
63 | enum max77693_led_trigger { | |
64 | MAX77693_LED_TRIG_OFF, | |
65 | MAX77693_LED_TRIG_FLASH, | |
66 | MAX77693_LED_TRIG_TORCH, | |
67 | MAX77693_LED_TRIG_EXT, | |
68 | MAX77693_LED_TRIG_SOFT, | |
69 | }; | |
70 | ||
71 | /* trigger types */ | |
72 | enum max77693_led_trigger_type { | |
73 | MAX77693_LED_TRIG_TYPE_EDGE, | |
74 | MAX77693_LED_TRIG_TYPE_LEVEL, | |
75 | }; | |
76 | ||
77 | /* boost modes */ | |
78 | enum max77693_led_boost_mode { | |
79 | MAX77693_LED_BOOST_NONE, | |
80 | MAX77693_LED_BOOST_ADAPTIVE, | |
81 | MAX77693_LED_BOOST_FIXED, | |
82 | }; | |
83 | ||
a0bc6072 JA |
84 | /* MAX77693 */ |
85 | ||
83871c00 | 86 | struct max77693_platform_data { |
f8457d57 CC |
87 | /* muic data */ |
88 | struct max77693_muic_platform_data *muic_data; | |
a0bc6072 | 89 | struct max77693_led_platform_data *led_data; |
83871c00 CC |
90 | }; |
91 | #endif /* __LINUX_MFD_MAX77693_H */ |