summaryrefslogtreecommitdiff
path: root/src/mga_driver.c
AgeCommit message (Collapse)Author
2016-07-28xf86-video-mga: Add support for a new G200eW3 chipsetMathieu Larouche
- Added support for the new deviceID for G200eW3 - Added PLL algorithm for the G200eW3 - Added some initialization code for G200eW3 Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=92541 Signed-off-by: Mathieu Larouche <mathieu.larouche@matrox.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2015-07-01Enable write-combining on the framebuffer BARAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-07-29undef DISABLE_VGA_IOAdam Jackson
Dead conditional ever since m12n, must not be needed. Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-03-14fix a type in previous lockup in the mga driver fixMikulas Patocka
Oh, I had a typo in that patch - so please commit this to fix it. Signed-off-by: Dave Airlie <airlied@redhat.com>
2014-03-14xf86-video-mga: fix a lockup in the mga driverMikulas Patocka
I've had a Xserver lockup in the mga driver, examining it with gdb showed this obviously broken loop: count = INREG(MGAREG_VCOUNT) + 2; while(INREG(MGAREG_VCOUNT) < count); It reads the line counter and waits until the counter advances by two. The cause of the lockup is this - if the kernel reschedules the Xorg process and lets it run in such a moment when INREG(MGAREG_VCOUNT) returns the maximum (or maximum minus 1) line count, the loop never exits. Signed-off-by: Dave Airlie <airlied@redhat.com>
2013-12-05mga: fix XAA runtimeDave Airlie
XAA->USE_XAA add USE_XAA. Tested-by: Avengence on #xorg-devel Signed-off-by: Dave Airlie <airlied@redhat.com>
2013-10-25Disable HW cursor by default on G200 server chipsEgbert Eich
Disable HW cursor by default on G200 server chips as these chips a re often used with a remote graphics link which cannot display the HW cursor. This can be overridden by a config option. Most desktops today use ARGB cursors anyhow which are not supported by this driver anyhow. Thus the performance penalty should be irrelevant. Signed-off-by: Egbert Eich <eich@freedesktop.org>
2013-10-25Restructure code to make it more readableEgbert Eich
With the previous structure it wasn't immediately clear when SecondCrtc and HWCursor were set to which value. Make the code more readable. Signed-off-by: Egbert Eich <eich@freedesktop.org>
2013-10-25Fix dual head crash without XAATormod Volden
https://launchpad.net/bugs/1180986 Signed-off-by: Tormod Volden <debian.tormod@gmail.com> Reviewed-by: Robert Jacobs <robert.n.jacobs@gmail.com> Tested-by: Robert Jacobs <robert.n.jacobs@gmail.com>
2013-10-25Unbreak dual head (xinerama)Andy MacLean
This patch has been used in Debian, Ubuntu and Gentoo for years. https://bugs.freedesktop.org/show_bug.cgi?id=18472 https://launchpad.net/bugs/292214 https://bugs.gentoo.org/show_bug.cgi?id=265100 Signed-off-by: Andy MacLean <andy-ub1@themacleans.org.uk> Reviewed-by: Cyril Brulebois <kibi@debian.org> Reviewed-by: Robert Jacobs <robert.n.jacobs@gmail.com> Tested-by: Robert Jacobs <robert.n.jacobs@gmail.com>
2013-01-12Restrict kernel driver matching to g200 server chipsJulien Cristau
Otherwise we might catch devices handled by matroxfb, not the mgag200 kms driver. Debian bug#697532 Reported-by: olafBuddenhagen@gmx.net Reviewed-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Julien Cristau <jcristau@debian.org>
2012-09-28mga: bring dri1 back to life.Dave Airlie
we need to at least setup the memory manager bits so dri1 clients get a backbuffer. this at least gets gears working again without XAA. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-26mga: add stub storm functions if not using XAADave Airlie
If we aren't using XAA just add stub storm init/sync functions. This lets the driver load yay. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-25Remove mibstore.hAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2012-07-15mga: fix after XAA removalDave Airlie
Fix mga build after XAA removal. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-06mga: port to new compat API.Dave Airlie
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-05-25Add const qualifier to char *from in MGAdoDDCAlan Coopersmith
Only used to store arguments to pass as printf %s strings to xf86DrvMsg Fixes gcc warnings: mga_driver.c: In function 'MGAdoDDC': mga_driver.c:1338:7: warning: assignment discards qualifiers from pointer target type mga_driver.c:1343:11: warning: assignment discards qualifiers from pointer target type mga_driver.c:1351:8: warning: assignment discards qualifiers from pointer target type mga_driver.c:1359:8: warning: assignment discards qualifiers from pointer target type Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
2012-05-25Move PCI vendor/device id defines into mga.h instead of using xf86PciInfo.hAlan Coopersmith
Silences deprecation warnings from xf86PciInfo.h in current Xorg servers Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
2012-05-17mga: don't bind to device if there is a kernel driverDave Airlie
this should only pick up KMS drivers and not old drm drivers. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-01-04Untangle XF86DRI from the driver-specific DRI definePeter Hutterer
XF86DRI is defined by xorg-server.h, so --disable-dri in the driver itself does exactly nothing other than not fill in the CFLAGS and thus stop the driver from compiling. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-01-03When we can't load the xaa or exa modules, use shadowfb insteadJulien Cristau
Signed-off-by: Julien Cristau <jcristau@debian.org>
2011-12-07Add support for Video Memory greater then 8MChristian Toutant
Expand memory mapping of framebuffer from 8 to 16MB Fix segfault on redhat distibution Signed-off-by: Christian Toutant <ctoutant@matrox.com>
2011-10-29Include "xf86Modes.h" for xf86ModeBandwidthJeremy Huddleston
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-09-27Remove calls to xf86IsPc98()Matt Turner
Reviewed-by: Jamey Sharp <jamey@minilop.net> Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-09-27Remove if(E != NULL) checks around free(E)Matt Turner
Reviewed-by: Jamey Sharp <jamey@minilop.net> Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-09-27Remove xalloc/xcalloc/xrealloc/xfreeMatt Turner
Reviewed-by: Jamey Sharp <jamey@minilop.net> Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-09-20Delete support for MGA's proprietary HAL: unifdef USEMGAHAL.Jamey Sharp
This patch produced with: for f in `git grep -Fwl USEMGAHAL`; do unifdef -B -UUSEMGAHAL $f | sponge $f done Adam Jackson wrote: Hey, so, remember back in the dark ages when dualhead was this insanely wild differentiating feature? Matrox thought it was so special, in fact, that they hid most of the implementation of it (and a bunch of other stuff) in a binary-only blob called the HALlib. As you'd expect it was pretty much a cut-and-paste of the relevant Windows code, and then some open glue to keep it working; clientlx.c is that glue. I guess the theory was that if you don't tell people which registers to duplicate to implement a second pipe in their own hardware, they won't figure it out? A pretty eyeroll-worthy idea even at the time, and definitely not something we should be condoning anymore. Kill it with fire, but while you're at it, untangle the hideous mess of MGA_HAL() macros too. Signed-off-by: Jamey Sharp <jamey@minilop.net> Cc: Adam Jackson <ajax@redhat.com>
2011-09-20Reset tagfifo for renesas.Christian Toutant
For renesas, we need to reset tagfifo after a mode switch. Signed-off-by: Christian Toutant <ctoutant@matrox.com>
2011-08-03Added support for G200SE Pilot3Christian Toutant
Optimize use of bandwidth and increase maximum resolution to 1920x1200 Signed-off-by: Christian Toutant <ctoutant@matrox.com>
2010-12-17added support for G200ER.Yannick Heneault
2010-10-14Don't allow the config file to override BIOS locationAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-10-06Purge cvs tags.Jesse Adkins
Signed-off-by: Jesse Adkins <jesserayadkins@gmail.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2010-08-25modified G200SE conditionnal statement about revision register for products ↵Yannick Heneault
compatibility.
2010-07-22adjusted max bandwith and max pitch values for G200SEYannick Heneault
2010-03-24Changed probe_size value to detect up to 16Megs of video ram on G200eV.Yannick Heneault
2010-02-11Added support for G200EHYannick Heneault
2009-07-28mga: change to using ABI version checkDave Airlie
2009-07-28mga: update for resources/RAC API removalDave Airlie
2009-05-28Remove useless loader symbol lists.Adam Jackson
2009-05-06Do E-EDID if built against a server that supports it.Adam Jackson
2009-05-06Normalize DDC for the second head.Adam Jackson
The exit path wasn't symmetric with the exit path for the first head.
2009-05-06Remove redundant MGAuseI2C macroAdam Jackson
2009-04-27G200SE: Only force 16bpp on low-memory cardsAdam Jackson
2009-04-27Move device ID and memory sizing much earlier in setupAdam Jackson
2009-04-27Remove a leftover from overlay supportAdam Jackson
2009-04-21Fixed bad vga access in memory count routine.Yannick Heneault
2009-04-21Force pitch of 1024 for G200SE Pilot1 when edid is used as modeline.Yannick Heneault
2009-03-30fixed memory count rountine for G200eW to detect up to 16Megs on X server ↵Yannick Heneault
without libpciaccess.
2009-03-26Modified memory count rountine for G200eW to detect up to 16Megs.Yannick Heneault
2008-11-20Fixed PLL m,n,p selection for G200eW to respect byte granularity.Yannick Heneault
Renamed G200 eW Winbond ID string to Nuvoton. Added EV suffix to G200 Maxim. Blocked double scan mode for G200 eW. Fixed memory bandwidth limitation for G200eW to 318.77 Mhz. Added a workaround (blit 1x1 with rop=xor) to fix the black screen problem for G200eW.