[Openchrome-devel] xf86-video-openchrome: 2 commits - configure.ac src/via_display.c
Kevin Brace
kevinbrace at kemper.freedesktop.org
Sun Aug 21 02:34:10 UTC 2016
configure.ac | 2 +-
src/via_display.c | 20 ++++++++++++++++++--
2 files changed, 19 insertions(+), 3 deletions(-)
New commits:
commit 4212ab0ca3899b35075bffa9ecf8535894e27441
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Sat Aug 20 19:22:23 2016 -0700
Version bumped to 0.5.135
This version adds IGA2 > 2048 horizontal resolution support for
VX900 chipset.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/configure.ac b/configure.ac
index 94898dd..15e31dc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ(2.57)
AC_INIT([xf86-video-openchrome],
- [0.5.134],
+ [0.5.135],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome],
[xf86-video-openchrome])
commit ce58120e2ad187298ba98e29e01c0d8701141bdb
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Sat Aug 20 19:20:24 2016 -0700
IGA2 > 2048 horizontal resolution support for VX900 chipset
Patrick Chen of VIA Technologies in December 2011 suggested that
VX900 chipset supports horizontal resolution > 2048, but no one
bothered to implement it for OpenChrome UMS code until now.
Suggested-by: Patrick Chen <PatrickChen at via.com.tw>
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_display.c b/src/via_display.c
index 11ae1f2..4a25cbf 100644
--- a/src/via_display.c
+++ b/src/via_display.c
@@ -2241,6 +2241,11 @@ viaIGA2SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode)
/* 3X5.55[6:4] - Horizontal Active Data Period Bits [10:8] */
ViaCrtcMask(hwp, 0x55, temp >> 4, 0x70);
+ if (pVia->Chipset == VIA_VX900) {
+ /* 3X5.55[7] - Horizontal Active Data Period Bits [11] */
+ ViaCrtcMask(hwp, 0x55, temp >> 4, 0x80);
+ }
+
/* Set IGA2 horizontal blank start. */
/* Subtracting 1 from CrtcHBlankStart appears to suppress some
@@ -2257,6 +2262,11 @@ viaIGA2SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode)
/* 3X5.54[2:0] - Horizontal Blanking Start Bits [10:8] */
ViaCrtcMask(hwp, 0x54, temp >> 8, 0x07);
+ if (pVia->Chipset == VIA_VX900) {
+ /* 3X5.6B[0] - Horizontal Blanking Start Bit [11] */
+ ViaCrtcMask(hwp, 0x6B, temp >> 11, 0x01);
+ }
+
/* Set IGA2 horizontal blank end. */
/* Horizontal Blanking End: 4096 - 1 (max) */
@@ -2438,10 +2448,16 @@ viaIGA2ModeValid(ScrnInfoPtr pScrn, DisplayModePtr mode)
if (mode->CrtcHTotal > 4096)
return MODE_BAD_HVALUE;
- if (mode->CrtcHDisplay > 2048)
+ if (((pVia->Chipset != VIA_VX900)
+ && (mode->CrtcHDisplay > 2048))
+ || ((pVia->Chipset == VIA_VX900)
+ && (mode->CrtcHDisplay > 4096)))
return MODE_BAD_HVALUE;
- if (mode->CrtcHBlankStart > 2048)
+ if (((pVia->Chipset != VIA_VX900)
+ && (mode->CrtcHBlankStart > 2048))
+ || ((pVia->Chipset == VIA_VX900)
+ && (mode->CrtcHBlankStart > 4096)))
return MODE_BAD_HVALUE;
if (mode->CrtcHBlankEnd > 4096)
More information about the Openchrome-devel
mailing list