extcon: palmas: Fix boot up state of VBUS when using GPIO detection
authorRoger Quadros <[email protected]>
Wed, 15 Jun 2016 08:12:05 +0000 (11:12 +0300)
committerChanwoo Choi <[email protected]>
Wed, 15 Jun 2016 08:17:22 +0000 (17:17 +0900)
If USB cable is connected prior to boot, we don't get any interrupts
so we must manually check the VBUS state and report it during probe.
If we don't do it then USB controller will never know that peripheral
cable was connected till the user unplugs and replugs the cable.

Fixes: b7aad8e2685b ("extcon: palmas: Add the support for VBUS detection by using GPIO")
Cc: [email protected]
Signed-off-by: Roger Quadros <[email protected]>
Signed-off-by: Chanwoo Choi <[email protected]>
drivers/extcon/extcon-palmas.c

index 8b3226dca1d9d25e004bbb2a030a7d77e9ff48d2..caff46c0e214bd3e18fda8ccbd7949d5c09ea00b 100644 (file)
@@ -360,6 +360,8 @@ static int palmas_usb_probe(struct platform_device *pdev)
 
        palmas_enable_irq(palmas_usb);
        /* perform initial detection */
+       if (palmas_usb->enable_gpio_vbus_detection)
+               palmas_vbus_irq_handler(palmas_usb->gpio_vbus_irq, palmas_usb);
        palmas_gpio_id_detect(&palmas_usb->wq_detectid.work);
        device_set_wakeup_capable(&pdev->dev, true);
        return 0;