Hi Alan, Rafael, Magnus

Thank you for your reply

> The problem is that the ehci-platform driver currently doesn't know
> anything about clocks or power sources.  We need to add that
> information in a generic fashion, somehow.  Until that's done, you
> can't really use ehci-platform as your driver.
> 
> So for example, if ehci-platform _did_ know about clocks and power 
> sources, then before calling usb_add_hcd() you would do:
> 
>       ehci_platform_enable_clocks_and_power(dev);
>       pm_runtime_set_active(&dev->dev);
>       pm_runtime_enable(&dev->dev);
> 
> But you definitely cannot call pm_runtime_get_aync() or anything
> similar, because the EHCI core resume routine assumes the controller's
> clocks are already running and its power supply is at full power.
> 
> Can you figure out a good way to add clock and power information to the 
> usb_ehci_pdata structure?  Something that will work with a large 
> variety of SoC EHCI controllers?

It is possible to power-on on platform setup level
if Rafael and Magnus don't care this style.
Then, I don't need this patch on ehci/ohci driver.
      
      1) power-on on platform setup timing
      2) use ehci/ohci driver

the other is that add .power callback on usb_ehci_pdata,
and control all power on this.

    -- probe --
   if (pdata->power)
        pdata->power(xxx, 1)

   usb_add_hcd()

   -- remove --
   usb_remove_hcd()

   if (pdata->power)
        pdata->power(xxx, 0)

Best regards
---
Kuninori Morimoto
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to