Skip to content

Commit

Permalink
extcon: arizona: Retry failed HP measurements
Browse files Browse the repository at this point in the history
We now have mechanisms in place to allow retries so let's use them rather
than guessing.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
  • Loading branch information
Mark Brown committed Jan 23, 2013
1 parent 4e61687 commit e6dd8cf
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions drivers/extcon/extcon-arizona.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@
#include <linux/mfd/arizona/pdata.h>
#include <linux/mfd/arizona/registers.h>

#define ARIZONA_DEFAULT_HP 32

#define ARIZONA_NUM_BUTTONS 6

#define ARIZONA_ACCDET_MODE_MIC 0
Expand Down Expand Up @@ -208,7 +206,7 @@ static int arizona_hpdet_read(struct arizona_extcon_info *info)
if (!(val & ARIZONA_HP_DONE)) {
dev_err(arizona->dev, "HPDET did not complete: %x\n",
val);
val = ARIZONA_DEFAULT_HP;
return -EAGAIN;
}

val &= ARIZONA_HP_LVL_MASK;
Expand All @@ -218,14 +216,14 @@ static int arizona_hpdet_read(struct arizona_extcon_info *info)
if (!(val & ARIZONA_HP_DONE_B)) {
dev_err(arizona->dev, "HPDET did not complete: %x\n",
val);
return ARIZONA_DEFAULT_HP;
return -EAGAIN;
}

ret = regmap_read(arizona->regmap, ARIZONA_HP_DACVAL, &val);
if (ret != 0) {
dev_err(arizona->dev, "Failed to read HP value: %d\n",
ret);
return ARIZONA_DEFAULT_HP;
return -EAGAIN;
}

regmap_read(arizona->regmap, ARIZONA_HEADPHONE_DETECT_1,
Expand Down Expand Up @@ -267,7 +265,7 @@ static int arizona_hpdet_read(struct arizona_extcon_info *info)
if (!(val & ARIZONA_HP_DONE_B)) {
dev_err(arizona->dev, "HPDET did not complete: %x\n",
val);
return ARIZONA_DEFAULT_HP;
return -EAGAIN;
}

val &= ARIZONA_HP_LVL_B_MASK;
Expand Down

0 comments on commit e6dd8cf

Please sign in to comment.