[Openchrome-devel] xf86-video-openchrome: 6 commits - configure.ac src/via_lvds.c src/via_outputs.c src/via_ums.h
Kevin Brace
kevinbrace at kemper.freedesktop.org
Sat Aug 13 05:25:50 UTC 2016
configure.ac | 2 +-
src/via_lvds.c | 32 +++++++++++++++++++++++---------
src/via_outputs.c | 7 +++----
src/via_ums.h | 3 +++
4 files changed, 30 insertions(+), 14 deletions(-)
New commits:
commit da9844c6ba255cb4db98bf40e1c2bbca8cf4d9ce
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Aug 12 22:25:34 2016 -0700
Version bumped to 0.5.128
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/configure.ac b/configure.ac
index 916ad6d..6c5af1b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ(2.57)
AC_INIT([xf86-video-openchrome],
- [0.5.127],
+ [0.5.128],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome],
[xf86-video-openchrome])
commit c2c915e351d2345b36eefae8d89c4e3ec8e925cf
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Aug 12 22:24:28 2016 -0700
Make LVDS2 dithering programmable
Now, LVDS2 output color dithering is set based on the information
provided by flat panel screen resolution table.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_lvds.c b/src/via_lvds.c
index cf6852f..a91f30b 100644
--- a/src/via_lvds.c
+++ b/src/via_lvds.c
@@ -1039,10 +1039,8 @@ via_lvds_mode_set(xf86OutputPtr output, DisplayModePtr mode,
case VIA_VX900:
viaLVDS2SetDisplaySource(pScrn, iga->index ? 0x01 : 0x00);
- /* This part will have to be programmable between 18-bit
- * mode and 24-bit mode in the future. */
- /* Turn on 18-bit (dithering) mode for LVDS Channel 2. */
- viaLVDS2SetDithering(pScrn, TRUE);
+ /* Set LVDS2 output color dithering. */
+ viaLVDS2SetDithering(pScrn, Panel->useDithering ? TRUE : FALSE);
break;
default:
break;
commit 80056d18ef4985a87b70a880004d9e847a657728
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Aug 12 22:16:59 2016 -0700
Changing LVDS FP scratch pad indexing function name
ViaPanelGetNativeModeFromScratchPad function's name was changed to
viaLVDSGetFPInfoFromScratchPad.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_lvds.c b/src/via_lvds.c
index 9fdcbdb..cf6852f 100644
--- a/src/via_lvds.c
+++ b/src/via_lvds.c
@@ -736,7 +736,7 @@ ViaGetResolutionIndex(ScrnInfoPtr pScrn, ViaPanelInfoPtr Panel,
* Gets the native panel resolution from scratch pad registers.
*/
static void
-ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
+viaLVDSGetFPInfoFromScratchPad(xf86OutputPtr output)
{
ScrnInfoPtr pScrn = output->scrn;
vgaHWPtr hwp = VGAHWPTR(pScrn);
@@ -744,7 +744,7 @@ ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
CARD8 index;
DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
- "Entered ViaPanelGetNativeModeFromScratchPad.\n"));
+ "Entered viaLVDSGetFPInfoFromScratchPad.\n"));
index = hwp->readCrtc(hwp, 0x3F) & 0x0F;
@@ -769,7 +769,7 @@ ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
panel->useDithering ? "On (18-bit)" : "Off (24-bit)");
DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
- "Exiting ViaPanelGetNativeModeFromScratchPad.\n"));
+ "Exiting viaLVDSGetFPInfoFromScratchPad.\n"));
}
static int
@@ -1132,7 +1132,7 @@ via_lvds_detect(xf86OutputPtr output)
cr3b = hwp->readCrtc(hwp, 0x3B) & cr3b_mask;
if (cr3b) {
- ViaPanelGetNativeModeFromScratchPad(output);
+ viaLVDSGetFPInfoFromScratchPad(output);
if (panel->NativeWidth && panel->NativeHeight) {
status = XF86OutputStatusConnected;
commit 75f7a2826ab11e7190ddc0f103e377802205e463
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Aug 12 22:09:15 2016 -0700
Rewriting ViaPanelGetNativeModeFromScratchPad function
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_lvds.c b/src/via_lvds.c
index e7369e3..9fdcbdb 100644
--- a/src/via_lvds.c
+++ b/src/via_lvds.c
@@ -738,13 +738,13 @@ ViaGetResolutionIndex(ScrnInfoPtr pScrn, ViaPanelInfoPtr Panel,
static void
ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
{
- ViaPanelInfoPtr panel = output->driver_private;
ScrnInfoPtr pScrn = output->scrn;
vgaHWPtr hwp = VGAHWPTR(pScrn);
+ ViaPanelInfoPtr panel = output->driver_private;
CARD8 index;
DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
- "ViaPanelGetNativeModeFromScratchPad\n"));
+ "Entered ViaPanelGetNativeModeFromScratchPad.\n"));
index = hwp->readCrtc(hwp, 0x3F) & 0x0F;
@@ -755,7 +755,11 @@ ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
panel->useDithering = ViaPanelNativeModes[index].useDithering;
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
- "Native Panel Resolution is %dx%d\n",
+ "VIA Technologies VGA BIOS Scratch Pad Register "
+ "Flat Panel Index: %d\n",
+ panel->NativeModeIndex);
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Flat Panel Native Resolution: %dx%d\n",
panel->NativeWidth, panel->NativeHeight);
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Flat Panel Dual Edge Transfer: %s\n",
@@ -764,6 +768,8 @@ ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
"Flat Panel Output Color Dithering: %s\n",
panel->useDithering ? "On (18-bit)" : "Off (24-bit)");
+ DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Exiting ViaPanelGetNativeModeFromScratchPad.\n"));
}
static int
commit ba5a3fca07867b23808c040ba7b300e8566ba440
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Aug 12 21:48:34 2016 -0700
Removing several compilation warnings from via_outputs.c
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_outputs.c b/src/via_outputs.c
index 1465a38..0ebd8aa 100644
--- a/src/via_outputs.c
+++ b/src/via_outputs.c
@@ -93,7 +93,7 @@ viaDVP0SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource)
DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Entered viaDVP0SetDisplaySource.\n"));
- /* Set DVP0 display output source.
+ /* Set DVP0 display output source. */
/* 3X5.96[4] - DVP0 Data Source Selection
* 0: Primary Display
* 1: Secondary Display */
@@ -119,7 +119,7 @@ viaDVP1SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource)
DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Entered viaDVP1SetDisplaySource.\n"));
- /* Set DVP1 display output source.
+ /* Set DVP1 display output source. */
/* 3X5.9B[4] - DVP1 Data Source Selection
* 0: Primary Display
* 1: Secondary Display */
@@ -590,12 +590,11 @@ ViaComputeDotClock(unsigned clock)
static CARD32
ViaComputeProDotClock(unsigned clock)
{
- double fvco, fout, fref, err, minErr;
+ double fvco, fout, err, minErr;
CARD32 dr = 0, dn, dm, maxdm, maxdn;
CARD32 factual;
union pllparams bestClock;
- fref = 14.318e6;
fout = (double)clock * 1.e3;
factual = ~0;
commit b4ccfaa80a482e84b62751ef8bf4eca347c9fbaa
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Fri Aug 12 21:43:22 2016 -0700
Add useDualEdge and useDithering variables to ViaPanelInfo record
These were added so that LVDS FP registers related to them can be
programmed during screen mode setting.
Signed-off-by: Kevin Brace <kevinbrace at gmx.com>
diff --git a/src/via_lvds.c b/src/via_lvds.c
index 727744d..e7369e3 100644
--- a/src/via_lvds.c
+++ b/src/via_lvds.c
@@ -751,9 +751,19 @@ ViaPanelGetNativeModeFromScratchPad(xf86OutputPtr output)
panel->NativeModeIndex = index;
panel->NativeWidth = ViaPanelNativeModes[index].Width;
panel->NativeHeight = ViaPanelNativeModes[index].Height;
+ panel->useDualEdge = ViaPanelNativeModes[index].useDualEdge;
+ panel->useDithering = ViaPanelNativeModes[index].useDithering;
+
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Native Panel Resolution is %dx%d\n",
panel->NativeWidth, panel->NativeHeight);
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Flat Panel Dual Edge Transfer: %s\n",
+ panel->useDualEdge ? "On" : "Off");
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Flat Panel Output Color Dithering: %s\n",
+ panel->useDithering ? "On (18-bit)" : "Off (24-bit)");
+
}
static int
diff --git a/src/via_ums.h b/src/via_ums.h
index 42a3dae..be459cc 100644
--- a/src/via_ums.h
+++ b/src/via_ums.h
@@ -138,6 +138,9 @@ typedef struct ViaPanelInfo {
/* Native physical resolution */
int NativeHeight;
int NativeWidth;
+ Bool useDualEdge;
+ Bool useDithering;
+
/* Native resolution index, see via_panel.c */
CARD8 NativeModeIndex;
/* Determine if we must use the hardware scaler
More information about the Openchrome-devel
mailing list