Message ID | 585A2DBB.8070504@samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On 21 December 2016 at 15:22, Chanwoo Choi <cw00.choi@samsung.com> wrote: > Hi, > > On 2016년 12월 21일 15:10, Baolin Wang wrote: >> According to the documentation, we should set the EXTCON_USB when >> one SDP charger connector was reported. >> >> Signed-off-by: Baolin Wang <baolin.wang@linaro.org> >> --- >> drivers/extcon/extcon-axp288.c | 7 ++++++- >> 1 file changed, 6 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/extcon/extcon-axp288.c b/drivers/extcon/extcon-axp288.c >> index 42f41e8..4490726 100644 >> --- a/drivers/extcon/extcon-axp288.c >> +++ b/drivers/extcon/extcon-axp288.c >> @@ -102,6 +102,7 @@ enum axp288_extcon_irq { >> }; >> >> static const unsigned int axp288_extcon_cables[] = { >> + EXTCON_USB, >> EXTCON_CHG_USB_SDP, >> EXTCON_CHG_USB_CDP, >> EXTCON_CHG_USB_DCP, >> @@ -225,8 +226,12 @@ static int axp288_handle_chrg_det_event(struct axp288_extcon_info *info) >> vbus_attach ? USB_EVENT_VBUS : USB_EVENT_NONE, NULL); >> } >> >> - if (notify_charger) >> + if (notify_charger) { >> extcon_set_state_sync(info->edev, cable, vbus_attach); >> + if (cable == EXTCON_CHG_USB_SDP) >> + extcon_set_state_sync(info->edev, EXTCON_USB, >> + vbus_attach); >> + } >> >> /* Clear the flags on disconnect event */ >> if (!vbus_attach) >> > > The extcon-axp288.c driver has some patches on extcon-next[1] branch. > [1] https://git.kernel.org/cgit/linux/kernel/git/chanwoo/extcon.git/log/?h=extcon-next > > I rework your patch on extcon-next branch as following: > If you ok, I'll merge it for v4.11. It is okay for me. Thanks. > > commit 1a96f92bdfab86d0b634e56092f543cad348fd0b > Refs: extcon-next, extcon-next-for-4.10-15-g1a96f92bdfab > Author: Baolin Wang <baolin.wang@linaro.org> > AuthorDate: Wed Dec 21 15:51:26 2016 +0900 > Commit: Chanwoo Choi <cw00.choi@samsung.com> > CommitDate: Wed Dec 21 15:52:00 2016 +0900 > > extcon: axp288: Set EXTCON_USB when EXTCON_CHG_USB_SDP was set > > According to the documentation, we should set the EXTCON_USB when > one SDP charger connector was reported. > > Signed-off-by: Baolin Wang <baolin.wang@linaro.org> > Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> > --- > drivers/extcon/extcon-axp288.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/extcon/extcon-axp288.c b/drivers/extcon/extcon-axp288.c > index 3e145e2a4860..f4fd03e58e37 100644 > --- a/drivers/extcon/extcon-axp288.c > +++ b/drivers/extcon/extcon-axp288.c > @@ -96,6 +96,7 @@ enum axp288_extcon_irq { > EXTCON_CHG_USB_SDP, > EXTCON_CHG_USB_CDP, > EXTCON_CHG_USB_DCP, > + EXTCON_USB, > EXTCON_NONE, > }; > > @@ -206,8 +207,15 @@ static int axp288_handle_chrg_det_event(struct axp288_extcon_info *info) > : EXTCON_GPIO_MUX_SEL_PMIC); > > extcon_set_state_sync(info->edev, info->previous_cable, false); > + if (info->previous_cable == EXTCON_CHG_USB_SDP) > + extcon_set_state_sync(info->edev, EXTCON_USB, false); > + > if (vbus_attach) { > extcon_set_state_sync(info->edev, cable, vbus_attach); > + if (cable == EXTCON_CHG_USB_SDP) > + extcon_set_state_sync(info->edev, EXTCON_USB, > + vbus_attach); > + > info->previous_cable = cable; > } > > -- > Regards, > Chanwoo Choi
Hi, On 2016년 12월 21일 16:55, Baolin Wang wrote: > Hi, > > On 21 December 2016 at 15:22, Chanwoo Choi <cw00.choi@samsung.com> wrote: >> Hi, >> >> On 2016년 12월 21일 15:10, Baolin Wang wrote: >>> According to the documentation, we should set the EXTCON_USB when >>> one SDP charger connector was reported. >>> >>> Signed-off-by: Baolin Wang <baolin.wang@linaro.org> >>> --- >>> drivers/extcon/extcon-axp288.c | 7 ++++++- >>> 1 file changed, 6 insertions(+), 1 deletion(-) >>> >>> diff --git a/drivers/extcon/extcon-axp288.c b/drivers/extcon/extcon-axp288.c >>> index 42f41e8..4490726 100644 >>> --- a/drivers/extcon/extcon-axp288.c >>> +++ b/drivers/extcon/extcon-axp288.c >>> @@ -102,6 +102,7 @@ enum axp288_extcon_irq { >>> }; >>> >>> static const unsigned int axp288_extcon_cables[] = { >>> + EXTCON_USB, >>> EXTCON_CHG_USB_SDP, >>> EXTCON_CHG_USB_CDP, >>> EXTCON_CHG_USB_DCP, >>> @@ -225,8 +226,12 @@ static int axp288_handle_chrg_det_event(struct axp288_extcon_info *info) >>> vbus_attach ? USB_EVENT_VBUS : USB_EVENT_NONE, NULL); >>> } >>> >>> - if (notify_charger) >>> + if (notify_charger) { >>> extcon_set_state_sync(info->edev, cable, vbus_attach); >>> + if (cable == EXTCON_CHG_USB_SDP) >>> + extcon_set_state_sync(info->edev, EXTCON_USB, >>> + vbus_attach); >>> + } >>> >>> /* Clear the flags on disconnect event */ >>> if (!vbus_attach) >>> >> >> The extcon-axp288.c driver has some patches on extcon-next[1] branch. >> [1] https://git.kernel.org/cgit/linux/kernel/git/chanwoo/extcon.git/log/?h=extcon-next >> >> I rework your patch on extcon-next branch as following: >> If you ok, I'll merge it for v4.11. > > It is okay for me. Thanks. Applied it. Thanks. [snip]
diff --git a/drivers/extcon/extcon-axp288.c b/drivers/extcon/extcon-axp288.c index 3e145e2a4860..f4fd03e58e37 100644 --- a/drivers/extcon/extcon-axp288.c +++ b/drivers/extcon/extcon-axp288.c @@ -96,6 +96,7 @@ enum axp288_extcon_irq { EXTCON_CHG_USB_SDP, EXTCON_CHG_USB_CDP, EXTCON_CHG_USB_DCP, + EXTCON_USB, EXTCON_NONE, }; @@ -206,8 +207,15 @@ static int axp288_handle_chrg_det_event(struct axp288_extcon_info *info) : EXTCON_GPIO_MUX_SEL_PMIC); extcon_set_state_sync(info->edev, info->previous_cable, false); + if (info->previous_cable == EXTCON_CHG_USB_SDP) + extcon_set_state_sync(info->edev, EXTCON_USB, false); + if (vbus_attach) { extcon_set_state_sync(info->edev, cable, vbus_attach); + if (cable == EXTCON_CHG_USB_SDP) + extcon_set_state_sync(info->edev, EXTCON_USB, + vbus_attach); + info->previous_cable = cable; }