summaryrefslogtreecommitdiffstats
path: root/drivers/extcon/extcon-arizona.c
diff options
context:
space:
mode:
authorChanwoo Choi <cw00.choi@samsung.com>2016-06-30 19:36:49 +0200
committerChanwoo Choi <cw00.choi@samsung.com>2016-08-08 03:58:35 +0200
commit5475e6317525b37241766c2e87731fd152e1150b (patch)
tree62e47b8caae41ab60a807d541efec31db82bd046 /drivers/extcon/extcon-arizona.c
parentextcon: arizona: Remove unneeded semi-colon (diff)
downloadlinux-5475e6317525b37241766c2e87731fd152e1150b.tar.xz
linux-5475e6317525b37241766c2e87731fd152e1150b.zip
extcon: arizona: Remove the usage of extcon_update_state()
This patch remvoes the usage of extcon_update_state() because the extcon_update_state() use directly the bit masking calculation to change the state of external connector without the unique id of external connector. It makes the code diffcult to read it. So, this patch uses the extcon_set_cable_state_() instead. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/extcon/extcon-arizona.c')
-rw-r--r--drivers/extcon/extcon-arizona.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/extcon/extcon-arizona.c b/drivers/extcon/extcon-arizona.c
index be4d93d4c546..493bd9fe5f67 100644
--- a/drivers/extcon/extcon-arizona.c
+++ b/drivers/extcon/extcon-arizona.c
@@ -1149,10 +1149,13 @@ static irqreturn_t arizona_jackdet(int irq, void *data)
info->micd_ranges[i].key, 0);
input_sync(info->input);
- ret = extcon_update_state(info->edev, 0xffffffff, 0);
- if (ret != 0)
- dev_err(arizona->dev, "Removal report failed: %d\n",
- ret);
+ for (i = 0; i < ARRAY_SIZE(arizona_cable) - 1; i++) {
+ ret = extcon_set_cable_state_(info->edev,
+ arizona_cable[i], false);
+ if (ret != 0)
+ dev_err(arizona->dev,
+ "Removal report failed: %d\n", ret);
+ }
regmap_update_bits(arizona->regmap,
ARIZONA_JACK_DETECT_DEBOUNCE,