summaryrefslogtreecommitdiff
path: root/src/radeon_display.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/radeon_display.c')
-rw-r--r--src/radeon_display.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/radeon_display.c b/src/radeon_display.c
index f3b86e6..fb345a9 100644
--- a/src/radeon_display.c
+++ b/src/radeon_display.c
@@ -2135,7 +2135,9 @@ void RADEONUnblank(ScrnInfoPtr pScrn)
RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn);
RADEONConnector *pPort;
- if (!pRADEONEnt->HasSecondary || (info->IsSwitching && !info->IsSecondary)) {
+ if (!pRADEONEnt->HasSecondary ||
+ (pRADEONEnt->HasSecondary && !info->IsSwitching) ||
+ (info->IsSwitching && (!info->IsSecondary))) {
pPort = RADEONGetCrtcConnector(pScrn, 1);
if (pPort)
RADEONUnblankSet(pScrn, pPort);
@@ -2158,7 +2160,8 @@ void RADEONUnblank(ScrnInfoPtr pScrn)
}
}
- if (info->IsSwitching && info->IsSecondary) {
+ if ((pRADEONEnt->HasSecondary && !info->IsSwitching) ||
+ (info->IsSwitching && info->IsSecondary)) {
pPort = RADEONGetCrtcConnector(pScrn, 2);
if (pPort)
RADEONUnblankSet(pScrn, pPort);