summaryrefslogtreecommitdiff
path: root/hw
AgeCommit message (Collapse)AuthorFilesLines
2009-07-26xfree86: move didLock assignment down to where the function pointer is valid.Dave Airlie1-1/+1
crtc->funcs->lock is NULL, so it's no use calling it here. Move it down so it's actually defined before we use it. Introduced with 6f59a8160042ea145514fdcb410f17f33fd437c2. Tested-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 0de58c88aba7ddd69b04f24ab5b2967c359aa69e) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-26hw/xf86/modes: Set crtc mode/rotation/transform before calling set_mode_majorBenjamin Defnet1-3/+5
This moves code out of each implementation of set_mode_major and back into the X server. The real feature here is that the transform is now available in the crtc for use by either xf86CrtcRotate or whatever the driver wants to do. Without this change, the transform was lost for drivers providing the set_mode_major interface. Note that users of this API will want to stop smashing the transformPresent field, and could also stop setting mode/x/y/rotation for new enough X servers, but there's no reason to make that change as it will break things when running against older X servers. Signed-off-by: Keith Packard <keithp@keithp.com> Acked-by: Daniel Stone <daniel@fooishbar.org> (cherry picked from commit 6f59a8160042ea145514fdcb410f17f33fd437c2) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-26randr: Nuke broken set_origin shortcutMatthias Hopf1-13/+0
Shortcut is impossible to implement this way, because we don't know for sure whether the crtc of an output has changed or not. (cherry picked from commit cadf65a6e190a8952ad3cc216dc9ea55241de91a) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-08Fix build of drivers with 1.6.2 when not using --install-libxf86configAlan Coopersmith1-6/+2
c859b736d1d23c5dc2f53958b1e76660e6d45018 removed duplicate entries for these from the Makefile, but removed a different set than was done in master branch, causing xf86Parser.h to not be installed, which in turn breaks the build of drivers like -ati, -intel & -nv that use xf86Modes.h, which includes xf86Parser.h Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-06dri2: Preserve compatibility with 1.6 DRI2 API/ABIKeith Packard3-77/+203
The old DRI2 buffer allocation API wasn't great, but there's no reason to make the server stop working with those drivers. This patch has the X server adapting to the API provided by the driver, using the new API where available and falling back to the old API as necessary. A warning will be placed in the log file when the old API is in use. (cherry picked from commit 2e2c5b216cc1c7a9bc26bd2c68226aaed5fc52ca) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-06xfree86: remove duplicate header entries in Makefile.amArkadiusz Miskiewicz2-4/+2
fixes https://bugs.freedesktop.org/show_bug.cgi?id=22547 This bug was fixed in a big clean-up commit in master, which cannot be backported (see commit b1dac41fb3853ca8182048ea57b88b6e84ecceb3) Signed-off-by: Rémi Cardona <remi@gentoo.org> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-06-29xfree86: fix SWCursor check in xf86CursorSetCursor.Peter Hutterer1-3/+3
Wrong check for inputInfo.pointer resulted in a SW cursor being rendered when the pointer left the screen (in a Xinerama setup). We must call the sprite rendering function if - SW cursors are enabled, or - The current device is not the VCP and not attached to the VCP. Backported from commit 66089e9129a821cfb1983d3d35f41b975a52de5e for server-1.6-branch by Peter Hutterer Reported-by: Gordon Yuan <GordonYuan@viatech.com.cn> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-06-29Change default for ExaOptimizeMigration to falseJulien Cristau1-1/+1
Quoting Michel Dänzer in <1234862541.4823.541.camel@thor>: Unfortunately, there are still bugs left in EXA which prevent it from working 100% correctly with the option enabled, see http://bugs.freedesktop.org/show_bug.cgi?id=16416 http://bugs.freedesktop.org/show_bug.cgi?id=19940 So disable it for now to avoid corruption. Signed-off-by: Keith Packard <keithp@keithp.com>
2009-06-29kdrive: set Activate/Deactivate grab for input devices (#21591)Peter Hutterer1-0/+4
X.Org Bug 21591 <http://bugs.freedesktop.org/show_bug.cgi?id=21591> (cherry picked from commit b1b5ec45c1cb650ccb8c659218f9481379c777d9) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-06-29Fix a couple off-by-one array boundary checks.Jeremy Huddleston1-1/+1
Error: Write outside array bounds at Xext/geext.c:406 in function 'GEWindowSetMask' [Symbolic analysis] In array dereference of cli->nextSib[extension] with index 'extension' Array size is 128 elements (of 4 bytes each), index <= 128 Error: Buffer overflow at dix/events.c:592 in function 'SetMaskForEvent' [Symbolic analysis] In array dereference of filters[deviceid] with index 'deviceid' Array size is 20 elements (of 512 bytes each), index >= 0 and index <= 20 Error: Read buffer overflow at hw/xfree86/loader/loader.c:226 in function 'LoaderOpen' [Symbolic analysis] In array dereference of refCount[new_handle] with index 'new_handle' Array size is 256 elements (of 4 bytes each), index >= 1 and index <= 256 These bugs were found using the Parfait source code analysis tool. For more information see http://research.sun.com/projects/parfait Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Signed-off-by: Adam Jackson <ajax@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit b680bda34da130ce408783f04214771471e41e8d) (cherry picked from commit 04c9e80f083659e63cffec8969fb3a0cfc551a97) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-06-29xfree86: restore default off for DontZapPeter Hutterer2-9/+7
Zapping is triggered by xkb these days, so note in the man page that it's the Terminate_Server action. Since it's XKB, personal preferences towards or against zapping should be achieved through xkb rulesets. If Terminate_Server is not in the xkb actions, then we can't zap anyway and we don't need a default of DontZap "on". This patch restores the old meaning of DontZap - disallow zapping altogether, regardless of XKB's current keymap. Ideally, this patch should be accompanied by b0f64bdab00db652e in xkeyboard-config. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 737b49199a05299486064e6e762cf2a2f6f95be6) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-06-29EDID: Fix timing class names to match the specAdam Jackson1-3/+3
(cherry picked from commit 5c1afac5eea1d8327c74342d12d082b75f0cebde)
2009-06-19pci: Dump vendor/devices ids in the printed device listAdam Jackson1-6/+4
(cherry picked from commit eb35402d0a5290e8a73d7d1e92f173294c364cc2)
2009-06-11DRI2: update DRI2 private drawable width & height according to X drawableJerome Glisse1-0/+2
(cherry picked from commit f250eea2e90fc50bec5214c2f41132b95edc2c46)
2009-06-11DRI2: Force allocation of real-front buffer for non-windows as wellIan Romanick1-8/+11
For redirected rendering we end up with pixmaps (which the app thinks are windows) that are double buffered. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Tested-by: Pierre Willenbrock <pierre@pirsoft.de> (cherry picked from commit 0d9d3f3e361f769822caedccf4c2a58cc9930ecc)
2009-06-11DRI2: Implement protocol for DRI2GetBuffersWithFormatIan Romanick3-80/+231
This change implements the protocol for DRI2GetBuffersWithFormat, but the bulk of the differences are the changes to the extension / driver interface to make this function work. The old CreateBuffers and DeleteBuffers routines are replaced with CreateBuffer and DeleteBuffer (both singular). This allows drivers to allocate buffers for a drawable one at a time. As a result, 3D drivers can now allocate the (fake) front-buffer for a window only when it is needed. Since 3D drivers only ask for the front-buffer on demand, the real front-buffer is always created. This allows CopyRegion impelemenations of SwapBuffers to continue working. As with previous version of this code, if the client asks for the front-buffer for a window, we instead give it the fake front-buffer. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kristian Høgsberg <krh@redhat.com>
2009-06-11DRI2: Add interface for drivers to query DRI2 extension versionIan Romanick2-0/+27
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 28ddfc88d8d547941c7f4713db527a3c2f9ec35a)
2009-06-11DRI2: Synchronize the contents of the real and fake front-buffersIan Romanick1-0/+22
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 567cf67959b30432ae30f4851ec17b3a375ab838)
2009-06-11DRI2: Do not send the real front buffer of a window to the clientIan Romanick1-2/+22
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit f1a995d1496d73741731e32f475097c44a8da972)
2009-06-11DRI2: Add fake front-buffer to request list for windowsIan Romanick1-0/+40
If a front-buffer is requested for a window, add the fake front-buffer to the list of requested buffers. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit aa2928325fe51d94a636dde9c090e8f54a311a12)
2009-06-11EDID: Add modes from Established Timings III descriptor to mode poolAdam Jackson3-4/+86
EDID 1.4, section 3.10.3.9 (cherry picked from commit 99e22b86c5f1a3653f3caaf01368a777d2b208d0)
2009-06-11EDID: Be more cautious about finding vendor blocks.Adam Jackson1-2/+4
Many old monitors zero-fill the detailed descriptors, so check for that to avoid a useless warning like: (WW) RADEON(0): Unknown vendor-specific block 0 (cherry picked from commit a2c5ee36b21c2ee5c0468f1b251e74c1412dbecb)
2009-06-11vfb: Fix depth setup.Adam Jackson1-27/+3
Initialize the depth corresponding to the root window before the pixmap-only depths. Otherwise you end up with the root window depth in the depth list twice, which is mildly confusing for clients and catastrophically confusing for PanoramiXConsolidate(). (cherry picked from commit 45530d16097459a756696e255ab4e72d6e51fbc4)
2009-05-08Don't leak default font path when appending built-insAlan Coopersmith1-2/+11
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> (cherry picked from commit 66539cc05d0b017b9feb4a038499907810140623) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08Don't leak canonical module name and patterns if module is built-inAlan Coopersmith1-1/+2
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 1c101d75d4855b2698e3fc8d2dd662f20585812f) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08randr12: looking up these bits if randr isn't initialised is bad.Dave Airlie1-2/+4
When xinerama is enabled we don't get randr protocol, but the driver might still want randr internals (cherry picked from commit faf7dfa099f5b42a703313fbd1bf8afdad07a179) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08Fix byte swapping of XF86VidMode{Get,Set}GammaRampAlan Coopersmith1-10/+6
Fixes OpenSolaris Bug 8315: Xorg segfaults when screensaver fades in cross-endian xdmcp session <http://defect.opensolaris.org/bz/show_bug.cgi?id=8315> Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> (cherry picked from commit 7d0f7518c2235a9dc783029971259ddaada2db20) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08Remove references to rgb.txt from files section of Xserver and Xorg man pagesJon TURNEY1-3/+0
The references to this file in the server code were removed in commit dda10c9066a660b647384179f82e1da8e063264f Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> (cherry picked from commit d0dd649035fc3698c5b436f9d9d248116aa106a3) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08Don't prepare outputs & crtcs if set_mode_major is presentJesse Barnes1-3/+8
A driver with this hook will take care of preparing the outputs & crtcs, so calling the prepare functions will just cause unnecessary flicker. Fixes bug #21077 (cherry picked from commit 94648bb797d94b025746c60679c584e5be2fae28) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08Bug#21324: Add quirk for Iiyama Vision Master 450Julien Cristau1-0/+5
Reported-by: Jeremy Henty <onepoint@starurchin.org> Signed-off-by: Julien Cristau <jcristau@debian.org> (cherry picked from commit 0dfb97f15f591f85e079f5829c77d0c328d00464) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08xfree86: edid quirk for Philips LCD LP154W01-TLAJTormod Volden1-0/+5
This panel reports its vertical size in cm. X.Org bug#21000 <http://bugs.freedesktop.org/show_bug.cgi?id=21000> Signed-off-by: Tormod Volden <debian.tormod@gmail.com> Signed-off-by: Julien Cristau <jcristau@debian.org> (cherry picked from commit b1dab580bdfb4acfe3feddeda6e760098ec4922a) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08xfree86: Remove device from inputInfo.devices if ActivateDevice failed.Ander Conselvan de Oliveira1-0/+4
After the call to xf86ActivateDevice, the new device will be added to inputInfo.devices. However, if the subsequent call to ActivateDevice fails, the correponding InputInfoRec for the device is deleted but an entry still remains in inputInfo.devices. This might lead to a server crash later on (on InitAndStartDevices for instance) when the device control proc would be called for an invalid device. (cherry picked from commit efa31092d6703397121a0ada4f7205a8ecad3d3d) Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-05-08DRI2: Send the version the code actually supportsIan Romanick1-2/+2
This prevents building an older server with a new dri2proto.h from resulting in a DRI2 extension module that lies about the version it supports. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 44227ef1b77467c76147b9bf79bdd0e6305a522a) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-03-20randr: Fix thinko in xf86TargetPreferredAdam Jackson1-2/+2
The only-one-output case would only work right if that also happened to be the zeroth output. Oops. (cherry picked from commit 8a6ed44a8b2fc5f14729dc54fec17607ced03859)
2009-02-25XQuartz: Re-enable support for capslockJeremy Huddleston1-1/+2
(cherry picked from commit 4901b8147e593d26d7a31a9b73a201254b948916)
2009-02-25DRI1: Make DRICreateDrawable return TRUE for pixmaps.Michel Dänzer1-1/+1
GLX_EXT_texture_from_pixmap was broken since commit a26c77ff432d2e85a2665fc36fca25143460c476 ('glx: fix retval checks when failures occur for drawable creation.') Signed-off-by: Michel Dänzer <daenzer@vmware.com> (cherry picked from commit ef320bdd5ec3419abba77041d3a4d96a3ff87563)
2009-02-25Add Extensions section to xorg.conf man pageAlan Coopersmith1-1/+28
Extensions section was added in X11R6.8.0 and documented in the release notes: http://www.x.org/archive/X11R6.8.0/doc/RELNOTES2.html#3 but never made it into the man page. Also fix a bonus typo. Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> (cherry picked from commit ab61033700b5383a7a15370dd054eaa80e72e811)
2009-02-25Pre-clip panning coordinates to keep crtc within panning regionKeith Packard1-167/+214
There is a separate panning region check, but that doesn't work under transformation, so just pre-clip the mouse coordinates when computing the panning offsets. This leaves the case where panning constants are changing unresolved. Signed-off-by: Keith Packard <keithp@keithp.com> (cherry pick from commit c090f5514d28e1602a6ebbe7c909e98a0e3374d7)
2009-02-19xf86CrtcShadowClear is unused.Keith Packard1-31/+0
Remove this now that clearing is done by repainting with appropriate extend modes. Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 60a4f1368785d26a49a3ef6df829723ca154c154) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-19Make panning+transform be correctly driven by mouseKeith Packard1-8/+173
Figuring out how to adjust the crtc origin to keep the mouse pointer within the crtc is a bit of a trick Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 63810aca31b962c93be4796883bde6ccb653e3a9) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-19Make RgbPath keyword in xorg.conf a non-fatal errorAlan Coopersmith2-0/+7
Xorg shouldn't refuse to run just because the user has an xorg.conf that had the previously-used RgbPath keyword in it. Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit d2cf562bbad553d7f09b70202134f5b6ada0114e) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-18X11/fonts/fontmod.h doesn't exist anymore.Keith Packard1-1/+0
libXfont 1.4.0 no longer includes this file, nor do we need it, so just stop attempting to reference it. Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-18XQuartz: Don't need GlxSetVisualConfig any moreJeremy Huddleston1-2/+0
Fixes build failure resulting from 516f8e2cad1311a09764e2633644188d1e3c31bb (cherry picked from commit 066b17028a35956a089815716e38571f305469c5) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17Eliminate the shadow clear on transform changeKeith Packard2-14/+29
When the crtc transformation changes, the entire crtc must be repainted. This was being done by clearing the shadow and then painting the rectangle containing the screen image; the clear being required as the screen image may not fill the crtc. When changing the transform rapidly, this leads to flashing. Eliminate the clear by painting the entire crtc instead of just the screen rectangle. (cherry picked fom commit 5394b7e66224d20888dd4020f5cb8ca930720fb4) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17Add XkbDir to Files config file sectionKeith Packard7-0/+25
The XKB base directory was not configuable through the config file. (cherry picked from commit 76f18b94bd2719a8199334742d021c4d0806187d) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17Default to use standard bitmap fonts, with builtins as fallbackPaulo Cesar Pereira de Andrade1-86/+48
The builtin-fonts configure option was removed, as it at best should have been a runtime option. Instead, now it always register all "font path element" backends, and adds built-ins fonts at the end of the default font path. This should be a more reasonable solution, to "correct" the most common Xorg FAQ (could not open default font 'fixed'), and also don't break by default applications that use only the standard/historical X Font rendering. (cherry picked from commit 49b93df8a3002db7196aa3fc1fd8dca1c12a55d6) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17Make crtc_notify wrap/unwrap code do nothing unless mode code is inuseKeith Packard1-11/+18
Drivers not using the new hw/xfree86/modes code would crash in DRI due to that code trying to monitor CRTC changes. (cherry picked from commit ea309e47457156b60aadbf113f04e5b6851029c8) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17XQuartz: GLX: Fix accidental exclusion of glBlitFramebufferEXT on LeopardJeremy Huddleston1-1/+1
(cherry picked from commit 8620579483789ae9ac1b68dbefe32b70011386de) (cherry picked from commit 0dbc356795bbab3889b5f1684f55bd193757d0c9) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17XQuartz: GLX: OpenGL.framework on Tiger doesn't have glBlitFramebufferEXTJeremy Huddleston1-0/+2
(cherry picked from commit e01662cadcaa4052e3a5aa82cbaed00a2d0220e0) (cherry picked from commit fd08be749e0b3c5de02a6ae8b3d21f92c5986157) Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17XQuartz: Don't need explicit Activate/EnableDevice in InitInputJeremy Huddleston2-12/+0
(cherry picked from commit b1d29784410b3b93037e5636f336ba608d8ad6e3) Signed-off-by: Keith Packard <keithp@keithp.com>