Commit Graph

57 Commits

Author SHA1 Message Date
Ian Romanick
8b6b40b727 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86.h
	hw/xfree86/common/xf86Init.c
	hw/xfree86/common/xf86pciBus.c
	hw/xfree86/int10/generic.c
	hw/xfree86/int10/helper_exec.c
	hw/xfree86/loader/xf86sym.c
	hw/xfree86/os-support/bus/Pci.c
	hw/xfree86/os-support/bus/Pci.h
	hw/xfree86/os-support/bus/linuxPci.c
	hw/xfree86/os-support/linux/int10/linux.c
2007-08-23 18:19:17 -07:00
Kristian Høgsberg
50cb6c7e44 Don't map the front buffer in libdri if the ddx driver doesn't set the size.
This lets drivers map the front buffer themselves
by setting dontMapFramebuffer.
2007-07-27 09:55:27 -07:00
Michel Dänzer
4abd00dab7 Make sure DRI drawables are cleaned up when client dies.
The previous scheme didn't work when the client didn't create the core drawable,
e.g. the root or composite overlay window. Use refcounting via special client
resources to fix that.
2007-07-10 09:02:08 +02:00
Michel Dänzer
edb9ccf3ec Make sure DRIScreenPrivIndex is -1 when no DRI screen private is allocated.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=11340 .
2007-06-25 10:51:38 +02:00
Ian Romanick
ab7a6d860d Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/os-support/bus/Pci.c
	hw/xfree86/os-support/bus/linuxPci.c
2007-06-18 16:51:13 -07:00
Michel Dänzer
1aceec61ff DRI: Clip cliprects obtained from DRIGetDrawableInfo to screen dimensions.
This is to avoid issues with redirected windows which are located partly or
fully outside of a screen edge, resulting in unusual cliprects which the 3D
drivers generally can't handle. The symptoms in such cases would be incorrect
rendering or even crashes or hangs.
2007-06-11 09:23:19 +02:00
Michel Dänzer
5d896e43fd DRITreeTraversal: Stop walking tree when we've seen all DRI windows. 2007-06-11 09:23:19 +02:00
Michel Dänzer
5006d08d7f DRI: Add TexOffset driver hooks.
To be used by AIGLX for GLX_EXT_texture_from_pixmap without several data copies.

The texOffsetStart hook must make sure that the given pixmap is accessible by
the GPU for texturing and return an 'offset' that can be used by the 3D
driver for that purpose.

The texOffsetFinish hook is called when the pixmap is no longer being used for
texturing.
2007-05-22 10:51:52 +02:00
Thomas Hellstrom
d0e55774e0 libdri: Make sure the new DRIInfo keepFDOpen member is honoured. 2007-04-19 11:50:06 +02:00
Thomas Hellstrom
02d42f344c Changes for single-entity multi-screen DRI.
The entity (device) has a locking SAREA and a master file descriptor
that optionally isn't closed between server generation.

The locking SAREA contains the device hardware lock.
Each DRI screen creates an new SAREA containing the drawable lock,
drawable-and private info, the drawable SAREA.

The first screen optionally shares its drawable SAREA with the
device SAREA.

Default is to close the master descriptor between server generations,
and to share the drawable SAREA of the first screen with the device locking
SAREA. Thus we should (hopefully) have full backwards compatibility.

Mesa changes to support single-device multiple screens are pending.
2007-04-16 17:31:40 +02:00
Ian Romanick
2c6d471088 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/Makefile.am
	hw/xfree86/dri/dri.c
2007-03-28 08:08:04 -07:00
Jay Estabrook
c366b82bd5 Ensure domain is stripped from the bus ID. 2007-03-09 12:26:55 +00:00
Michel Dänzer
3344a4eda7 DRI: Make sure number of DRI windows is accurate in driver ClipNotify hook.
Always call DRI{De,In}creaseNumberVisible (which in turn calls
DRIDriverClipNotify) after updating pDRIPriv->nrWindows.
2007-02-20 19:21:25 +01:00
Michel Dänzer
3c7a27dc77 DRI: New ClipNotify driver hook.
The hook is called whenever the clipList of any DRI window changes, be it via
DRIClipNotify, DRICreateDrawable or DRIDrawablePrivDelete. This allows the
driver to keep track of which DRI windows are visible where.
2007-02-20 19:21:25 +01:00
Michel Dänzer
eedf148e5a Track number of visible DRI windows separately for transitions.
This allows e.g. doing page flipping with multiple DRI windows as long as
only one of them is visible.
2007-02-20 19:21:25 +01:00
Ian Romanick
e1f73d2208 Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86Configure.c
	hw/xfree86/common/xf86Helper.c
	hw/xfree86/common/xf86pciBus.c
	hw/xfree86/int10/helper_exec.c
	hw/xfree86/os-support/bus/Pci.c
	hw/xfree86/os-support/bus/linuxPci.c
	hw/xfree86/os-support/linux/lnx_pci.c
	hw/xfree86/scanpci/Makefile.am
	hw/xfree86/utils/pcitweak/Makefile.am
	hw/xfree86/utils/scanpci/Makefile.am
2006-12-08 17:24:15 -08:00
Dave Airlie
e2f6dacc73 dri: setup libdrm hooks as early as possible.
This is due to radeon doing drm stuff before DRI extension gets initialised
2006-11-18 11:29:00 +11:00
George Sapountzis
5bfe7f4dfc DRI: call drmSetServerInfo() before drmOpen().
Also, remove some libdrm remnants.
2006-11-13 01:54:32 +02:00
Dave Airlie
fd91630b73 make X server use system libdrm - this requires libdrm >= 2.3.0
This patch blacklists the load "drm" line, moves some functions in dri module
links dri module against libdrm, and removes the X copy of libdrm
2006-11-09 09:30:33 +11:00
Ian Romanick
8b90913566 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/Makefile.am
	hw/xfree86/common/xf86.h
	hw/xfree86/common/xf86DoScanPci.c
	hw/xfree86/os-support/bus/linuxPci.c
	hw/xfree86/scanpci/extrapci.ids
	hw/xfree86/scanpci/pci.ids
	hw/xfree86/scanpci/pciid2c.pl
	hw/xfree86/scanpci/xf86PciStdIds.h
2006-10-24 08:57:59 -07:00
Michel Dänzer
2206a92a97 Push information about cliprects of DRI windows to the DRM. 2006-09-27 10:48:49 +02:00
Ian Romanick
380b51d605 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86Init.c
	hw/xfree86/int10/pci.c
	hw/xfree86/scanpci/xf86PciData.h
	hw/xfree86/scanpci/xf86PciStdIds.h
	hw/xfree86/scanpci/xf86PciStr.h
	hw/xfree86/scanpci/xf86ScanPci.h
	hw/xfree86/utils/pcitweak/pcitweak.c
	hw/xfree86/utils/scanpci/scanpci.c

Re-removed most of the conflicting files.
2006-07-25 11:30:04 -07:00
Ian Romanick
07ad92d2c4 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-rework
Conflicts:

	hw/xfree86/common/xf86DoScanPci.c
	hw/xfree86/common/xf86Init.c
	hw/xfree86/common/xf86pciBus.c
2006-07-21 15:25:35 -07:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Daniel Stone
84683f19b4 get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE
Get rid of almost all uses of these definitions.  They're still defined for
delinquent out-of-tree drivers, and also for the Mesa build.  As well as
for miinitext.c.  But largely gone.
2006-07-18 18:17:38 -04:00
Ian Romanick
46f55f5dea Initial batch of changes for PCI rework. All future changes will be
tracked individually.
2006-06-07 14:09:02 -07:00
Adam Jackson
a01f17d6de Coverity #983: Move some risky debugging code inside #ifdef DEBUG. 2006-04-03 01:35:05 +00:00
Adam Jackson
ff6f88348c More warning cleanup. 2006-03-29 01:05:09 +00:00
Benjamin Herrenschmidt
7314d16cde Fix DRIExtensionInit() to not register callbacks when it hasn't been
initialized for the current server generation. Fixes a problem where it
    would use stale private index and blow up in colorful ways if no driver
    called DRIScreenInit() on the second generation (which happens due to a
    bug in radeon that i'll fix separately). Note: clearing the index in
    DRIReset() wouldn't work as DRIReset() is called before the
    CloseScreen() chain
2006-03-15 03:18:42 +00:00
Kristian Høgsberg
c3342c8000 Merge accel_indirect branch to HEAD. 2006-03-12 00:11:34 +00:00
Benjamin Herrenschmidt
5c9b6f0fb0 DRIGetSecs() would call getsecs() when XFree86LOADER is defined, relying on
the wrappers to provide it. Wrapper gone, and getsecs doesn't exist on
    linux so it now blows up. Fixes it by just calling gettimeofday() in
    all cases instead.
2006-02-14 08:14:42 +00:00
Eric Anholt
c3d1403672 Remove libcwrapper usage from xorg server modules. The libcwrapper is only
of (marginal) use in the drivers, and that usage remains.
2006-02-10 22:00:30 +00:00
Adam Jackson
fe0c838b5d Move drawable lock acquisition into DRIClipNotify from DRIValidateTree, so
we only take it when clipping a DRI drawable instead of on every tree
    update. Note drawable lock acquisition per- screen instead of globally,
    and drop it in BlockHandler if necessary.
2006-01-06 18:06:02 +00:00
Adam Jackson
3192f400c7 Disable the {Open,Close}FullScreen DRI protocol. Remove empty FullScreen
stubs from drivers, comment the non-empty ones.
2005-09-24 18:45:45 +00:00
Adam Jackson
b290884719 Bug #3284: Make the DRI lock reference count per-screen. 2005-09-13 00:44:52 +00:00
Kevin E Martin
2f0487521d Fix the *-config.h includes for the files that have moved in the modular
tree.
2005-07-15 23:08:31 +00:00
Daniel Stone
0bb669638f Change <X11/misc.h> and <X11/os.h> to "misc.h" and "os.h". 2005-07-03 08:53:54 +00:00
Daniel Stone
e03198972c Add Xtrans definitions (FONT_t, TRANS_CLIENT) to clean up warnings.
Add XSERV_t, TRANS_SERVER, TRANS_REOPEN to quash warnings.
Add #include <dix-config.h> or <xorg-config.h>, as appropriate, to all
    source files in the xserver/xorg tree, predicated on defines of
    HAVE_{DIX,XORG}_CONFIG_H. Change all Xfont includes to
    <X11/fonts/foo.h>.
2005-07-03 07:02:09 +00:00
Daniel Stone
9b1debcdb6 Change all misc.h and os.h references to <X11/foo.h>. 2005-07-01 22:43:43 +00:00
Adam Jackson
07d1e9ae5f Bug #3066: Promote frameBufferPhysicalAddress to pointer from CARD32; bump
DRIINFO version to match. Fix various pointer printfs in libdri to be
    64-bit aware. Silence a warning about redefining noXFree86DRIExtension.
    (Jesse Barnes)
2005-05-18 19:44:35 +00:00
Adam Jackson
b87a32fb0e Bug #3163: Create new DRIINFO_*_VERSION macros to indicate the version
number of the DRIInfoRec, disambiguating it from the XF86DRI protocol
    version number. Modify DRIQueryVersion to return the libdri version
    number, which all DDXes were requesting implicitly. Fix the DDXes to
    check for the DRIINFO version they were compiled against.
2005-05-18 17:47:35 +00:00
Daniel Stone
292c4cff26 Fix includes right throughout the Xserver tree:
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
    <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
2005-04-20 12:25:48 +00:00
Roland Mainz
6c317c1c13 //bugs.freedesktop.org/show_bug.cgi?id=1361) attachment #1287
(https://bugs.freedesktop.org/attachment.cgi?id=1287): Avoid DRI
    initalisation when the Xfree86-DRI extension was turned off. Patch by
    Kristian Høgsberg <krh@bitplanet.net>.
2004-12-08 05:52:20 +00:00
Egbert Eich
7643199de1 Fix static build.
add i845 to the list of chips that allow memory size tweaking.
2004-07-30 20:38:27 +00:00
Kevin E Martin
854c1afa86 Fix "DoLoadableServer NO" build 2004-07-30 04:44:13 +00:00
Adam Jackson
799208dd44 Bug #377: Make lib{glx,GLcore,dri} work when compiled as dlloader modules. 2004-07-26 19:06:04 +00:00
Eric Anholt
e56e24af25 Merge DRI-trunk-20040613 changes in programs/Xserver/GL. 2004-06-16 09:37:59 +00:00
Eric Anholt
2e1868b560 DRI trunk-20040613 import 2004-06-16 09:25:21 +00:00
Eric Anholt
22bad9474b DRI XFree86-4_3_99_12-merge import 2004-06-16 09:22:17 +00:00
Egbert Eich
0664db19bf Merging XORG-CURRENT into trunk 2004-04-23 18:54:16 +00:00