extcon: arizona: Remove the usage of extcon_update_state()
authorChanwoo Choi <cw00.choi@samsung.com>
Thu, 30 Jun 2016 17:36:49 +0000 (02:36 +0900)
committerKishon Vijay Abraham I <kishon@ti.com>
Sat, 10 Sep 2016 11:18:45 +0000 (16:48 +0530)
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>
drivers/extcon/extcon-arizona.c

index be4d93d4c5467628727427c333c2ad5211f3e0ea..493bd9fe5f6770bc7c320c2476cec1d7d08e49bb 100644 (file)
@@ -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,