OSDN Git Service

OMAPDSS: adopt pinctrl support
authorDave Gerlach <d-gerlach@ti.com>
Fri, 31 Oct 2014 21:28:57 +0000 (16:28 -0500)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 17 Dec 2015 11:42:31 +0000 (13:42 +0200)
Update omapdss driver to set the state of the pins to:
- "default on resume
- "sleep" on suspend

By optionally putting the pins into sleep state in the suspend callback
we can accomplish two things.
- minimize current leakage from pins and thus save power,
- prevent the IP from driving pins output in an uncontrolled manner,
which may happen if the power domain drops the domain regulator.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/fbdev/omap2/dss/dss.c

index 9200a86..f95ff31 100644 (file)
@@ -1264,12 +1264,18 @@ static int dss_runtime_suspend(struct device *dev)
 {
        dss_save_context();
        dss_set_min_bus_tput(dev, 0);
+
+       pinctrl_pm_select_sleep_state(dev);
+
        return 0;
 }
 
 static int dss_runtime_resume(struct device *dev)
 {
        int r;
+
+       pinctrl_pm_select_default_state(dev);
+
        /*
         * Set an arbitrarily high tput request to ensure OPP100.
         * What we should really do is to make a request to stay in OPP100,