drm: atmel-hlcdc: Add pinctrl PM select sleep,default state in CRTC suspend/resume
Some LCD panels have back-powering issue when un-powered, allows users to use an alternate pinctrl "sleep" in order to clamp outputs to a wanted state at suspend. Signed-off-by: Sylvain Rochet <sylvain.rochet@finsecur.com> Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
This commit is contained in:
parent
5848698258
commit
16e6004eb7
|
@ -21,6 +21,7 @@
|
|||
#include <linux/clk.h>
|
||||
#include <linux/pm.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/pinctrl/consumer.h>
|
||||
|
||||
#include <drm/drm_crtc.h>
|
||||
#include <drm/drm_crtc_helper.h>
|
||||
|
@ -157,6 +158,7 @@ static void atmel_hlcdc_crtc_disable(struct drm_crtc *c)
|
|||
cpu_relax();
|
||||
|
||||
clk_disable_unprepare(crtc->dc->hlcdc->sys_clk);
|
||||
pinctrl_pm_select_sleep_state(dev->dev);
|
||||
|
||||
pm_runtime_allow(dev->dev);
|
||||
|
||||
|
@ -179,6 +181,7 @@ static void atmel_hlcdc_crtc_enable(struct drm_crtc *c)
|
|||
|
||||
pm_runtime_forbid(dev->dev);
|
||||
|
||||
pinctrl_pm_select_default_state(dev->dev);
|
||||
clk_prepare_enable(crtc->dc->hlcdc->sys_clk);
|
||||
|
||||
regmap_write(regmap, ATMEL_HLCDC_EN, ATMEL_HLCDC_PIXEL_CLK);
|
||||
|
|
Loading…
Reference in a new issue