Commit Graph

67 Commits

Author SHA1 Message Date
Kenneth Graunke 3b5be33fc5 modesetting: Include glamor.h from driver.h.
We basically want it throughout the driver.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
Tested-by: Jason Ekstrand <jason.ekstrand@intel.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2014-12-25 13:39:17 -08:00
Daniel Martin 0d63fa5850 modesetting: Move Bool glamor into drmmode struct
Move the boolean glamor from struct modesetting into struct drmmode for
later re-use in drmmode_display.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2014-12-08 15:49:33 -08:00
Eric Anholt cac4b064f9 modesetting: Add support for DRI2 with glamor.
This is derived from the intel driver DRI2 code, with swapchain and
pageflipping dropped, functions renamed, and vblank event management
shared code moved to a vblank.c for reuse by Present.

This allows AIGLX to load, which means that you get appropriate
visuals exposed in GL, along with many extensions under
direct-rendering that require presence in GLX (which aren't supported
in glxdriswrast.c).

v2: Drop unused header includes in pageflip.c, wrap in #ifdef GLAMOR.
    Drop triple-buffering, which was totally broken in practice (I'll
    try to fix this later).  Fix up some style nits.  Document the
    general flow of pageflipping and why, rename the DRI2 frame event
    type enums to reflect what they're for, and handle them in a
    single switch statement so you can understand the state machine
    more easily.
v3: Drop pageflipping entirely -- it's unstable on my Intel laptop
    (not that the normal 2D driver is stable with pageflipping for
    me), and I won't get it fixed before the merge window.  It now
    passes all of the OML_sync_control tests from Jamey and Theo
    (except for occasional warns in timing -fullscreen -divisor 2).
v4: Fix doxygen at the top of vblank.c

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2014-10-27 13:16:43 -07:00
Eric Anholt aaf5e2d643 modesetting: Add support for rendering using glamor.
By default modesetting now tries to enable X acceleration using
glamor, but falls back to normal shadowfb if GL fails to initialize.

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
2014-10-09 09:48:51 +02:00
Eric Anholt 3119acdab9 modesetting: Run x-indent-all.sh.
As I was editing code, the top-level .dir-locals.el was making my new
stuff conflict with the existing style.  Make it consistently use the
xorg style, instead.

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
2014-10-09 09:48:42 +02:00
Adam Jackson 2029c028fc modesetting: Don't (brokenly) double-track software cursor
Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-02-25 13:37:20 -05:00
Alex Deucher 02fbae85e7 modesetting: query cursor size from the kernel
Use new drm caps.  This allows hw cursors to work
correctly on gpus with non-64x64 cursors.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2014-02-12 13:16:53 -05:00
Dave Airlie f3b9e52b29 modesetting: move shadow stuff to other structure
we need this for resize to work properly.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-02-20 11:00:56 +00:00
Dave Airlie 6f581e3fde fix fb_id for dirty reporting 2011-10-03 16:09:12 +01:00
Dave Airlie 1f37991dec add shadowfb support, default to on.
we should probably expose a bit from kernel to say if shadow is preferred
or wasteful.
2011-09-29 15:56:15 +01:00
Dave Airlie 7847321138 port damage tracking code from st/xorg 2011-09-29 13:32:38 +01:00
Dave Airlie 2a46189054 modesetting: restart driver effort from other codebases
This starts a randr 1.2 compatible driver with cursors.

TODO:
libkms
dirty handling
server recycling.
2011-09-29 11:49:26 +01:00
Dave Airlie e2f8315dae drop exa
don't provide accel in this framework
2011-03-10 09:15:55 +10:00
Alan Hourihane ccd0c76472 Add EXA winsys for gallium pipe driver interface.
Plug in the EXA framework into the pipe driver
for surface_copy & surface_fill.

Back pixmaps with drmBO's including the front buffer.
2008-06-26 22:27:44 +01:00
Alan Hourihane 47969d7928 Add DRI2 support.
Add EXA stubs.

Currently tested with i915.
2008-06-16 15:08:30 +01:00
Alan Hourihane f9f7a872bf Run indent 2008-05-28 15:55:36 +01:00
Alan Hourihane 106bea5ad1 Initial commit of new modesetting driver 2008-05-28 13:33:07 +01:00