diff mbox

extcon: palmas: Fix boot up state of VBUS when using GPIO detection

Message ID 1465913075-30166-1-git-send-email-rogerq@ti.com
State Accepted
Commit 62e6d1e59c77316768a663d1328390b4cd33801f
Headers show

Commit Message

Roger Quadros June 14, 2016, 2:04 p.m. UTC
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")
Signed-off-by: Roger Quadros <rogerq@ti.com>

---
 drivers/extcon/extcon-palmas.c | 2 ++
 1 file changed, 2 insertions(+)

-- 
2.7.4

Comments

Roger Quadros June 15, 2016, 6:47 a.m. UTC | #1
On 15/06/16 04:57, Chanwoo Choi wrote:
> On 2016년 06월 14일 23:04, Roger Quadros wrote:

>> 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")

>> Signed-off-by: Roger Quadros <rogerq@ti.com>

>> ---

>>  drivers/extcon/extcon-palmas.c | 2 ++

>>  1 file changed, 2 insertions(+)

>>

>> diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c

>> index 8b3226d..caff46c 100644

>> --- a/drivers/extcon/extcon-palmas.c

>> +++ b/drivers/extcon/extcon-palmas.c

>> @@ -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;

>>

> 

> Applied it.


Thanks. But this is a bug fix and must go in v4.7-rc
as well as stable v4.6+.

Can you please add

Cc: stable@vger.kernel.org # v4.6+

--
cheers,
-roger
diff mbox

Patch

diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c
index 8b3226d..caff46c 100644
--- a/drivers/extcon/extcon-palmas.c
+++ b/drivers/extcon/extcon-palmas.c
@@ -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;