Skip to content

Commit

Permalink
extcon: max77693: Fix bug when detecting MHL/Dock-Audio with USB/TA c…
Browse files Browse the repository at this point in the history
…able

This patch fix bug that muic couldn't detect MHL/Dock-Audio with USB/TA
cable on exception situation. I explain detail case on following:

When MHL(with USB/TA cable) or Dock-Audio with USB/TA cable is attached,
the MUIC device happen following two interrupt.
- 'MAX77693_MUIC_IRQ_INT1_ADC' for detecting MHL/Dock-Audio.
- 'MAX77693_MUIC_IRQ_INT2_CHGTYP' for detecting USB/TA cable connected to
MHL/Dock-Audio. Always, happen eariler MAX77693_MUIC_IRQ_INT1_ADC interrupt
than MAX77693_MUIC_IRQ_INT2_CHGTYP interrupt.

If user attach MHL with USB/TA cable and immediately detach MHL with USB/TA
cable before MAX77693_MUIC_IRQ_INT2_CHGTYP interrupt is happened, USB/TA
connected to MHL cable remain connected state to target. But USB/TA connected
to MHL cable isn't connected to target. user be faced with unusual action.
So, driver should check this situation in spite of that, previous charger type
is N/A.

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Myungjoo Ham <myungjoo.ham@samsung.com>
  • Loading branch information
Chanwoo Choi committed Jan 15, 2013
1 parent 2b75799 commit 0e2738f
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions drivers/extcon/extcon-max77693.c
Original file line number Diff line number Diff line change
Expand Up @@ -737,6 +737,7 @@ static int max77693_muic_chg_handler(struct max77693_muic_info *info)

switch (chg_type) {
case MAX77693_CHARGER_TYPE_USB:
case MAX77693_CHARGER_TYPE_NONE:
/*
* MHL_TA(USB/TA) with MHL cable
* - MHL cable include two port(HDMI line and separate micro
Expand Down Expand Up @@ -778,6 +779,25 @@ static int max77693_muic_chg_handler(struct max77693_muic_info *info)
goto out;
}

/*
* When MHL(with USB/TA cable) or Dock-Audio with USB/TA cable
* is attached, muic device happen below two interrupt.
* - 'MAX77693_MUIC_IRQ_INT1_ADC' for detecting MHL/Dock-Audio.
* - 'MAX77693_MUIC_IRQ_INT2_CHGTYP' for detecting USB/TA cable
* connected to MHL or Dock-Audio.
* Always, happen eariler MAX77693_MUIC_IRQ_INT1_ADC interrupt
* than MAX77693_MUIC_IRQ_INT2_CHGTYP interrupt.
*
* If user attach MHL (with USB/TA cable and immediately detach
* MHL with USB/TA cable before MAX77693_MUIC_IRQ_INT2_CHGTYP
* interrupt is happened, USB/TA cable remain connected state to
* target. But USB/TA cable isn't connected to target. The user
* be face with unusual action. So, driver should check this
* situation in spite of, that previous charger type is N/A.
*/
if (chg_type == MAX77693_CHARGER_TYPE_NONE)
break;

/* Only USB cable, PATH:AP_USB */
ret = max77693_muic_set_path(info, CONTROL1_SW_USB, attached);
if (ret < 0)
Expand Down

0 comments on commit 0e2738f

Please sign in to comment.