[Openchrome-devel] xf86-video-openchrome: 4 commits - configure.ac src/via_fp.c src/via_ums.h
Kevin Brace
kevinbrace at kemper.freedesktop.org
Fri Apr 28 07:40:35 UTC 2017
configure.ac | 2 +-
src/via_fp.c | 5 +++++
src/via_ums.h | 34 ++++++++++++++++++++++++++++++++++
3 files changed, 40 insertions(+), 1 deletion(-)
New commits:
commit 966b7d9f2911571ce7183c15716418e648c65a9d
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Apr 28 00:38:37 2017 -0700
Version bumped to 0.6.113
This version fixes a regression with the FP restoration when resuming
from standby. CX700 chipset through VX900 chipset were affected by the
regression.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/configure.ac b/configure.ac
index 80efe51..6c5df77 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ(2.57)
AC_INIT([xf86-video-openchrome],
- [0.6.112],
+ [0.6.113],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome],
[xf86-video-openchrome])
commit 3514f8ee923442aa8fdb7a564775bdccda3f12fa
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Apr 28 00:35:24 2017 -0700
Fix for FP not getting restored when resuming from standby
Commit 873c352 caused a regression in restoring FP on some models
(CX700 chipset through VX900 chipset). This commit should fix the
bug.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_fp.c b/src/via_fp.c
index fe89a2e..e3252f7 100644
--- a/src/via_fp.c
+++ b/src/via_fp.c
@@ -908,19 +908,24 @@ viaFPPower(ScrnInfoPtr pScrn, Bool powerState, CARD8 diPortType)
if ((diPortType & VIA_DI_PORT_LVDS1)
&& (diPortType & VIA_DI_PORT_LVDS2)) {
ViaLVDSSoftwarePowerFirstSequence(pScrn, powerState);
+ viaLVDS1SetPower(pScrn, powerState);
ViaLVDSSoftwarePowerSecondSequence(pScrn, powerState);
+ viaLVDS2SetPower(pScrn, powerState);
} else if ((diPortType & VIA_DI_PORT_LVDS1)
&& (~(diPortType & VIA_DI_PORT_LVDS2))) {
ViaLVDSSoftwarePowerFirstSequence(pScrn, powerState);
+ viaLVDS1SetPower(pScrn, powerState);
} else if ((~(diPortType & VIA_DI_PORT_LVDS1))
&& (diPortType & VIA_DI_PORT_LVDS2)) {
ViaLVDSSoftwarePowerSecondSequence(pScrn, powerState);
+ viaLVDS2SetPower(pScrn, powerState);
}
break;
case VIA_VX855:
case VIA_VX900:
ViaLVDSHardwarePowerFirstSequence(pScrn, powerState);
+ viaLVDS1SetPower(pScrn, powerState);
break;
default:
break;
commit ff046ab451c1dcda04ee59c99fa333e4b3f91338
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Thu Apr 27 21:45:13 2017 -0700
Added viaLVDS2SetPower
This inline function was added to via_ums.h.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_ums.h b/src/via_ums.h
index 1ca760c..8d38d4d 100644
--- a/src/via_ums.h
+++ b/src/via_ums.h
@@ -452,6 +452,23 @@ viaLVDS1SetSoftDisplayPeriod(ScrnInfoPtr pScrn, Bool softOn)
}
/*
+ * Sets CX700 / VX700 and VX800 chipsets' LVDS2 power state.
+ */
+static inline void
+viaLVDS2SetPower(ScrnInfoPtr pScrn, Bool powerState)
+{
+ /* Set LVDS2 power state. */
+ /* 3X5.D2[6] - Power Down (Active High) for Channel 2 LVDS
+ * 0: LVDS2 power on
+ * 1: LVDS2 power down */
+ ViaCrtcMask(VGAHWPTR(pScrn), 0xD2, powerState ? 0x00 : BIT(6),
+ BIT(6));
+ DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "LVDS2 Power State: %s\n",
+ powerState ? "On" : "Off"));
+}
+
+/*
* Sets CX700 / VX700 and VX800 chipsets' TMDS (DVI) power state.
*/
static inline void
commit ca6c44fdea569ff8dbc77301d38f088b4aa30981
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Thu Apr 27 21:41:09 2017 -0700
Added viaLVDS1SetPower
This inline function was added to via_ums.h.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_ums.h b/src/via_ums.h
index bac71c7..1ca760c 100644
--- a/src/via_ums.h
+++ b/src/via_ums.h
@@ -364,6 +364,23 @@ viaFPSetPrimaryHardPower(ScrnInfoPtr pScrn, Bool powerState)
}
/*
+ * Sets CX700 or later chipset's LVDS1 power state.
+ */
+static inline void
+viaLVDS1SetPower(ScrnInfoPtr pScrn, Bool powerState)
+{
+ /* Set LVDS1 power state. */
+ /* 3X5.D2[7] - Power Down (Active High) for Channel 1 LVDS
+ * 0: LVDS1 power on
+ * 1: LVDS1 power down */
+ ViaCrtcMask(VGAHWPTR(pScrn), 0xD2, powerState ? 0x00 : BIT(7),
+ BIT(7));
+ DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "LVDS1 Power State: %s\n",
+ powerState ? "On" : "Off"));
+}
+
+/*
* Sets CX700 or later single chipset's LVDS1 power sequence type.
*/
static inline void
More information about the Openchrome-devel
mailing list