All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
To: Bin Liu <binmlist@gmail.com>
Cc: linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
	balbi@ti.com, george.cherian@ti.com
Subject: Re: [PATCH 14/16] usb: musb: dsps: add MUSB_DEVCTL_SESSION back after removal
Date: Mon, 29 Jul 2013 18:53:29 +0200	[thread overview]
Message-ID: <20130729165329.GA5773@linutronix.de> (raw)
In-Reply-To: <CADYTM3Y18yo7S6=k6rgFgpPdbZSH4-92q2FmEnWgjxmQ5g2jbA@mail.gmail.com>

* Bin Liu | 2013-07-26 22:07:14 [-0500]:

>Sebastian,
Hi Bin,

>I have not tested it yet, but I believe I found why host mode works on
>TI 3.2 kernel but not on mainline. Please look at Line 786 in 3.2
>kernel musb_core.c [1].
>
>773         if ((int_usb & MUSB_INTR_DISCONNECT) && !musb->ignore_disconnect) {
>......
>785                                 if (musb->a_wait_bcon != 0 &&
>786                                                 is_otg_enabled(musb))
>787                                         musb_platform_try_idle(musb, jiffies
>788                                         +
>msecs_to_jiffies(musb->a_wait_bcon));
>
>So when the device is unplugged, *_try_idle() is not called in host
>mode, then the SESSION bit will stay set. But in mainline kernel,
>*_try_idle() will be called regardless.
>
>Please let me know your thoughts.

I am not too familiar with what should happen. The is_otg_enabled() part
is gone since v3.7-rc1 via:
|commit 032ec49f5351e9cb242b1a1c367d14415043ab95
|Author: Felipe Balbi <balbi@ti.com>
|Date:   Thu Nov 24 15:46:26 2011 +0200
|
|    usb: musb: drop useless board_mode usage
|    
|    we are compiling the driver always with full OTG
|    capabilities, so that board_mode trick becomes
|    useless.
|    
|    Signed-off-by: Felipe Balbi <balbi@ti.com>

So you say, am335x-evm is not able to run OTG mode and may only run in
host mode and as a consequence it must not call musb_platform_try_idle()
because it throws that one bit away and there is no way to bring it back?

However, if I look at the tree you reference, I see in
arch/arm/mach-omap2/board-am335xevm.c:
| static struct omap_musb_board_data musb_board_data = {
|         .interface_type = MUSB_INTERFACE_ULPI,
|         .mode           = MUSB_OTG,
|         .power          = 500,
|         .instances      = 1,
| };
…
| static void __init am335x_evm_init(void)
…
|   usb_musb_init(&musb_board_data);

and it creates a "ti81xx-usbss" device.

So it creates a musb device with mode MUSB_OTG no matter what.
I agree that without that try_idle part things keep working but it
seems, that it is also called in the other tree.

>
>Regards,
>-Bin.

Sebastian

  reply	other threads:[~2013-07-29 16:53 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-22 18:09 am33x: multiple instances and dma support, v2 Sebastian Andrzej Siewior
2013-07-22 18:09 ` [PATCH 01/16] usb: musb: dsps: init / shutdown the phy Sebastian Andrzej Siewior
2013-07-25 14:32   ` Felipe Balbi
2013-07-22 18:09 ` [PATCH 02/16] usb: phy: phy-nop: add support for am335x PHY Sebastian Andrzej Siewior
2013-07-25 14:33   ` Felipe Balbi
2013-07-25 14:45     ` Sebastian Andrzej Siewior
2013-07-25 14:54       ` Felipe Balbi
2013-07-22 18:09 ` [PATCH 03/16] usb: musb: dsps: remove the hardcoded phy pieces Sebastian Andrzej Siewior
2013-07-22 18:09 ` [PATCH 04/16] usb: musb: remove ti81xx pieces from musb Sebastian Andrzej Siewior
2013-07-22 18:09 ` [PATCH 05/16] usb: musb: dsps: use proper child nodes Sebastian Andrzej Siewior
2013-07-23  6:46   ` George Cherian
2013-07-23  9:15     ` Sebastian Andrzej Siewior
2013-07-22 18:09 ` [PATCH 06/16] usb: musb: dsps: rename ti81xx_driver_data to am33xx_driver_data Sebastian Andrzej Siewior
2013-07-23  6:04   ` George Cherian
2013-07-23  9:09     ` Sebastian Andrzej Siewior
2013-07-23  9:14       ` George Cherian
     [not found]   ` <CADYTM3avh7GFTDQW01FnojKZkmL0_hi+=K-VVwCw5peJL2hwTA@mail.gmail.com>
2013-07-23 19:09     ` Bin Liu
2013-07-25 14:41     ` Sebastian Andrzej Siewior
2013-07-25 15:12       ` Bin Liu
2013-07-25 15:16         ` Sebastian Andrzej Siewior
2013-07-25 15:28           ` Bin Liu
2013-07-25 16:11             ` Felipe Balbi
2013-07-26  9:11               ` [PATCH 06/16 => 1/2] " Sebastian Andrzej Siewior
2013-07-26  9:11                 ` [PATCH 06/16 => 2/2] usb: musb: dsps: remove EOI access Sebastian Andrzej Siewior
2013-07-25 15:37           ` [PATCH 06/16] usb: musb: dsps: rename ti81xx_driver_data to am33xx_driver_data Felipe Balbi
2013-07-22 18:09 ` [PATCH 07/16] usb: musb: replace ifndef with ifdef for CONFIG_MUSB_PIO_ONLY Sebastian Andrzej Siewior
2013-07-22 18:09 ` [PATCH 08/16] usb: musb: dma: merge ->start/stop into create/destroy Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 09/16] usb: musb: provide empty dma_controller_create() in PIO mode Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 10/16] usb: musb: remove a few is_dma_capable() in init/exit code Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 11/16] usb: musb: core: call dma_controller_destroy() in the err path Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 12/16] usb: musb: unmap reqs in musb_gadget_queue()'s error case Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 13/16] usb: musb: do not change dev's dma_mask Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 14/16] usb: musb: dsps: add MUSB_DEVCTL_SESSION back after removal Sebastian Andrzej Siewior
     [not found]   ` <CADYTM3a5xzs+-VCTeKLGiRjo7JOqOJ5H4EWDACpTMovY5_ooRA@mail.gmail.com>
2013-07-23 17:31     ` Sebastian Andrzej Siewior
2013-07-23 18:55       ` Bin Liu
2013-07-26 15:44         ` Sebastian Andrzej Siewior
2013-07-26 16:31         ` Sebastian Andrzej Siewior
2013-07-26 17:53           ` Bin Liu
2013-07-26 18:17             ` Bin Liu
2013-07-26 18:22               ` Sebastian Andrzej Siewior
2013-07-26 18:29                 ` Bin Liu
2013-07-26 19:55                   ` Sebastian Andrzej Siewior
2013-07-26 20:15                     ` Bin Liu
2013-07-26 20:35                       ` Sebastian Andrzej Siewior
2013-07-27  3:07                         ` Bin Liu
2013-07-29 16:53                           ` Sebastian Andrzej Siewior [this message]
2013-07-29 17:26                             ` Bin Liu
2013-07-29 17:51                               ` Sebastian Andrzej Siewior
2013-07-29 18:41                                 ` Bin Liu
2013-08-09 16:03                                   ` [PATCH] usb: musb: am335x: Do not remove the session bin HOST-only mode Sebastian Andrzej Siewior
2013-08-09 20:30                                     ` Sergei Shtylyov
2013-08-13  7:14                                       ` Sebastian Andrzej Siewior
2013-08-13 13:03                                         ` Bin Liu
2013-08-13 13:17                                           ` Sebastian Andrzej Siewior
2013-08-13 13:33                                             ` Bin Liu
2013-08-13 13:44                                               ` Sebastian Andrzej Siewior
2013-08-13 14:01                                                 ` Bin Liu
2013-08-13 14:23                                                   ` Sebastian Andrzej Siewior
2013-08-13 14:32                                                     ` Bin Liu
2013-08-14 18:17                                                       ` Sebastian Andrzej Siewior
2013-08-14 18:43                                                         ` Bin Liu
2013-07-22 18:10 ` [PATCH 15/16] dmaengine: add transfered member to dma_async_tx_descriptor Sebastian Andrzej Siewior
2013-07-22 18:52   ` Sergei Shtylyov
2013-07-23 17:12     ` Sebastian Andrzej Siewior
2013-07-25 14:57   ` Lars-Peter Clausen
2013-07-25 15:12     ` Sebastian Andrzej Siewior
2013-07-25 15:32       ` Lars-Peter Clausen
2013-07-26  9:30         ` Sebastian Andrzej Siewior
2013-07-29 11:39   ` Vinod Koul
2013-07-29 12:33     ` Sebastian Andrzej Siewior
2013-07-22 18:10 ` [PATCH 16/16] usb/musb dma: add cppi41 dma driver Sebastian Andrzej Siewior

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=20130729165329.GA5773@linutronix.de \
    --to=bigeasy@linutronix.de \
    --cc=balbi@ti.com \
    --cc=binmlist@gmail.com \
    --cc=george.cherian@ti.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    /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.