All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bin Liu <b-liu@ti.com>
To: Moreno Bartalucci <moreno.bartalucci@tecnorama.it>
Cc: Tony Lindgren <tony@atomide.com>, Lars Melin <larsm17@gmail.com>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Alessio Igor Bogani <abogani@kernel.org>
Subject: Re: [PATCH] usb-musb: keep VBUS on when device is disconnected
Date: Mon, 15 May 2017 07:24:28 -0500	[thread overview]
Message-ID: <20170515122428.GD651@uda0271908> (raw)
In-Reply-To: <172B0853-86A2-4253-B56D-8F7E716E5E0E@tecnorama.it>

On Mon, May 15, 2017 at 09:07:10AM +0200, Moreno Bartalucci wrote:
> 
> > Il giorno 12 mag 2017, alle ore 17:21, Bin Liu <b-liu@ti.com> ha scritto:
> > 
> > […]
> > 
> > Moreno, would you mind to test the patch below with your modem?
> > 
> > […]
> >> 
> >>> 8< --------------------
> >>> diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
> >>> index 9c7ee26ef388..465281244596 100644
> >>> --- a/drivers/usb/musb/musb_dsps.c
> >>> +++ b/drivers/usb/musb/musb_dsps.c
> >>> @@ -245,9 +245,14 @@ static int dsps_check_status(struct musb *musb, void *unused)
> >>>                dsps_mod_timer_optional(glue);
> >>>                break;
> >>>        case OTG_STATE_A_WAIT_BCON:
> >>> +               /* keep VBUS on for host-only mode */
> >>> +               if (musb->port_mode == MUSB_PORT_MODE_HOST) {
> >>> +                       dsps_mod_timer_optional(glue);
> >>> +                       break;
> >>> +               }
> >>>                musb_writeb(musb->mregs, MUSB_DEVCTL, 0);
> >>>                skip_session = 1;
> >>> -               /* fall */
> >>> +               /* fall through */
> >>> 
> >>>        case OTG_STATE_A_IDLE:
> >>>        case OTG_STATE_B_IDLE:
> 
> Hello Bin,
> 
> I tested the above patch with my device and it seems to work correctly with the current mainline kernel.
> 
> I tested it with my “production” kernel as well (4.9.20) but, for it to work, I had to change it slightly.

Thanks for testing.

> 
> This is what I tested for kernel 4.9.20:
> 
> --- a/drivers/usb/musb/musb_dsps.c	2017-05-15 08:40:23.000000000 +0200
> +++ b/drivers/usb/musb/musb_dsps.c	2017-05-15 08:49:17.000000000 +0200
> @@ -213,6 +213,12 @@ static int dsps_check_status(struct musb
>  				msecs_to_jiffies(wrp->poll_timeout));
>  		break;
>  	case OTG_STATE_A_WAIT_BCON:
> +		/* keep VBUS on for host-only mode */
> +		if (musb->port_mode == MUSB_PORT_MODE_HOST) {
> +			mod_timer(&glue->timer, jiffies +
> +					msecs_to_jiffies(wrp->poll_timeout));
> +			break;
> +		}
>  		musb_writeb(musb->mregs, MUSB_DEVCTL, 0);
>  		skip_session = 1;
>  		/* fall */
> 
> In this form, it appears to work properly for 4.9.20 too.

Yeah, the mod_timer() call is wrapped into dsps_mod_timer_optional() by
369469a92393d ("usb: musb: Add support for optional VBUS irq to dsps
glue layer"), introduced in v4.11-rc1.

Regards,
-Bin.

  reply	other threads:[~2017-05-15 12:24 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-15 14:08 [PATCH] usb-musb: keep VBUS on when device is disconnected Moreno Bartalucci
2017-03-15 14:08 ` Moreno Bartalucci
     [not found] ` <20170315140801.97230-1-moreno.bartalucci-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-24 18:58   ` Bin Liu
2017-03-24 18:58     ` Bin Liu
2017-03-25  7:21     ` Lars Melin
     [not found]       ` <2d10809f-d482-ffa9-30b7-8785e94ab102-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-03-27 12:53         ` Moreno Bartalucci
2017-03-27 12:53           ` Moreno Bartalucci
     [not found]           ` <00882633-3F61-4010-A4D2-D04473282B10-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-27 13:17             ` Bin Liu
2017-03-27 13:17               ` Bin Liu
2017-03-27 14:30               ` Tony Lindgren
2017-03-27 16:20                 ` Moreno Bartalucci
     [not found]                   ` <63FD9E13-2B70-485C-80A7-206BEC16905A-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-27 16:59                     ` Tony Lindgren
2017-03-27 16:59                       ` Tony Lindgren
2017-03-27 17:15                       ` Bin Liu
2017-03-27 17:55                         ` Tony Lindgren
2017-03-27 17:55                           ` Tony Lindgren
2017-05-11 18:50                           ` Bin Liu
2017-05-11 18:55                             ` Tony Lindgren
2017-05-11 19:01                               ` Bin Liu
2017-05-11 19:10                                 ` Bin Liu
2017-05-11 19:20                                   ` Bin Liu
2017-05-11 19:38                                     ` Tony Lindgren
2017-05-11 20:02                                       ` Bin Liu
2017-05-11 20:23                                         ` Tony Lindgren
2017-05-11 20:27                                           ` Tony Lindgren
2017-05-11 20:44                                           ` Bin Liu
2017-05-11 21:06                                             ` Tony Lindgren
2017-05-12 13:40                                               ` Bin Liu
2017-05-12 14:58                                                 ` Tony Lindgren
2017-05-12 15:21                                                   ` Bin Liu
2017-05-12 15:43                                                     ` Moreno Bartalucci
2017-05-12 17:21                                                     ` Tony Lindgren
2017-05-12 17:40                                                       ` Bin Liu
2017-05-12 17:46                                                         ` Tony Lindgren
2017-05-15  7:07                                                     ` Moreno Bartalucci
2017-05-15 12:24                                                       ` Bin Liu [this message]
2017-03-28  6:10                         ` Moreno Bartalucci
2017-03-28  6:10                           ` Moreno Bartalucci
     [not found]                           ` <11BBAEC7-0B26-40FE-963E-811F7853F2FE-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-28 14:59                             ` Tony Lindgren
2017-03-28 14:59                               ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170515122428.GD651@uda0271908 \
    --to=b-liu@ti.com \
    --cc=abogani@kernel.org \
    --cc=larsm17@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=moreno.bartalucci@tecnorama.it \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.