diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-02-13 18:50:11 -0500 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-02-13 18:50:11 -0500 |
| commit | 40262275f0b1bd2f0cbf9453c89c8a16025932ef (patch) | |
| tree | d32eb0d7ae1197eafd200505bcfdec6229665bc0 /include/linux/mfd | |
| parent | 19d3243e797c2abc02a214d3cec9fefa5dc048ff (diff) | |
| parent | af5eb1a13273447c5708cd5425696f3b6f79dd9b (diff) | |
Merge tag 'extcon-for-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into char-misc-next
Chanwoo writes:
extcon: updates for v3.9
This patchset add a few new feature of extcon-max8997
and fix minor issue of extcon-max8997/77693.
Update extcon-max8997 driver
- Consolidate duplicate code
- Set default uart/usb path for internal line of muic device
- Set default ADC debounce time
- Use wq to check cable state after certain delay
- Code clean to move defined constant to header file
- Make max8997_extcon_cable static
Update extcon-max77693 driver
- Make max77693_extcon_cable static
Diffstat (limited to 'include/linux/mfd')
| -rw-r--r-- | include/linux/mfd/max8997-private.h | 64 | ||||
| -rw-r--r-- | include/linux/mfd/max8997.h | 25 |
2 files changed, 74 insertions, 15 deletions
diff --git a/include/linux/mfd/max8997-private.h b/include/linux/mfd/max8997-private.h index 6ae21bf47d64..fb465dfbb59e 100644 --- a/include/linux/mfd/max8997-private.h +++ b/include/linux/mfd/max8997-private.h | |||
| @@ -194,6 +194,70 @@ enum max8997_muic_reg { | |||
| 194 | MAX8997_MUIC_REG_END = 0xf, | 194 | MAX8997_MUIC_REG_END = 0xf, |
| 195 | }; | 195 | }; |
| 196 | 196 | ||
| 197 | /* MAX8997-MUIC STATUS1 register */ | ||
| 198 | #define STATUS1_ADC_SHIFT 0 | ||
| 199 | #define STATUS1_ADCLOW_SHIFT 5 | ||
| 200 | #define STATUS1_ADCERR_SHIFT 6 | ||
| 201 | #define STATUS1_ADC_MASK (0x1f << STATUS1_ADC_SHIFT) | ||
| 202 | #define STATUS1_ADCLOW_MASK (0x1 << STATUS1_ADCLOW_SHIFT) | ||
| 203 | #define STATUS1_ADCERR_MASK (0x1 << STATUS1_ADCERR_SHIFT) | ||
| 204 | |||
| 205 | /* MAX8997-MUIC STATUS2 register */ | ||
| 206 | #define STATUS2_CHGTYP_SHIFT 0 | ||
| 207 | #define STATUS2_CHGDETRUN_SHIFT 3 | ||
| 208 | #define STATUS2_DCDTMR_SHIFT 4 | ||
| 209 | #define STATUS2_DBCHG_SHIFT 5 | ||
| 210 | #define STATUS2_VBVOLT_SHIFT 6 | ||
| 211 | #define STATUS2_CHGTYP_MASK (0x7 << STATUS2_CHGTYP_SHIFT) | ||
| 212 | #define STATUS2_CHGDETRUN_MASK (0x1 << STATUS2_CHGDETRUN_SHIFT) | ||
| 213 | #define STATUS2_DCDTMR_MASK (0x1 << STATUS2_DCDTMR_SHIFT) | ||
| 214 | #define STATUS2_DBCHG_MASK (0x1 << STATUS2_DBCHG_SHIFT) | ||
| 215 | #define STATUS2_VBVOLT_MASK (0x1 << STATUS2_VBVOLT_SHIFT) | ||
| 216 | |||
| 217 | /* MAX8997-MUIC STATUS3 register */ | ||
| 218 | #define STATUS3_OVP_SHIFT 2 | ||
| 219 | #define STATUS3_OVP_MASK (0x1 << STATUS3_OVP_SHIFT) | ||
| 220 | |||
| 221 | /* MAX8997-MUIC CONTROL1 register */ | ||
| 222 | #define COMN1SW_SHIFT 0 | ||
| 223 | #define COMP2SW_SHIFT 3 | ||
| 224 | #define COMN1SW_MASK (0x7 << COMN1SW_SHIFT) | ||
| 225 | #define COMP2SW_MASK (0x7 << COMP2SW_SHIFT) | ||
| 226 | #define COMP_SW_MASK (COMP2SW_MASK | COMN1SW_MASK) | ||
| 227 | |||
| 228 | #define CONTROL1_SW_USB ((1 << COMP2SW_SHIFT) \ | ||
| 229 | | (1 << COMN1SW_SHIFT)) | ||
| 230 | #define CONTROL1_SW_AUDIO ((2 << COMP2SW_SHIFT) \ | ||
| 231 | | (2 << COMN1SW_SHIFT)) | ||
| 232 | #define CONTROL1_SW_UART ((3 << COMP2SW_SHIFT) \ | ||
| 233 | | (3 << COMN1SW_SHIFT)) | ||
| 234 | #define CONTROL1_SW_OPEN ((0 << COMP2SW_SHIFT) \ | ||
| 235 | | (0 << COMN1SW_SHIFT)) | ||
| 236 | |||
| 237 | #define CONTROL2_LOWPWR_SHIFT (0) | ||
| 238 | #define CONTROL2_ADCEN_SHIFT (1) | ||
| 239 | #define CONTROL2_CPEN_SHIFT (2) | ||
| 240 | #define CONTROL2_SFOUTASRT_SHIFT (3) | ||
| 241 | #define CONTROL2_SFOUTORD_SHIFT (4) | ||
| 242 | #define CONTROL2_ACCDET_SHIFT (5) | ||
| 243 | #define CONTROL2_USBCPINT_SHIFT (6) | ||
| 244 | #define CONTROL2_RCPS_SHIFT (7) | ||
| 245 | #define CONTROL2_LOWPWR_MASK (0x1 << CONTROL2_LOWPWR_SHIFT) | ||
| 246 | #define CONTROL2_ADCEN_MASK (0x1 << CONTROL2_ADCEN_SHIFT) | ||
| 247 | #define CONTROL2_CPEN_MASK (0x1 << CONTROL2_CPEN_SHIFT) | ||
| 248 | #define CONTROL2_SFOUTASRT_MASK (0x1 << CONTROL2_SFOUTASRT_SHIFT) | ||
| 249 | #define CONTROL2_SFOUTORD_MASK (0x1 << CONTROL2_SFOUTORD_SHIFT) | ||
| 250 | #define CONTROL2_ACCDET_MASK (0x1 << CONTROL2_ACCDET_SHIFT) | ||
| 251 | #define CONTROL2_USBCPINT_MASK (0x1 << CONTROL2_USBCPINT_SHIFT) | ||
| 252 | #define CONTROL2_RCPS_MASK (0x1 << CONTROL2_RCPS_SHIFT) | ||
| 253 | |||
| 254 | #define CONTROL3_JIGSET_SHIFT (0) | ||
| 255 | #define CONTROL3_BTLDSET_SHIFT (2) | ||
| 256 | #define CONTROL3_ADCDBSET_SHIFT (4) | ||
| 257 | #define CONTROL3_JIGSET_MASK (0x3 << CONTROL3_JIGSET_SHIFT) | ||
| 258 | #define CONTROL3_BTLDSET_MASK (0x3 << CONTROL3_BTLDSET_SHIFT) | ||
| 259 | #define CONTROL3_ADCDBSET_MASK (0x3 << CONTROL3_ADCDBSET_SHIFT) | ||
| 260 | |||
| 197 | enum max8997_haptic_reg { | 261 | enum max8997_haptic_reg { |
| 198 | MAX8997_HAPTIC_REG_GENERAL = 0x00, | 262 | MAX8997_HAPTIC_REG_GENERAL = 0x00, |
| 199 | MAX8997_HAPTIC_REG_CONF1 = 0x01, | 263 | MAX8997_HAPTIC_REG_CONF1 = 0x01, |
diff --git a/include/linux/mfd/max8997.h b/include/linux/mfd/max8997.h index 1d4a4fe6ac33..cf815577bd68 100644 --- a/include/linux/mfd/max8997.h +++ b/include/linux/mfd/max8997.h | |||
| @@ -78,21 +78,6 @@ struct max8997_regulator_data { | |||
| 78 | struct device_node *reg_node; | 78 | struct device_node *reg_node; |
| 79 | }; | 79 | }; |
| 80 | 80 | ||
| 81 | enum max8997_muic_usb_type { | ||
| 82 | MAX8997_USB_HOST, | ||
| 83 | MAX8997_USB_DEVICE, | ||
| 84 | }; | ||
| 85 | |||
| 86 | enum max8997_muic_charger_type { | ||
| 87 | MAX8997_CHARGER_TYPE_NONE = 0, | ||
| 88 | MAX8997_CHARGER_TYPE_USB, | ||
| 89 | MAX8997_CHARGER_TYPE_DOWNSTREAM_PORT, | ||
| 90 | MAX8997_CHARGER_TYPE_DEDICATED_CHG, | ||
| 91 | MAX8997_CHARGER_TYPE_500MA, | ||
| 92 | MAX8997_CHARGER_TYPE_1A, | ||
| 93 | MAX8997_CHARGER_TYPE_DEAD_BATTERY = 7, | ||
| 94 | }; | ||
| 95 | |||
| 96 | struct max8997_muic_reg_data { | 81 | struct max8997_muic_reg_data { |
| 97 | u8 addr; | 82 | u8 addr; |
| 98 | u8 data; | 83 | u8 data; |
| @@ -107,6 +92,16 @@ struct max8997_muic_reg_data { | |||
| 107 | struct max8997_muic_platform_data { | 92 | struct max8997_muic_platform_data { |
| 108 | struct max8997_muic_reg_data *init_data; | 93 | struct max8997_muic_reg_data *init_data; |
| 109 | int num_init_data; | 94 | int num_init_data; |
| 95 | |||
| 96 | /* Check cable state after certain delay */ | ||
| 97 | int detcable_delay_ms; | ||
| 98 | |||
| 99 | /* | ||
| 100 | * Default usb/uart path whether UART/USB or AUX_UART/AUX_USB | ||
| 101 | * h/w path of COMP2/COMN1 on CONTROL1 register. | ||
| 102 | */ | ||
| 103 | int path_usb; | ||
| 104 | int path_uart; | ||
| 110 | }; | 105 | }; |
| 111 | 106 | ||
| 112 | enum max8997_haptic_motor_type { | 107 | enum max8997_haptic_motor_type { |
