configure.ac | 2 +- src/via_analog.c | 5 +++-- src/via_display.c | 11 ++++++----- src/via_driver.c | 1 - src/via_driver.h | 11 ----------- src/via_fp.c | 4 ++-- src/via_i2c.c | 25 +++++++++++++------------ src/via_tmds.c | 18 ++++++++++-------- src/via_tv.c | 20 ++++++++++---------- src/via_ums.c | 18 ++++++++++-------- src/via_ums.h | 11 ++++++++++- src/via_vt1632.c | 9 +++++---- 12 files changed, 70 insertions(+), 65 deletions(-)
New commits: commit 980c8be59591b6d10c96cf069922368cd063f590 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 27 14:06:55 2017 -0500 Version bumped to 0.6.142 Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/configure.ac b/configure.ac index 28e1a07..b6d7c43 100644 --- a/configure.ac +++ b/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ(2.57) AC_INIT([xf86-video-openchrome], - [0.6.141], + [0.6.142], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome], [xf86-video-openchrome]) commit c04d0e54c18fced88f351b1abe60f74390e69fc9 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 27 13:47:36 2017 -0500 Moved originalCR3B through originalCR3F into VIADisplayRec struct Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_display.c b/src/via_display.c index 04ed559..29114b2 100644 --- a/src/via_display.c +++ b/src/via_display.c @@ -705,6 +705,7 @@ viaIGAInitCommon(ScrnInfoPtr pScrn) { vgaHWPtr hwp = VGAHWPTR(pScrn); VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; CARD8 i; #ifdef HAVE_DEBUG CARD8 temp; @@ -1038,11 +1039,11 @@ viaIGAInitCommon(ScrnInfoPtr pScrn) ViaCrtcMask(hwp, 0x36, 0x01, 0x01); /* 3X5.3B through 3X5.3F are scratch pad registers. */ - ViaCrtcMask(hwp, 0x3B, pVia->originalCR3B, 0xFF); - ViaCrtcMask(hwp, 0x3C, pVia->originalCR3C, 0xFF); - ViaCrtcMask(hwp, 0x3D, pVia->originalCR3D, 0xFF); - ViaCrtcMask(hwp, 0x3E, pVia->originalCR3E, 0xFF); - ViaCrtcMask(hwp, 0x3F, pVia->originalCR3F, 0xFF); + ViaCrtcMask(hwp, 0x3B, pVIADisplay->originalCR3B, 0xFF); + ViaCrtcMask(hwp, 0x3C, pVIADisplay->originalCR3C, 0xFF); + ViaCrtcMask(hwp, 0x3D, pVIADisplay->originalCR3D, 0xFF); + ViaCrtcMask(hwp, 0x3E, pVIADisplay->originalCR3E, 0xFF); + ViaCrtcMask(hwp, 0x3F, pVIADisplay->originalCR3F, 0xFF); /* 3X5.47[5] - Peep at the PCI-bus * 0: Disable diff --git a/src/via_driver.h b/src/via_driver.h index 7f8e6c7..4ec363b 100644 --- a/src/via_driver.h +++ b/src/via_driver.h @@ -343,10 +343,6 @@ typedef struct _VIA { #endif /* HAVE_DEBUG */ video_via_regs* VideoRegs; - - /* Shadow copy of CR3B through CR3F. */ - CARD8 originalCR3B, originalCR3C, originalCR3D, - originalCR3E, originalCR3F; } VIARec, *VIAPtr; #define VIAPTR(p) ((VIAPtr)((p)->driverPrivate)) diff --git a/src/via_ums.c b/src/via_ums.c index 985fe31..02b004b 100644 --- a/src/via_ums.c +++ b/src/via_ums.c @@ -1063,11 +1063,11 @@ umsCrtcInit(ScrnInfoPtr pScrn) xf86CrtcPtr iga1, iga2; /* 3X5.3B through 3X5.3F are scratch pad registers. */ - pVia->originalCR3B = hwp->readCrtc(hwp, 0x3B); - pVia->originalCR3C = hwp->readCrtc(hwp, 0x3C); - pVia->originalCR3D = hwp->readCrtc(hwp, 0x3D); - pVia->originalCR3E = hwp->readCrtc(hwp, 0x3E); - pVia->originalCR3F = hwp->readCrtc(hwp, 0x3F); + pVIADisplay->originalCR3B = hwp->readCrtc(hwp, 0x3B); + pVIADisplay->originalCR3C = hwp->readCrtc(hwp, 0x3C); + pVIADisplay->originalCR3D = hwp->readCrtc(hwp, 0x3D); + pVIADisplay->originalCR3E = hwp->readCrtc(hwp, 0x3E); + pVIADisplay->originalCR3F = hwp->readCrtc(hwp, 0x3F); /* Read memory bandwidth from registers. */ pVia->MemClk = hwp->readCrtc(hwp, 0x3D) >> 4; diff --git a/src/via_ums.h b/src/via_ums.h index 37da882..db19e27 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -196,6 +196,10 @@ typedef struct _VIADISPLAY { /* OLPC XO-1.5 */ Bool isOLPCXO15; + /* Shadow copy of CR3B through CR3F. */ + CARD8 originalCR3B, originalCR3C, originalCR3D, + originalCR3E, originalCR3F; + xf86OutputPtr tv; CARD32 Clock; /* register value for the dotclock */ commit ceee9f2143c8be31da72c500709dac50889f88ae Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Jun 27 13:36:01 2017 -0500 Moved pI2CBus1 through pI2CBus3 into VIADisplayRec struct Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_analog.c b/src/via_analog.c index af94bba..0170fd2 100644 --- a/src/via_analog.c +++ b/src/via_analog.c @@ -352,6 +352,7 @@ via_analog_detect(xf86OutputPtr output) xf86OutputStatus status = XF86OutputStatusDisconnected; I2CBusPtr pI2CBus; VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; VIAAnalogPtr pVIAAnalog = (VIAAnalogPtr) output->driver_private; Bool connectorDetected; @@ -373,7 +374,7 @@ via_analog_detect(xf86OutputPtr output) "VGA connector detected.\n"); if (pVIAAnalog->analogI2CBus & VIA_I2C_BUS1) { - pI2CBus = pVia->pI2CBus1; + pI2CBus = pVIADisplay->pI2CBus1; } else { pI2CBus = NULL; } @@ -389,7 +390,7 @@ via_analog_detect(xf86OutputPtr output) } if (pVIAAnalog->analogI2CBus & VIA_I2C_BUS2) { - pI2CBus = pVia->pI2CBus2; + pI2CBus = pVIADisplay->pI2CBus2; } else { pI2CBus = NULL; } diff --git a/src/via_driver.h b/src/via_driver.h index 213ba9d..7f8e6c7 100644 --- a/src/via_driver.h +++ b/src/via_driver.h @@ -284,11 +284,6 @@ typedef struct _VIA { /* Display Record Pointer */ VIADisplayPtr pVIADisplay; - /* I2C & DDC */ - I2CBusPtr pI2CBus1; - I2CBusPtr pI2CBus2; - I2CBusPtr pI2CBus3; - /* MHS */ Bool IsSecondary; Bool HasSecondary; diff --git a/src/via_fp.c b/src/via_fp.c index f7ce4f9..4daa6f7 100644 --- a/src/via_fp.c +++ b/src/via_fp.c @@ -941,9 +941,9 @@ via_fp_detect(xf86OutputPtr output) } if (pVIAFP->i2cBus & VIA_I2C_BUS2) { - pI2CBus = pVia->pI2CBus2; + pI2CBus = pVIADisplay->pI2CBus2; } else if (pVIAFP->i2cBus & VIA_I2C_BUS3) { - pI2CBus = pVia->pI2CBus3; + pI2CBus = pVIADisplay->pI2CBus3; } else { pI2CBus = NULL; } diff --git a/src/via_i2c.c b/src/via_i2c.c index 13579cb..d0710b2 100644 --- a/src/via_i2c.c +++ b/src/via_i2c.c @@ -480,19 +480,19 @@ ViaI2CInit(ScrnInfoPtr pScrn) "Entered ViaI2CInit.\n")); if (pVIADisplay->I2CDevices & VIA_I2C_BUS1) - pVia->pI2CBus1 = ViaI2CBus1Init(pScrn); + pVIADisplay->pI2CBus1 = ViaI2CBus1Init(pScrn); if (pVIADisplay->I2CDevices & VIA_I2C_BUS2) - pVia->pI2CBus2 = ViaI2CBus2Init(pScrn); + pVIADisplay->pI2CBus2 = ViaI2CBus2Init(pScrn); if (pVIADisplay->I2CDevices & VIA_I2C_BUS3) - pVia->pI2CBus3 = ViaI2CBus3Init(pScrn); + pVIADisplay->pI2CBus3 = ViaI2CBus3Init(pScrn); #ifdef HAVE_DEBUG - if (pVia->pI2CBus1) - ViaI2CScan(pVia->pI2CBus1); - if (pVia->pI2CBus2) - ViaI2CScan(pVia->pI2CBus2); - if (pVia->pI2CBus3) - ViaI2CScan(pVia->pI2CBus3); + if (pVIADisplay->pI2CBus1) + ViaI2CScan(pVIADisplay->pI2CBus1); + if (pVIADisplay->pI2CBus2) + ViaI2CScan(pVIADisplay->pI2CBus2); + if (pVIADisplay->pI2CBus3) + ViaI2CScan(pVIADisplay->pI2CBus3); #endif DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, diff --git a/src/via_tmds.c b/src/via_tmds.c index 94d449c..d7aacec 100644 --- a/src/via_tmds.c +++ b/src/via_tmds.c @@ -870,15 +870,16 @@ via_tmds_detect(xf86OutputPtr output) xf86OutputStatus status = XF86OutputStatusDisconnected; I2CBusPtr pI2CBus; VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; VIATMDSPtr pVIATMDS = (VIATMDSPtr) output->driver_private; DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered via_tmds_detect.\n")); if (pVIATMDS->i2cBus & VIA_I2C_BUS2) { - pI2CBus = pVia->pI2CBus2; + pI2CBus = pVIADisplay->pI2CBus2; } else if (pVIATMDS->i2cBus & VIA_I2C_BUS3) { - pI2CBus = pVia->pI2CBus3; + pI2CBus = pVIADisplay->pI2CBus3; } else { pI2CBus = NULL; } @@ -1060,8 +1061,8 @@ viaExtTMDSProbe(ScrnInfoPtr pScrn) DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered viaExtTMDSProbe.\n")); - if (pVia->pI2CBus2) { - if (viaVT1632Probe(pScrn, pVia->pI2CBus2)) { + if (pVIADisplay->pI2CBus2) { + if (viaVT1632Probe(pScrn, pVIADisplay->pI2CBus2)) { pVIADisplay->extTMDSPresence = TRUE; pVIADisplay->extTMDSI2CBus = VIA_I2C_BUS2; pVIADisplay->extTMDSTransmitter = VIA_TMDS_VT1632; @@ -1071,8 +1072,8 @@ viaExtTMDSProbe(ScrnInfoPtr pScrn) pVIADisplay->extTMDSI2CBus = VIA_I2C_NONE; pVIADisplay->extTMDSTransmitter = VIA_TMDS_NONE; } - } else if (pVia->pI2CBus3) { - if (viaVT1632Probe(pScrn, pVia->pI2CBus3)) { + } else if (pVIADisplay->pI2CBus3) { + if (viaVT1632Probe(pScrn, pVIADisplay->pI2CBus3)) { pVIADisplay->extTMDSPresence = TRUE; pVIADisplay->extTMDSI2CBus = VIA_I2C_BUS3; pVIADisplay->extTMDSTransmitter = VIA_TMDS_VT1632; @@ -1235,6 +1236,7 @@ void via_dvi_init(ScrnInfoPtr pScrn) { VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered via_dvi_init.\n")); @@ -1243,7 +1245,7 @@ via_dvi_init(ScrnInfoPtr pScrn) xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Probing I2C Bus 2 for SiI 164.\n"); - if (!viaSiI164Init(pScrn, pVia->pI2CBus2)) { + if (!viaSiI164Init(pScrn, pVIADisplay->pI2CBus2)) { xf86DrvMsg(pScrn->scrnIndex, X_INFO, "I2C Bus 2 was not initialized for DVI use.\n"); } else { @@ -1254,7 +1256,7 @@ via_dvi_init(ScrnInfoPtr pScrn) xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Probing I2C Bus 3 for SiI 164.\n"); - if (!viaSiI164Init(pScrn, pVia->pI2CBus3)) { + if (!viaSiI164Init(pScrn, pVIADisplay->pI2CBus3)) { xf86DrvMsg(pScrn->scrnIndex, X_INFO, "I2C Bus 3 was not initialized for DVI use.\n"); } else { diff --git a/src/via_tv.c b/src/via_tv.c index 6d50751..a3fd91a 100644 --- a/src/via_tv.c +++ b/src/via_tv.c @@ -801,16 +801,16 @@ via_tv_init(ScrnInfoPtr pScrn) * On an SK43G (KM400/Ch7011), false positive detections at a VT162x * chip were observed, so try to detect the Ch7011 first. */ - if (pVia->pI2CBus2 && xf86I2CProbeAddress(pVia->pI2CBus2, 0xEC)) - pVIADisplay->TVI2CDev = ViaCH7xxxDetect(pScrn, pVia->pI2CBus2, 0xEC); - else if (pVia->pI2CBus2 && xf86I2CProbeAddress(pVia->pI2CBus2, 0x40)) - pVIADisplay->TVI2CDev = ViaVT162xDetect(pScrn, pVia->pI2CBus2, 0x40); - else if (pVia->pI2CBus3 && xf86I2CProbeAddress(pVia->pI2CBus3, 0x40)) - pVIADisplay->TVI2CDev = ViaVT162xDetect(pScrn, pVia->pI2CBus3, 0x40); - else if (pVia->pI2CBus2 && xf86I2CProbeAddress(pVia->pI2CBus2, 0xEA)) - pVIADisplay->TVI2CDev = ViaCH7xxxDetect(pScrn, pVia->pI2CBus2, 0xEA); - else if (pVia->pI2CBus3 && xf86I2CProbeAddress(pVia->pI2CBus3, 0xEA)) - pVIADisplay->TVI2CDev = ViaCH7xxxDetect(pScrn, pVia->pI2CBus3, 0xEA); + if (pVIADisplay->pI2CBus2 && xf86I2CProbeAddress(pVIADisplay->pI2CBus2, 0xEC)) + pVIADisplay->TVI2CDev = ViaCH7xxxDetect(pScrn, pVIADisplay->pI2CBus2, 0xEC); + else if (pVIADisplay->pI2CBus2 && xf86I2CProbeAddress(pVIADisplay->pI2CBus2, 0x40)) + pVIADisplay->TVI2CDev = ViaVT162xDetect(pScrn, pVIADisplay->pI2CBus2, 0x40); + else if (pVIADisplay->pI2CBus3 && xf86I2CProbeAddress(pVIADisplay->pI2CBus3, 0x40)) + pVIADisplay->TVI2CDev = ViaVT162xDetect(pScrn, pVIADisplay->pI2CBus3, 0x40); + else if (pVIADisplay->pI2CBus2 && xf86I2CProbeAddress(pVIADisplay->pI2CBus2, 0xEA)) + pVIADisplay->TVI2CDev = ViaCH7xxxDetect(pScrn, pVIADisplay->pI2CBus2, 0xEA); + else if (pVIADisplay->pI2CBus3 && xf86I2CProbeAddress(pVIADisplay->pI2CBus3, 0xEA)) + pVIADisplay->TVI2CDev = ViaCH7xxxDetect(pScrn, pVIADisplay->pI2CBus3, 0xEA); if (!pVIADisplay->TVI2CDev) { xf86DrvMsg(pScrn->scrnIndex, X_PROBED, diff --git a/src/via_ums.h b/src/via_ums.h index 304345a..37da882 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -183,6 +183,10 @@ typedef struct _VIADISPLAY { CARD8 I2CDevices; CARD8 mappedI2CBus; + I2CBusPtr pI2CBus1; + I2CBusPtr pI2CBus2; + I2CBusPtr pI2CBus3; + /* VIA Technologies NanoBook reference design. * Examples include Everex CloudBook and Sylvania g netbook. * It is also called FIC CE260 and CE261 by its ODM (Original diff --git a/src/via_vt1632.c b/src/via_vt1632.c index 01a80ee..c5739d5 100644 --- a/src/via_vt1632.c +++ b/src/via_vt1632.c @@ -309,6 +309,7 @@ via_vt1632_detect(xf86OutputPtr output) xf86OutputStatus status = XF86OutputStatusDisconnected; I2CBusPtr pI2CBus; VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; VIAVT1632Ptr pVIAVT1632 = (VIAVT1632Ptr) output->driver_private; Bool connectorDetected; @@ -330,9 +331,9 @@ via_vt1632_detect(xf86OutputPtr output) "DVI connector detected.\n"); if (pVIAVT1632->i2cBus & VIA_I2C_BUS2) { - pI2CBus = pVia->pI2CBus2; + pI2CBus = pVIADisplay->pI2CBus2; } else if (pVIAVT1632->i2cBus & VIA_I2C_BUS3) { - pI2CBus = pVia->pI2CBus3; + pI2CBus = pVIADisplay->pI2CBus3; } else { pI2CBus = NULL; } @@ -495,9 +496,9 @@ viaVT1632Init(ScrnInfoPtr pScrn) } if (pVIADisplay->extTMDSI2CBus & VIA_I2C_BUS2) { - pI2CBus = pVia->pI2CBus2; + pI2CBus = pVIADisplay->pI2CBus2; } else if (pVIADisplay->extTMDSI2CBus & VIA_I2C_BUS3) { - pI2CBus = pVia->pI2CBus3; + pI2CBus = pVIADisplay->pI2CBus3; } else { goto exit; } commit 8b269af0ad7247084f8fd45b468e59510b124077 Author: Kevin Brace <kevinbr...@gmx.com> Date: Mon Jun 26 15:57:39 2017 -0500 Moving I2CDevices to VIADisplayRec struct Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/src/via_driver.c b/src/via_driver.c index 54bb068..52e0cb1 100644 --- a/src/via_driver.c +++ b/src/via_driver.c @@ -643,7 +643,6 @@ VIASetupDefaultOptions(ScrnInfoPtr pScrn) #endif pVia->maxDriSize = 0; pVia->agpMem = AGP_SIZE / 1024; - pVia->I2CDevices = VIA_I2C_BUS1 | VIA_I2C_BUS2 | VIA_I2C_BUS3; pVia->VideoEngine = VIDEO_ENGINE_CLE; #ifdef HAVE_DEBUG pVia->PrintVGARegs = FALSE; diff --git a/src/via_driver.h b/src/via_driver.h index 48b3353..213ba9d 100644 --- a/src/via_driver.h +++ b/src/via_driver.h @@ -340,8 +340,6 @@ typedef struct _VIA { void *displayMap; CARD32 displayOffset; - CARD8 I2CDevices; /* Option */ - #ifdef HAVE_DEBUG Bool disableXvBWCheck; Bool DumpVGAROM; diff --git a/src/via_i2c.c b/src/via_i2c.c index 6beae8e..13579cb 100644 --- a/src/via_i2c.c +++ b/src/via_i2c.c @@ -474,15 +474,16 @@ void ViaI2CInit(ScrnInfoPtr pScrn) { VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Entered ViaI2CInit.\n")); - if (pVia->I2CDevices & VIA_I2C_BUS1) + if (pVIADisplay->I2CDevices & VIA_I2C_BUS1) pVia->pI2CBus1 = ViaI2CBus1Init(pScrn); - if (pVia->I2CDevices & VIA_I2C_BUS2) + if (pVIADisplay->I2CDevices & VIA_I2C_BUS2) pVia->pI2CBus2 = ViaI2CBus2Init(pScrn); - if (pVia->I2CDevices & VIA_I2C_BUS3) + if (pVIADisplay->I2CDevices & VIA_I2C_BUS3) pVia->pI2CBus3 = ViaI2CBus3Init(pScrn); #ifdef HAVE_DEBUG diff --git a/src/via_ums.c b/src/via_ums.c index ba56878..985fe31 100644 --- a/src/via_ums.c +++ b/src/via_ums.c @@ -1053,13 +1053,13 @@ umsCrtcInit(ScrnInfoPtr pScrn) drmmode_crtc_private_ptr iga1_rec = NULL, iga2_rec = NULL; vgaHWPtr hwp = VGAHWPTR(pScrn); VIAPtr pVia = VIAPTR(pScrn); + VIADisplayPtr pVIADisplay = pVia->pVIADisplay; #if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,8,0,0,0) ClockRangePtr clockRanges; #else ClockRangesPtr clockRanges; #endif int max_pitch, max_height; - VIADisplayPtr pVIADisplay; xf86CrtcPtr iga1, iga2; /* 3X5.3B through 3X5.3F are scratch pad registers. */ @@ -1078,7 +1078,7 @@ umsCrtcInit(ScrnInfoPtr pScrn) "Unknown Memory clock: %d\n", pVia->MemClk); pVia->MemClk = VIA_MEM_END - 1; } - pVIADisplay = pVia->pVIADisplay; + pVIADisplay->Bandwidth = ViaGetMemoryBandwidth(pScrn); if (pVIADisplay->TVType == TVTYPE_NONE) { @@ -1094,8 +1094,10 @@ umsCrtcInit(ScrnInfoPtr pScrn) } } + pVIADisplay->I2CDevices = VIA_I2C_BUS1 | VIA_I2C_BUS2 | VIA_I2C_BUS3; + if (pVIADisplay->isOLPCXO15) { - pVia->I2CDevices &= ~VIA_I2C_BUS2; + pVIADisplay->I2CDevices &= ~VIA_I2C_BUS2; } if (pVia->drmmode.hwcursor) { diff --git a/src/via_ums.h b/src/via_ums.h index bbf7a8f..304345a 100644 --- a/src/via_ums.h +++ b/src/via_ums.h @@ -180,7 +180,8 @@ typedef struct _VIADISPLAY { /* Keeping track of the number of FP (Flat Panel) connectors. */ unsigned int numberFP; - CARD8 mappedI2CBus; + CARD8 I2CDevices; + CARD8 mappedI2CBus; /* VIA Technologies NanoBook reference design. * Examples include Everex CloudBook and Sylvania g netbook. _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel