From: Li Jun Date: Mon, 4 Sep 2017 15:14:01 +0000 (+0800) Subject: usb: chipidea: do charger detection in vbus session X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=fc5b920c3b9bbe9bf05aeb1c497643608ecb656b;p=linux.git usb: chipidea: do charger detection in vbus session In case the usb phy has the capability to detect usb charger type, do it when vbus is on. Signed-off-by: Li Jun Signed-off-by: Peter Chen --- diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c index fe8a90543ea37..daffa5ed396d0 100644 --- a/drivers/usb/chipidea/udc.c +++ b/drivers/usb/chipidea/udc.c @@ -1526,6 +1526,10 @@ static int ci_udc_vbus_session(struct usb_gadget *_gadget, int is_active) gadget_ready = 1; spin_unlock_irqrestore(&ci->lock, flags); + if (ci->usb_phy) + usb_phy_set_charger_state(ci->usb_phy, is_active ? + USB_CHARGER_PRESENT : USB_CHARGER_ABSENT); + if (gadget_ready) { if (is_active) { pm_runtime_get_sync(&_gadget->dev);