On 09/26/2014 01:23 AM, Kevin Hilman wrote:
Grygorii Strashko <grygorii.stras...@ti.com> writes:

This patch switches Keystone 2 PM code to use Generic PM domains
instead of PM  clock domains because of the lack of DT support
for the last.

Keystone 2 PM domain should be specified per device for which
Runtime PM has to be enabled and handles the list of functional clocks
to enable/disable device.

Example:
  qmss_domain: qmss_pm_controller {
        compatible = "ti,keystone-pm-controller";
        clocks = <&chipclk13>;
        #power-domain-cells = <0>;
  };

  qmss: qmss@2a40000 {
        compatible = "ti,keystone-navigator-qmss";
        ...
        power-domains = <&qmss_domain>;

Signed-off-by: Grygorii Strashko <grygorii.stras...@ti.com>

[...]

+static int keystone_pm_domain_power_off(struct generic_pm_domain *genpd)
+{
+       int ret;
+       struct keystone_domain *dm = container_of(genpd,
+                                                 struct keystone_domain,
+                                                 base);
+
+       /* Enable reset clocks for all devices in the PU domain */

This says enable clocks...

+       ret = pm_clk_suspend(dm->dev);

...but this calls clk_disable().

+       if (ret)
+               dev_err(dm->dev, "can't turn off clocks %d\n", ret);
+
+       return ret;
+}
+
+static int keystone_pm_domain_power_on(struct generic_pm_domain *genpd)
+{
+       int ret;
+       struct keystone_domain *dm = container_of(genpd,
+                                                 struct keystone_domain,
+                                                 base);
+
+       /* Disable reset clocks for all devices in the PU domain */

And this says disable clocks...

+       ret = pm_clk_resume(dm->dev);

...but this calls clk_enable().

-ECONFUSED.


Will update.

Thanks you for comments.

Regards,
-grygorii



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to