On Sun, May 01, 2016 at 09:21:48AM -0700, Kevin Brace wrote: > configure.ac | 2 - > src/via_display.c | 67 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > src/via_outputs.c | 6 ++-- > src/via_ums.c | 2 - > src/via_ums.h | 3 +- > 5 files changed, 74 insertions(+), 6 deletions(-) > > New commits: > commit f77a2fa21101322019b5eb426c19a2b0a3ba0df8 > Author: Kevin Brace <kevinbr...@gmx.com> > Date: Sun May 1 09:17:37 2016 -0700 > > Version bumped to 0.4.144 > > Signed-off-by: Kevin Brace <kevinbr...@gmx.com> > > diff --git a/configure.ac b/configure.ac > index b55a714..b1a6f7f 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -23,7 +23,7 @@ > # Initialize Autoconf > AC_PREREQ(2.57) > AC_INIT([xf86-video-openchrome], > - [0.4.143], > + [0.4.144], > > [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome], > [xf86-video-openchrome]) > > commit 70d89a2e02213522ab484c5437178602e4898231 > Author: Kevin Brace <kevinbr...@gmx.com> > Date: Sun May 1 09:13:57 2016 -0700 > > Added viaIGAInitCommon function > > This function helps initialize the common (shared) registers between > IGA1 and IGA2. Whenever there is a mode set, IGA1 and IGA2 will both > call this function. > > Signed-off-by: Kevin Brace <kevinbr...@gmx.com> > > diff --git a/src/via_display.c b/src/via_display.c > index c832ccb..ad44a18 100644 > --- a/src/via_display.c > +++ b/src/via_display.c > @@ -285,6 +285,71 @@ ViaCRTCInit(ScrnInfoPtr pScrn) > ViaCRTCSetAttributeRegisters(pScrn); > } > > +/* > + * Initialize common IGA (Integrated Graphics Accelerator) registers. > + */ > +void > +viaIGAInitCommon(ScrnInfoPtr pScrn) > +{ > + vgaHWPtr hwp = VGAHWPTR(pScrn); > + CARD8 temp; > + > + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, > + "Entered viaIGAInitCommon.\n")); > + > + /* Unlock VIA Technologies extended VGA registers. */ > + /* 3C5.10[0] - Unlock Accessing of I/O Space > + * 0: Disable > + * 1: Enable */ > + ViaSeqMask(hwp, 0x10, 0x01, 0x01);
Datasheet inside the driver is of little value when you have actual datasheets. Btw, you got those from VIA and intel because I and Egbert Eich convinced AMD to do so for the first time since 3dfx was bought out. > + > + ViaCRTCSetGraphicsRegisters(pScrn); > + ViaCRTCSetAttributeRegisters(pScrn); > + > + temp = hwp->readSeq(hwp, 0x15); > + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, > + "SR15: 0x%02X\n", temp)); Unused variable warning. > + /* Be careful with 3C5.15[5]. > + * It must be set to 1 for correct operation. */ > + /* 3C5.15[7] - 8/6 Bits LUT > + * 0: 6-bit > + * 1: 8-bit > + * 3C5.15[6] - Text Column Control > + * 0: 80 column > + * 1: 132 column > + * 3C5.15[5] - Wrap Around Disable > + * 0: Disable (For Mode 0-13) > + * 1: Enable > + * 3C5.15[4] - Hi Color Mode Select > + * 0: 555 > + * 1: 565 > + * 3C5.15[3:2] - Display Color Depth Select > + * 00: 8bpp > + * 01: 16bpp > + * 10: 30bpp > + * 11: 32bpp > + * 3C5.15[1] - Extended Display Mode Enable > + * 0: Disable > + * 1: Enable > + * 3C5.15[0] - Reserved */ > + ViaSeqMask(hwp, 0x15, 0x22, 0x62); > + > + temp = hwp->readSeq(hwp, 0x1A); > + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, > + "SR1A: 0x%02X\n", temp)); Unused variable warning. > + /* 3C5.1A[7]: Read Cache Enable > + * 0 = Disable > + * 1 = Enable > + * 3C5.1A[3]: Extended Mode Memory Access Enable > + * 0 = Disable > + * 1 = Enable */ > + ViaSeqMask(hwp, 0x1A, 0x88, 0x88); > + > + DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, > + "Exiting viaIGAInitCommon.\n")); > +} > + > void > viaIGA1SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode) > { > @@ -1268,6 +1333,7 @@ iga1_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr > mode, > /* Turn off IGA1 during mode setting. */ > viaIGA1DPMSControl(pScrn, 0x03); > > + viaIGAInitCommon(pScrn); > ViaCRTCInit(pScrn); > viaIGA1SetMode(pScrn, adjusted_mode); > > @@ -1680,6 +1746,7 @@ iga2_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr > mode, > /* Turn off IGA2 during mode setting. */ > viaIGA2Screen(pScrn, FALSE); > > + viaIGAInitCommon(pScrn); Do you really want to run this code again when it already was run on Crtc1, which is the one that usually fully initialized already? > ViaCRTCInit(pScrn); > viaIGA2SetMode(pScrn, adjusted_mode); > viaIGA2DisplayChannel(pScrn, TRUE); > diff --git a/src/via_ums.h b/src/via_ums.h > index 928839b..53d28d7 100644 > --- a/src/via_ums.h > +++ b/src/via_ums.h > @@ -212,6 +212,7 @@ void ViaDisplayEnableSimultaneous(ScrnInfoPtr pScrn); > void ViaDisplayDisableSimultaneous(ScrnInfoPtr pScrn); > void ViaGammaDisable(ScrnInfoPtr pScrn); > void ViaCRTCInit(ScrnInfoPtr pScrn); > +void viaIGAInitCommon(ScrnInfoPtr pScrn); > void viaIGA1SetFBStartingAddress(xf86CrtcPtr crtc, int x, int y); > void viaIGA1SetDisplayRegister(ScrnInfoPtr pScrn, DisplayModePtr mode); > void viaIGA1SetMode(ScrnInfoPtr pScrn, DisplayModePtr mode); > commit bed15c0f7f6760884237ce83cca5fb74d386ad2e > Author: Kevin Brace <kevinbr...@gmx.com> > Date: Sun May 1 09:06:07 2016 -0700 > > Changing ViaOutputsDetect to viaOutputDetect > > This function is located inside via_outputs.c. > > Signed-off-by: Kevin Brace <kevinbr...@gmx.com> > > diff --git a/src/via_outputs.c b/src/via_outputs.c > index 4d40957..bc79d4e 100644 > --- a/src/via_outputs.c > +++ b/src/via_outputs.c > @@ -996,13 +996,13 @@ via_dvi_init(ScrnInfoPtr pScrn) > } > > void > -ViaOutputsDetect(ScrnInfoPtr pScrn) > +viaOutputDetect(ScrnInfoPtr pScrn) > { > VIAPtr pVia = VIAPTR(pScrn); > VIABIOSInfoPtr pBIOSInfo = pVia->pBIOSInfo; > > DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, > - "Entered ViaOutputsDetect.\n")); > + "Entered viaOutputDetect.\n")); > > pBIOSInfo->analog = NULL; > > @@ -1025,7 +1025,7 @@ ViaOutputsDetect(ScrnInfoPtr pScrn) > */ > > DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, > - "Exiting ViaOutputsDetect.\n")); > + "Exiting viaOutputDetect.\n")); > } > > #ifdef HAVE_DEBUG > diff --git a/src/via_ums.c b/src/via_ums.c > index 4f12b55..83ade2e 100644 > --- a/src/via_ums.c > +++ b/src/via_ums.c > @@ -1041,7 +1041,7 @@ umsCrtcInit(ScrnInfoPtr pScrn) > > xf86CrtcSetSizeRange(pScrn, 320, 200, max_pitch, max_height); > > - ViaOutputsDetect(pScrn); > + viaOutputDetect(pScrn); > > return TRUE; > } > diff --git a/src/via_ums.h b/src/via_ums.h > index 78f94cf..928839b 100644 > --- a/src/via_ums.h > +++ b/src/via_ums.h > @@ -189,7 +189,7 @@ Bool umsPreInit(ScrnInfoPtr pScrn); > Bool umsCrtcInit(ScrnInfoPtr pScrn); > > /* via_output.c */ > -void ViaOutputsDetect(ScrnInfoPtr pScrn); > +void viaOutputDetect(ScrnInfoPtr pScrn); > CARD32 ViaGetMemoryBandwidth(ScrnInfoPtr pScrn); > CARD32 ViaModeDotClockTranslate(ScrnInfoPtr pScrn, DisplayModePtr mode); > void viaTMDSPower(ScrnInfoPtr pScrn, Bool On); > _______________________________________________ > Openchrome-devel mailing list > Openchrome-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/openchrome-devel Luc Verhaegen. _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel