From: Paul Kocialkowski <contact@paulk.fr>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] sunxi: musb: Properly put the musb controller back in reset on exit
Date: Sun, 24 May 2015 11:36:09 +0200 [thread overview]
Message-ID: <1432460169.2549.4.camel@collins> (raw)
In-Reply-To: <555DD9DC.7050507@redhat.com>
Le jeudi 21 mai 2015 ? 15:13 +0200, Hans de Goede a ?crit :
> Hi,
>
> On 21-05-15 14:45, Chen-Yu Tsai wrote:
> > On Wed, May 20, 2015 at 10:40 PM, Hans de Goede <hdegoede@redhat.com> wrote:
> >> Assert reset and disable the clock to properly put the musb controller
> >> back in reset on exit.
> >
> > Last I checked the exit functions are not called except for error handling
> > in the probe sequence. Has this been fixed?
>
> It seems not, I made this patch because Paul (added to the Cc) was having
> some troubles when changing the gadget role. It looks like you're right and
> unfortunately this function never gets called though ...
>
> Worse it seems that in gadget mode even all calls to musb_stop() are commented
> out of the musb-new code...
It seems to be the problem here. I added an explicit call to musb_stop
in usb_gadget_unregister_driver and it seems to solve the problem: I can
run fastboot multiple times and the host always enumerates it correctly.
I'll submit some patches implementing this correctly, probably next
week-end.
However, it doesn't work as well with the USB mass storage function.
I'll have to take a closer look at it later.
> Note all this does not mean that this patch is incorrect though, just that it
> is not really useful atm.
>
> Regards,
>
> Hans
>
>
> >
> > ChenYu
> >
> >> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> >> ---
> >> drivers/usb/musb-new/sunxi.c | 7 +++++++
> >> 1 file changed, 7 insertions(+)
> >>
> >> diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c
> >> index e8a3a23..e2c9d5a 100644
> >> --- a/drivers/usb/musb-new/sunxi.c
> >> +++ b/drivers/usb/musb-new/sunxi.c
> >> @@ -284,6 +284,8 @@ static int sunxi_musb_init(struct musb *musb)
> >>
> >> static int sunxi_musb_exit(struct musb *musb)
> >> {
> >> + struct sunxi_ccm_reg *ccm = (struct sunxi_ccm_reg *)SUNXI_CCM_BASE;
> >> +
> >> pr_debug("%s():\n", __func__);
> >>
> >> USBC_DisableDpDmPullUp(musb->mregs);
> >> @@ -291,6 +293,11 @@ static int sunxi_musb_exit(struct musb *musb)
> >> sunxi_usb_phy_power_off(0);
> >> sunxi_usb_phy_exit(0);
> >>
> >> +#ifdef CONFIG_SUNXI_GEN_SUN6I
> >> + clrbits_le32(&ccm->ahb_reset0_cfg, 1 << AHB_GATE_OFFSET_USB0);
> >> +#endif
> >> + clrbits_le32(&ccm->ahb_gate0, 1 << AHB_GATE_OFFSET_USB0);
> >> +
> >> return 0;
> >> }
> >>
> >> --
> >> 2.4.1
> >>
> >> _______________________________________________
> >> U-Boot mailing list
> >> U-Boot at lists.denx.de
> >> http://lists.denx.de/mailman/listinfo/u-boot
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150524/2d6d70a3/attachment.sig>
prev parent reply other threads:[~2015-05-24 9:36 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-20 14:40 [U-Boot] [PATCH] sunxi: musb: Properly put the musb controller back in reset on exit Hans de Goede
2015-05-21 12:45 ` Chen-Yu Tsai
2015-05-21 13:13 ` Hans de Goede
2015-05-24 9:36 ` Paul Kocialkowski [this message]
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=1432460169.2549.4.camel@collins \
--to=contact@paulk.fr \
--cc=u-boot@lists.denx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox