From cecdf5085739649dc3b52e343c246f6c3c1dda4d Mon Sep 17 00:00:00 2001 From: Connor Behan Date: Tue, 1 Dec 2015 18:45:59 -0500 Subject: LX: Restore old VT switch code Calls for enabling and disabling outputs were removed from the VT switch routine when RandR support was added. Presumably, this is because the server already sets DPMS properly on a VT switch. However, DDX code can undo what the server does so it seems best to keep the explicit calls. Closes: X.Org Bugzilla #80825 Signed-off-by: Connor Behan --- src/geode.h | 4 ++++ src/lx_display.c | 4 ++-- src/lx_driver.c | 3 +++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/geode.h b/src/geode.h index 815efc7..eb61c28 100644 --- a/src/geode.h +++ b/src/geode.h @@ -441,6 +441,10 @@ void GXAccelSync(ScrnInfoPtr pScrni); /* gx_video.c */ void GXInitVideo(ScreenPtr pScrn); +/* lx_display.c */ +void lx_enable_dac_power(ScrnInfoPtr pScrni, int option); +void lx_disable_dac_power(ScrnInfoPtr pScrni, int option); + /* lx_driver.c */ void LXSetupChipsetFPtr(ScrnInfoPtr pScrn); diff --git a/src/lx_display.c b/src/lx_display.c index 997d53d..6315f9f 100644 --- a/src/lx_display.c +++ b/src/lx_display.c @@ -39,7 +39,7 @@ typedef struct _LXOutputPrivateRec { GeodeMemPtr rotate_mem; } LXCrtcPrivateRec, *LXCrtcPrivatePtr; -static void +void lx_enable_dac_power(ScrnInfoPtr pScrni, int option) { GeodeRec *pGeode = GEODEPTR(pScrni); @@ -59,7 +59,7 @@ lx_enable_dac_power(ScrnInfoPtr pScrni, int option) df_set_panel_enable(1); } -static void +void lx_disable_dac_power(ScrnInfoPtr pScrni, int option) { GeodeRec *pGeode = GEODEPTR(pScrni); diff --git a/src/lx_driver.c b/src/lx_driver.c index c68f715..47f6875 100644 --- a/src/lx_driver.c +++ b/src/lx_driver.c @@ -682,6 +682,8 @@ LXLeaveGraphics(ScrnInfoPtr pScrni) gp_wait_until_idle(); + lx_disable_dac_power(pScrni, DF_CRT_DISABLE); + vg_set_custom_mode(&(pGeode->FBcimdisplaytiming.vgDisplayMode), pGeode->FBcimdisplaytiming.wBpp); @@ -710,6 +712,7 @@ LXLeaveGraphics(ScrnInfoPtr pScrni) vg_delay_milliseconds(3); } + lx_enable_dac_power(pScrni, 1); pScrni->vtSema = FALSE; } -- cgit v1.2.3