configure.ac | 2 +- src/via_display.c | 40 ++++++++++++++++++++++++++-------------- 2 files changed, 27 insertions(+), 15 deletions(-)
New commits: commit d22b2dd0bf6317bee4afb899363632cf6bb3aeb6 Author: Kevin Brace <kevinbr...@gmx.com> Date: Thu Jun 2 04:27:23 2016 -0700 Version bumped to 0.4.159 Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/configure.ac b/configure.ac index 9673ce6..2162c77 100644 --- a/configure.ac +++ b/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ(2.57) AC_INIT([xf86-video-openchrome], - [0.4.158], + [0.4.159], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome], [xf86-video-openchrome]) commit ec8776a3ae3ba1dfe355d33fe6c919b05e36e895 Author: Kevin Brace <kevinbr...@gmx.com> Date: Thu Jun 2 04:25:39 2016 -0700 Cleanup of the code that sets IGA1 horizontal display fetch count viaIGA1SetDisplayRegister function contains the code in question. This function is located inside via_display.c. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_display.c b/src/via_display.c index c9f78fc..3f6cac7 100644 --- a/src/via_display.c +++ b/src/via_display.c @@ -889,6 +889,23 @@ viaIGA1SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode) ViaCrtcMask(hwp, 0x35, temp >> 3, 0xE0); + /* Set IGA1 alignment. */ + temp = (mode->CrtcHDisplay * (pScrn->bitsPerPixel >> 3)) >> 3; + + /* Make sure that this is 32-byte aligned. */ + if (temp & 0x03) { + temp += 0x03; + temp &= ~0x03; + } + + /* 3C5.1C[7:0] - Primary Display Horizontal Display + * Fetch Count Data Bits [7:0] */ + hwp->writeSeq(hwp, 0x1C, (temp >> 1) & 0xFF); + + /* 3C5.1D[1:0] - Primary Display Horizontal Display + * Fetch Count Data Bits [9:8] */ + ViaSeqMask(hwp, 0x1D, temp >> 9, 0x03); + /* line compare: We are not doing splitscreen so 0x3FFF */ hwp->writeCrtc(hwp, 0x18, 0xFF); ViaCrtcMask(hwp, 0x07, 0x10, 0x10); @@ -900,17 +917,6 @@ viaIGA1SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode) ViaCrtcMask(hwp, 0x09, 0x00, 0x1F); hwp->writeCrtc(hwp, 0x14, 0x00); - /* fetch count */ - temp = (mode->CrtcHDisplay * (pScrn->bitsPerPixel >> 3)) >> 3; - /* Make sure that this is 32-byte aligned. */ - if (temp & 0x03) { - temp += 0x03; - temp &= ~0x03; - } - - hwp->writeSeq(hwp, 0x1C, ((temp >> 1)+1) & 0xFF); - ViaSeqMask(hwp, 0x1D, temp >> 9, 0x03); - switch (pVia->Chipset) { case VIA_CX700: case VIA_K8M890: commit 71ea18dc52fb63b4f6709403a487acf8c70d399e Author: Kevin Brace <kevinbr...@gmx.com> Date: Thu Jun 2 03:41:36 2016 -0700 Cleanup of the code that sets IGA1 horizontal offset viaIGA1SetDisplayRegister function contains the code in question. This function is located inside via_display.c. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_display.c b/src/via_display.c index b19c0cd..c9f78fc 100644 --- a/src/via_display.c +++ b/src/via_display.c @@ -873,6 +873,22 @@ viaIGA1SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode) ViaCrtcMask(hwp, 0x11, temp & 0x0F, 0x0F); + /* Set IGA1 horizontal offset adjustment. */ + temp = (pScrn->displayWidth * (pScrn->bitsPerPixel >> 3)) >> 3; + + /* Make sure that this is 32-byte aligned. */ + if (temp & 0x03) { + temp += 0x03; + temp &= ~0x03; + } + + /* 3X5.13[7:0] - Primary Display Horizontal Offset Bits [7:0] */ + hwp->writeCrtc(hwp, 0x13, temp & 0xFF); + + /* 3X5.35[7:5] - Primary Display Horizontal Offset Bits [10:8] */ + ViaCrtcMask(hwp, 0x35, temp >> 3, 0xE0); + + /* line compare: We are not doing splitscreen so 0x3FFF */ hwp->writeCrtc(hwp, 0x18, 0xFF); ViaCrtcMask(hwp, 0x07, 0x10, 0x10); @@ -884,16 +900,6 @@ viaIGA1SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode) ViaCrtcMask(hwp, 0x09, 0x00, 0x1F); hwp->writeCrtc(hwp, 0x14, 0x00); - /* offset */ - temp = (pScrn->displayWidth * (pScrn->bitsPerPixel >> 3)) >> 3; - /* Make sure that this is 32-byte aligned. */ - if (temp & 0x03) { - temp += 0x03; - temp &= ~0x03; - } - hwp->writeCrtc(hwp, 0x13, temp & 0xFF); - ViaCrtcMask(hwp, 0x35, temp >> 3, 0xE0); - /* fetch count */ temp = (mode->CrtcHDisplay * (pScrn->bitsPerPixel >> 3)) >> 3; /* Make sure that this is 32-byte aligned. */ _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel