Re: [PATCH v4 00/11] usb: dwc3: PM support patchset

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 12, 2013 at 2:16 PM, Felipe Balbi <balbi@xxxxxx> wrote:
> Hi folks,
>
> this patchset implements the bare minimum PM
> support for dwc3. We're not even playing with
> the PHYs yet.
>
> Please give this a good round of test as PM
> always tends to break things apart.
>
> I haven't thoroughly tested this yet, but I
> thought that I should give people enough time
> to run all sorts of tests on their platforms.
>
> The target for this patchset is v3.10, so there's
> more than enough time to verify functionality
> with all 4 patches applied.
>
> Note, also, that this patchset will help us finally
> adding Hibernation support, but let's first make
> sure that non-Hibernation PM works as expected,
> since that's far more easier to implement and there
> are platforms out there (err OMAP5) not using
> the hibernation features ;-)
>
> (not thoroughly tested yet, specially the
> pci_device_disable()/pci_device_enable() part)
>
> Note that I will still rebase this patchset
> once v3.9-rc1 is tagged because of the latest
> DT support patches.
>
> If anyone is interested in helping testing these
> patches, I have them all available on dwc3-dev-pm-ops
> branch on my tree, together with some other patches
> which I have already sent to this mailing list.
>
> Changes since v3:
>         - Fixed warning when building host-only versions
>
> Changes since v2:
>         - Fixed a possible problem when gadget driver wasn't loaded
>         - Added PCIe and Exynos support
>                 (for Exynos, I took Vikas' original patch)
>
> Changes since v1:
>
>         - added one extra patch to keep track of pullups state
>         - modified PM support patch to reconnect pullups if they were connected
>           before suspending
>
> cheers
>
> Felipe Balbi (10):
>   usb: dwc3: core: don't forget to free coherent memory
>   usb: dwc3: core: explicitly setup and cleanup event buffers
>   usb: dwc3: gadget: introduce and use enable/disable irq methods
>   usb: dwc3: gadget: save state of pullups
>   usb: dwc3: core: add power management support
>   usb: dwc3: omap: fix a typo on of_device_id
>   usb: dwc3: omap: introduce enable/disable IRQ methods
>   usb: dwc3: omap: remove unused fields from private structure
>   usb: dwc3: omap: add basic suspend/resume support
>   usb: dwc3: pci: add basic suspend/resume support
>
> Vikas Sajjan (1):
>   usb: dwc3: exynos: add basic suspend/resume support
>
>  drivers/usb/dwc3/core.c        | 144 ++++++++++++++++++++++++++++++++++++-----
>  drivers/usb/dwc3/core.h        |  34 ++++++++++
>  drivers/usb/dwc3/dwc3-exynos.c |  34 ++++++++++
>  drivers/usb/dwc3/dwc3-omap.c   | 119 +++++++++++++++++++++++++---------
>  drivers/usb/dwc3/dwc3-pci.c    |  38 +++++++++++
>  drivers/usb/dwc3/gadget.c      | 141 ++++++++++++++++++++++++++++++----------
>  6 files changed, 432 insertions(+), 78 deletions(-)
>

Tested this patch-series on exynos5250 platform, alongwith [PATCH v2]
usb: xhci: add the suspend/resume functionality
after making following change in [PATCH v4 05/11] usb: dwc3: core: add
power management support:

________________________________________________________
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
index 8aa29b5..9444fbe 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -660,6 +660,9 @@ static int dwc3_suspend(struct device *dev)
                break;
        }

+       usb_phy_shutdown(dwc->usb2_phy);
+       usb_phy_shutdown(dwc->usb3_phy);
+
        dwc->gctl = dwc3_readl(dwc->regs, DWC3_GCTL);
        spin_unlock_irqrestore(&dwc->lock, flags);

@@ -675,6 +678,10 @@ static int dwc3_resume(struct device *dev)

        dwc3_writel(dwc->regs, DWC3_GCTL, dwc->gctl);

+       usb_phy_init(dwc->usb2_phy);
+       usb_phy_init(dwc->usb3_phy);
+       mdelay(100);
+
        switch (dwc->mode) {
        case DWC3_MODE_DEVICE:
        case DWC3_MODE_DRD:


________________________________________________

Tested-by: Vivek Gautam <gautam.vivek@xxxxxxxxxxx>


> --
> 1.8.1.rc1.5.g7e0651a
>



-- 
Thanks & Regards
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux