configure.ac | 2 src/via_analog.c | 30 ++++--- src/via_outputs.c | 130 ---------------------------------- src/via_tmds.c | 4 - src/via_tv.c | 2 src/via_ums.h | 204 ++++++++++++++++++++++++++++++++++++------------------ 6 files changed, 158 insertions(+), 214 deletions(-)
New commits: commit d79c4047b05a8ebe761bc36afbf4ad48b4e6632f Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:48:29 2017 -0500 Version bumped to 0.6.137 Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/configure.ac b/configure.ac index c9a9abd..e0e0f20 100644 --- a/configure.ac +++ b/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ(2.57) AC_INIT([xf86-video-openchrome], - [0.6.136], + [0.6.137], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome], [xf86-video-openchrome]) commit d3d03bb708e730d99bd208bb9d0cc50be7d9b67b Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:47:06 2017 -0500 Made modifications to via_analog_commit Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index c7fd03f..6a6cabc 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -318,8 +318,8 @@ via_analog_commit(xf86OutputPtr output) DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered via_analog_commit.\n")); - /* DPMS off */ - viaAnalogSetDPMSControl(pScrn, 0x00); + viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_OFF); + viaAnalogPower(pScrn, FALSE); DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Exiting via_analog_commit.\n")); commit b9bce1cd1316c059cf59c04d10d21103d9316de0 Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:26:29 2017 -0500 Made modifications to via_analog_prepare Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index bca4bdc..c7fd03f 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -303,8 +303,8 @@ via_analog_prepare(xf86OutputPtr output) DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered via_analog_prepare.\n")); - /* DPMS On */ - viaAnalogSetDPMSControl(pScrn, 0x03); + viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_ON); + viaAnalogPower(pScrn, TRUE); DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Exiting via_analog_prepare.\n")); commit 81db153b8de65d2bfdf18c193db2dd485da5cb73 Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:23:07 2017 -0500 Calling viaAnalogPower from via_analog_dpms Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index f634072..bca4bdc 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -243,15 +243,19 @@ via_analog_dpms(xf86OutputPtr output, int mode) switch (mode) { case DPMSModeOn: viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_ON); + viaAnalogPower(pScrn, TRUE); break; case DPMSModeStandby: viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_STANDBY); + viaAnalogPower(pScrn, TRUE); break; case DPMSModeSuspend: viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_SUSPEND); + viaAnalogPower(pScrn, TRUE); break; case DPMSModeOff: viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_OFF); + viaAnalogPower(pScrn, FALSE); break; default: xf86DrvMsg(pScrn->scrnIndex, X_ERROR, commit 4f6271e58c04d6b1cd7fb8d1a695672a9e9da626 Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:16:30 2017 -0500 Renamed viaAnalogOutput as viaAnalogPower Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index 92cd4b8..f634072 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -45,18 +45,18 @@ * Enables or disables analog (VGA) output. */ static void -viaAnalogOutput(ScrnInfoPtr pScrn, Bool outputState) +viaAnalogPower(ScrnInfoPtr pScrn, Bool outputState) { DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Entered viaAnalogOutput.\n")); + "Entered viaAnalogPower.\n")); viaAnalogSetPower(pScrn, outputState); xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Analog (VGA) Output: %s\n", + "Analog (VGA) Power: %s\n", outputState ? "On" : "Off"); DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Exiting viaAnalogOutput.\n")); + "Exiting viaAnalogPower.\n")); } /* commit b501a558460e91b23b7d20f3d04852e8c5b07d42 Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:14:00 2017 -0500 Renamed viaAnalogSetDACOutput as viaAnalogSetPower Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index eb5877c..92cd4b8 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -50,7 +50,7 @@ viaAnalogOutput(ScrnInfoPtr pScrn, Bool outputState) DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered viaAnalogOutput.\n")); - viaAnalogSetDACOutput(pScrn, outputState); + viaAnalogSetPower(pScrn, outputState); xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Analog (VGA) Output: %s\n", outputState ? "On" : "Off"); diff --git a/src/via_ums.h b/src/via_ums.h index 01ede50..3c01fc3 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -467,19 +467,18 @@ viaAnalogSetDPMSControl(ScrnInfoPtr pScrn, CARD8 dpmsControl) } /* - * Sets analog (VGA) DAC output state. + * Sets analog (VGA) power. */ static inline void -viaAnalogSetDACOutput(ScrnInfoPtr pScrn, Bool outputState) +viaAnalogSetPower(ScrnInfoPtr pScrn, Bool outputState) { - /* Set analog (VGA) DAC output state. */ /* 3X5.47[2] - DACOFF Backdoor Register * 0: DAC on * 1: DAC off */ ViaCrtcMask(VGAHWPTR(pScrn), 0x47, outputState ? 0x00 : BIT(2), BIT(2)); DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Analog (VGA) DAC Output: %s\n", + "Analog (VGA) Power: %s\n", outputState ? "On" : "Off")); } commit 48091ed51f486d808606142837f688d1c95a5d3d Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Jun 14 00:02:37 2017 -0500 Converted viaDVP1SetDataDriveStrength to an inline function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_outputs.c b/src/via_outputs.c index 7c3a666..0d3d4ff 100644 --- a/src/via_outputs.c +++ b/src/via_outputs.c @@ -147,32 +147,6 @@ viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) "Exiting viaDIP0SetDataDriveStrength.\n")); } -/* - * Sets DVP1 (Digital Video Port 1) data I/O pads drive strength. - */ -void -viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) -{ - vgaHWPtr hwp = VGAHWPTR(pScrn); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Entered viaDVP1SetDataDriveStrength.\n")); - - /* 3C5.65[1:0] - DVP1 Data Pads Driving Select - * 00: lowest - * 01: low - * 10: high - * 11: highest */ - ViaSeqMask(hwp, 0x65, dataDriveStrength, 0x03); - - xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DVP1 Data I/O Pads Drive Strength: %u\n", - dataDriveStrength & 0x03); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Exiting viaDVP1SetDataDriveStrength.\n")); -} - void viaInitDisplay(ScrnInfoPtr pScrn) { diff --git a/src/via_ums.h b/src/via_ums.h index fe59a11..01ede50 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -414,6 +414,23 @@ viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength) } /* + * Sets DVP1 (Digital Video Port 1) data I/O pads drive strength. + */ +static inline void +viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) +{ + /* 3C5.65[1:0] - DVP1 Data Pads Driving Select [1:0} + * 00: lowest + * 01: low + * 10: high + * 11: highest */ + ViaSeqMask(VGAHWPTR(pScrn), 0x65, dataDriveStrength, BIT(1) | BIT(0)); + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "DVP1 Data I/O Pads Drive Strength: %u\n", + dataDriveStrength & (BIT(1) | BIT(0)))); +} + +/* * Sets the display source of DVP1 (Digital Video Port 1) interface. */ static inline void @@ -1003,8 +1020,6 @@ void viaDIP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength); void viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); -void viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, - CARD8 dataDriveStrength); void viaInitDisplay(ScrnInfoPtr pScrn); CARD32 ViaGetMemoryBandwidth(ScrnInfoPtr pScrn); CARD32 ViaModeDotClockTranslate(ScrnInfoPtr pScrn, DisplayModePtr mode); commit 819868f8550863386925f12056788096091c6d09 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 13 23:49:39 2017 -0500 Converted viaDVP1SetClockDriveStrength to an inline function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_outputs.c b/src/via_outputs.c index 95c1d70..7c3a666 100644 --- a/src/via_outputs.c +++ b/src/via_outputs.c @@ -148,32 +148,6 @@ viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) } /* - * Sets DVP1 (Digital Video Port 1) clock I/O pad drive strength. - */ -void -viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength) -{ - vgaHWPtr hwp = VGAHWPTR(pScrn); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Entered viaDVP1SetClockDriveStrength.\n")); - - /* 3C5.65[3:2] - DVP1 Clock Pads Driving Select - * 00: lowest - * 01: low - * 10: high - * 11: highest */ - ViaSeqMask(hwp, 0x65, clockDriveStrength << 2, 0x0C); - - xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DVP1 Clock I/O Pad Drive Strength: %u\n", - clockDriveStrength & 0x03); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Exiting viaDVP1SetClockDriveStrength.\n")); -} - -/* * Sets DVP1 (Digital Video Port 1) data I/O pads drive strength. */ void diff --git a/src/via_ums.h b/src/via_ums.h index 0c1df13..fe59a11 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -397,6 +397,23 @@ viaDVP1SetIOPadState(ScrnInfoPtr pScrn, CARD8 ioPadState) } /* + * Sets DVP1 (Digital Video Port 1) clock I/O pad drive strength. + */ +static inline void +viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength) +{ + /* 3C5.65[3:2] - DVP1 Clock Pads Driving Select [1:0] + * 00: lowest + * 01: low + * 10: high + * 11: highest */ + ViaSeqMask(VGAHWPTR(pScrn), 0x65, clockDriveStrength << 2, BIT(3) | BIT(2)); + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "DVP1 Clock I/O Pad Drive Strength: %u\n", + clockDriveStrength & (BIT(1) | BIT(0)))); +} + +/* * Sets the display source of DVP1 (Digital Video Port 1) interface. */ static inline void @@ -986,8 +1003,6 @@ void viaDIP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength); void viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); -void viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, - CARD8 clockDriveStrength); void viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); void viaInitDisplay(ScrnInfoPtr pScrn); commit a3ac1c10ba0685ad32e208d1fc6cc27f000c672b Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 13 22:29:15 2017 -0500 Converted viaDVP0SetDataDriveStrength to an inline function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_outputs.c b/src/via_outputs.c index ae7a2b3..95c1d70 100644 --- a/src/via_outputs.c +++ b/src/via_outputs.c @@ -148,31 +148,6 @@ viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) } /* - * Sets DVP0 (Digital Video Port 0) data I/O pads drive strength. - */ -void -viaDVP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) -{ - vgaHWPtr hwp = VGAHWPTR(pScrn); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Entered viaDVP0SetDataDriveStrength.\n")); - - /* 3C5.1B[1] - DVP0 Data Drive Strength Bit [0] */ - ViaSeqMask(hwp, 0x1B, dataDriveStrength << 1, 0x02); - - /* 3C5.2A[5] - DVP0 Data Drive Strength Bit [1] */ - ViaSeqMask(hwp, 0x2A, dataDriveStrength << 4, 0x20); - - xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DVP0 Data I/O Pads Drive Strength: %u\n", - dataDriveStrength); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Exiting viaDVP0SetDataDriveStrength.\n")); -} - -/* * Sets DVP1 (Digital Video Port 1) clock I/O pad drive strength. */ void diff --git a/src/via_ums.h b/src/via_ums.h index 1ba1ada..0c1df13 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -345,6 +345,23 @@ viaDVP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength) } /* + * Sets DVP0 (Digital Video Port 0) data I/O pads drive strength. + */ +static inline void +viaDVP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) +{ + /* 3C5.1B[1] - DVP0 Data Drive Strength Bit [0] */ + ViaSeqMask(VGAHWPTR(pScrn), 0x1B, dataDriveStrength << 1, BIT(1)); + + /* 3C5.2A[5] - DVP0 Data Drive Strength Bit [1] */ + ViaSeqMask(VGAHWPTR(pScrn), 0x2A, dataDriveStrength << 4, BIT(5)); + + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "DVP0 Data I/O Pads Drive Strength: %u\n", + dataDriveStrength & (BIT(1) | BIT(0)))); +} + +/* * Sets the display source of DVP0 (Digital Video Port 0) interface. */ static inline void @@ -969,8 +986,6 @@ void viaDIP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength); void viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); -void viaDVP0SetDataDriveStrength(ScrnInfoPtr pScrn, - CARD8 dataDriveStrength); void viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength); void viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, commit 2d8922533397ac8e44b63396b443fbb3ee071e80 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 13 22:08:31 2017 -0500 Converted viaDVP0SetClockDriveStrength to an inline function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_outputs.c b/src/via_outputs.c index 55df573..ae7a2b3 100644 --- a/src/via_outputs.c +++ b/src/via_outputs.c @@ -148,31 +148,6 @@ viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) } /* - * Sets DVP0 (Digital Video Port 0) clock I/O pad drive strength. - */ -void -viaDVP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength) -{ - vgaHWPtr hwp = VGAHWPTR(pScrn); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Entered viaDVP0SetClockDriveStrength.\n")); - - /* 3C5.1E[2] - DVP0 Clock Drive Strength Bit [0] */ - ViaSeqMask(hwp, 0x1E, clockDriveStrength << 2, 0x04); - - /* 3C5.2A[4] - DVP0 Clock Drive Strength Bit [1] */ - ViaSeqMask(hwp, 0x2A, clockDriveStrength << 3, 0x10); - - xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DVP0 Clock I/O Pad Drive Strength: %u\n", - clockDriveStrength & 0x03); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Exiting viaDVP0SetClockDriveStrength.\n")); -} - -/* * Sets DVP0 (Digital Video Port 0) data I/O pads drive strength. */ void diff --git a/src/via_ums.h b/src/via_ums.h index d231e47..1ba1ada 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -326,6 +326,25 @@ viaDVP0SetIOPadState(ScrnInfoPtr pScrn, CARD8 ioPadState) } /* + * Sets DVP0 (Digital Video Port 0) clock I/O pad drive strength. + */ +static inline void +viaDVP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength) +{ + /* 3C5.1E[2] - DVP0 Clock Drive Strength Bit [0] */ + ViaSeqMask(VGAHWPTR(pScrn), 0x1E, clockDriveStrength << 2, + BIT(2)); + + /* 3C5.2A[4] - DVP0 Clock Drive Strength Bit [1] */ + ViaSeqMask(VGAHWPTR(pScrn), 0x2A, clockDriveStrength << 3, + BIT(4)); + + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "DVP0 Clock I/O Pad Drive Strength: %u\n", + clockDriveStrength & (BIT(1) | BIT(0)))); +} + +/* * Sets the display source of DVP0 (Digital Video Port 0) interface. */ static inline void @@ -950,8 +969,6 @@ void viaDIP0SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength); void viaDIP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); -void viaDVP0SetClockDriveStrength(ScrnInfoPtr pScrn, - CARD8 clockDriveStrength); void viaDVP0SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); void viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, commit f9a52e25502ee4707643b2391edb333110d11bed Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 13 21:38:15 2017 -0500 Phased out viaDFPLowEnableIOPads Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_outputs.c b/src/via_outputs.c index cc19961..55df573 100644 --- a/src/via_outputs.c +++ b/src/via_outputs.c @@ -249,34 +249,6 @@ viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength) "Exiting viaDVP1SetDataDriveStrength.\n")); } -/* - * Sets DFP (Digital Flat Panel) Low I/O pad state. - */ -void -viaDFPLowEnableIOPads(ScrnInfoPtr pScrn, CARD8 ioPadState) -{ - vgaHWPtr hwp = VGAHWPTR(pScrn); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Entered viaDFPLowEnableIOPads.\n")); - - /* Set DFP Low I/O pad state. */ - /* 3C5.2A[1:0] - DFP Low Power Control - * 0x: Pad always off - * 10: Depend on the other control signal - * 11: Pad on/off according to the - * Power Management Status (PMS) */ - ViaSeqMask(hwp, 0x2A, ioPadState, 0x03); - xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DFP Low I/O Pad State: %s\n", - (ioPadState & 0x02) ? - (ioPadState & 0x01) ? "Automatic On / Off": "Conditional" - : "Off"); - - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Exiting viaDFPLowEnableIOPads.\n")); -} - void viaInitDisplay(ScrnInfoPtr pScrn) { diff --git a/src/via_tmds.c b/src/via_tmds.c index 1b7ac4d..11f797a 100644 --- a/src/via_tmds.c +++ b/src/via_tmds.c @@ -444,7 +444,7 @@ viaExtTMDSEnableIOPads(ScrnInfoPtr pScrn, CARD8 ioPadState) if ((sr12 & 0x40) && (!(sr12 & 0x20))) { viaDVP0SetIOPadState(pScrn, ioPadState); } else if ((sr13 & 0x08) && (!(sr12 & 0x10))) { - viaDFPLowEnableIOPads(pScrn, ioPadState); + viaFPDPLowSetIOPadState(pScrn, ioPadState); } else { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "None of the external ports were set up for " @@ -464,7 +464,7 @@ viaExtTMDSEnableIOPads(ScrnInfoPtr pScrn, CARD8 ioPadState) if ((sr12 & 0x40) && (!(sr12 & 0x20))) { viaDVP0SetIOPadState(pScrn, ioPadState); } else if (!(sr12 & 0x10)) { - viaDFPLowEnableIOPads(pScrn, ioPadState); + viaFPDPLowSetIOPadState(pScrn, ioPadState); } else { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "None of the external ports were set up for " diff --git a/src/via_tv.c b/src/via_tv.c index e105148..6d50751 100644 --- a/src/via_tv.c +++ b/src/via_tv.c @@ -240,7 +240,7 @@ viaTVEnableIOPads(ScrnInfoPtr pScrn, CARD8 ioPadState) if ((sr12 & 0x40) && (sr12 & 0x20)) { viaDVP0SetIOPadState(pScrn, ioPadState); } else if ((sr13 & 0x08) && (!(sr12 & 0x10))) { - viaDFPLowEnableIOPads(pScrn, ioPadState); + viaFPDPLowSetIOPadState(pScrn, ioPadState); } else if (sr13 & 0x08) { viaDVP1SetIOPadState(pScrn, ioPadState); } else { diff --git a/src/via_ums.h b/src/via_ums.h index ac4bf05..d231e47 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -958,7 +958,6 @@ void viaDVP1SetClockDriveStrength(ScrnInfoPtr pScrn, CARD8 clockDriveStrength); void viaDVP1SetDataDriveStrength(ScrnInfoPtr pScrn, CARD8 dataDriveStrength); -void viaDFPLowEnableIOPads(ScrnInfoPtr pScrn, CARD8 ioPadState); void viaInitDisplay(ScrnInfoPtr pScrn); CARD32 ViaGetMemoryBandwidth(ScrnInfoPtr pScrn); CARD32 ViaModeDotClockTranslate(ScrnInfoPtr pScrn, DisplayModePtr mode); commit 873ed9211a5b5829d08e717b7284c2d09c00aeda Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 13 21:01:03 2017 -0500 Debug log message improvement to viaAnalogSetDPMSControl Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_ums.h b/src/via_ums.h index 4b5fb96..ac4bf05 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -389,8 +389,11 @@ viaAnalogSetDPMSControl(ScrnInfoPtr pScrn, CARD8 dpmsControl) ViaCrtcMask(VGAHWPTR(pScrn), 0x36, dpmsControl << 4, BIT(5) | BIT(4)); DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Analog (VGA) DPMS: %u\n", - dpmsControl & (BIT(1) | BIT(0)))); + "Analog (VGA) DPMS: %s\n", + ((dpmsControl & (BIT(1) | BIT(0))) == 0x03) ? "Off" : + ((dpmsControl & (BIT(1) | BIT(0))) == 0x02) ? "Suspend" : + ((dpmsControl & (BIT(1) | BIT(0))) == 0x01) ? "Standby" : + "On")); } /* commit 9b2156233025bbee8d704c38b876fce651dae3e5 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 13 18:53:30 2017 -0500 Use labels instead of hard values to handle analog (VGA) DPMS state Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index bef3b77..eb5877c 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -242,16 +242,16 @@ via_analog_dpms(xf86OutputPtr output, int mode) switch (mode) { case DPMSModeOn: - viaAnalogSetDPMSControl(pScrn, 0x00); + viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_ON); break; case DPMSModeStandby: - viaAnalogSetDPMSControl(pScrn, 0x01); + viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_STANDBY); break; case DPMSModeSuspend: - viaAnalogSetDPMSControl(pScrn, 0x02); + viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_SUSPEND); break; case DPMSModeOff: - viaAnalogSetDPMSControl(pScrn, 0x03); + viaAnalogSetDPMSControl(pScrn, VIA_ANALOG_DPMS_OFF); break; default: xf86DrvMsg(pScrn->scrnIndex, X_ERROR, diff --git a/src/via_ums.h b/src/via_ums.h index 59170ab..4b5fb96 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -133,6 +133,13 @@ #define VIA_TMDS_NONE 0x0 #define VIA_TMDS_VT1632 0x1 +/* To be used with via_analog_set_dpms_control inline function. */ +#define VIA_ANALOG_DPMS_ON 0x00 +#define VIA_ANALOG_DPMS_STANDBY 0x01 +#define VIA_ANALOG_DPMS_SUSPEND 0x02 +#define VIA_ANALOG_DPMS_OFF 0x03 + + #define BIT(x) (1 << x) commit ad2c8c9df972accb2facb54b5050c70daed98409 Author: Kevin Brace <kevinbr...@gmx.com> Date: Mon Jun 12 14:07:48 2017 -0700 Reorganized a few inline functions inside via_ums.h Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_ums.h b/src/via_ums.h index 312a558..59170ab 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -299,21 +299,6 @@ viaIGA1SetDisplayOutput(ScrnInfoPtr pScrn, Bool outputState) } /* - * Sets the display source of DVP0 (Digital Video Port 0) interface. - */ -static inline void -viaDVP0SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource) -{ - /* 3X5.96[4] - DVP0 Data Source Selection - * 0: Primary Display - * 1: Secondary Display */ - ViaCrtcMask(VGAHWPTR(pScrn), 0x96, displaySource << 4, BIT(4)); - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DVP0 Display Source: IGA%d\n", - (displaySource & 0x01) + 1)); -} - -/* * Sets DVP0 (Digital Video Port 0) I/O pad state. */ static inline void @@ -334,17 +319,17 @@ viaDVP0SetIOPadState(ScrnInfoPtr pScrn, CARD8 ioPadState) } /* - * Sets the display source of DVP1 (Digital Video Port 1) interface. + * Sets the display source of DVP0 (Digital Video Port 0) interface. */ static inline void -viaDVP1SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource) +viaDVP0SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource) { - /* 3X5.9B[4] - DVP1 Data Source Selection + /* 3X5.96[4] - DVP0 Data Source Selection * 0: Primary Display * 1: Secondary Display */ - ViaCrtcMask(VGAHWPTR(pScrn), 0x9B, displaySource << 4, BIT(4)); + ViaCrtcMask(VGAHWPTR(pScrn), 0x96, displaySource << 4, BIT(4)); DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "DVP1 Display Source: IGA%d\n", + "DVP0 Display Source: IGA%d\n", (displaySource & 0x01) + 1)); } @@ -369,6 +354,21 @@ viaDVP1SetIOPadState(ScrnInfoPtr pScrn, CARD8 ioPadState) } /* + * Sets the display source of DVP1 (Digital Video Port 1) interface. + */ +static inline void +viaDVP1SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource) +{ + /* 3X5.9B[4] - DVP1 Data Source Selection + * 0: Primary Display + * 1: Secondary Display */ + ViaCrtcMask(VGAHWPTR(pScrn), 0x9B, displaySource << 4, BIT(4)); + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "DVP1 Display Source: IGA%d\n", + (displaySource & 0x01) + 1)); +} + +/* * Sets analog (VGA) DPMS State. */ static inline void @@ -704,22 +704,6 @@ viaLVDS1SetSoftDisplayPeriod(ScrnInfoPtr pScrn, Bool softOn) } /* - * Sets LVDS1 output color dithering (18-bit color display vs. - * 24-bit color display). - */ -static inline void -viaLVDS1SetDithering(ScrnInfoPtr pScrn, Bool dithering) -{ - /* 3X5.88[0] - LVDS Channel 1 Output Bits - * 0: 24 bits (dithering off) - * 1: 18 bits (dithering on) */ - ViaCrtcMask(VGAHWPTR(pScrn), 0x88, dithering ? BIT(0) : 0x00, BIT(0)); - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "LVDS1 Color Dithering: %s\n", - dithering ? "On (18 bit color)" : "Off (24 bit color)")); -} - -/* * Sets CX700 or later single chipset's LVDS1 I/O pad state. */ static inline void @@ -762,6 +746,22 @@ viaLVDS1SetOutputFormat(ScrnInfoPtr pScrn, CARD8 outputFormat) (outputFormat & BIT(0)) ? "Sequential" : "Rotation")); } +/* + * Sets LVDS1 output color dithering (18-bit color display vs. + * 24-bit color display). + */ +static inline void +viaLVDS1SetDithering(ScrnInfoPtr pScrn, Bool dithering) +{ + /* 3X5.88[0] - LVDS Channel 1 Output Bits + * 0: 24 bits (dithering off) + * 1: 18 bits (dithering on) */ + ViaCrtcMask(VGAHWPTR(pScrn), 0x88, dithering ? BIT(0) : 0x00, BIT(0)); + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "LVDS1 Color Dithering: %s\n", + dithering ? "On (18 bit color)" : "Off (24 bit color)")); +} + /* Sets CX700 or later single chipset's LVDS1 display source. */ static inline void viaLVDS1SetDisplaySource(ScrnInfoPtr pScrn, CARD8 displaySource) @@ -793,22 +793,6 @@ viaLVDS2SetPower(ScrnInfoPtr pScrn, Bool powerState) } /* - * Sets LVDS2 output color dithering (18-bit color display vs. - * 24-bit color display). - */ -static inline void -viaLVDS2SetDithering(ScrnInfoPtr pScrn, Bool dithering) -{ - /* 3X5.D4[6] - LVDS Channel 2 Output Bits - * 0: 24 bits (dithering off) - * 1: 18 bits (dithering on) */ - ViaCrtcMask(VGAHWPTR(pScrn), 0xD4, dithering ? BIT(6) : 0x00, BIT(6)); - DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "LVDS2 Color Dithering: %s\n", - dithering ? "On (18 bit color)" : "Off (24 bit color)")); -} - -/* * Sets CX700 or later single chipset's LVDS2 I/O pad state. */ static inline void @@ -853,6 +837,22 @@ viaLVDS2SetOutputFormat(ScrnInfoPtr pScrn, CARD8 outputFormat) } /* + * Sets LVDS2 output color dithering (18-bit color display vs. + * 24-bit color display). + */ +static inline void +viaLVDS2SetDithering(ScrnInfoPtr pScrn, Bool dithering) +{ + /* 3X5.D4[6] - LVDS Channel 2 Output Bits + * 0: 24 bits (dithering off) + * 1: 18 bits (dithering on) */ + ViaCrtcMask(VGAHWPTR(pScrn), 0xD4, dithering ? BIT(6) : 0x00, BIT(6)); + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "LVDS2 Color Dithering: %s\n", + dithering ? "On (18 bit color)" : "Off (24 bit color)")); +} + +/* * Sets CX700 or later single chipset's LVDS2 display source. */ static inline void _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel