This overhauls the radeon driver and removes all the old UMS-only code,
it drops all the UMS, DRI1, XAA, overlay Xv, video capture, tv tuners
There are probably a lot more cleanups that will fall out of this afterwards.
So far this is compile/build tested.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Use libdrm common surface code so mesa,ddx have same idea
about tiling surface and what their pitch should be and
the alignment constraint.
v2 fix remaining issue add new option to conditionaly enable
v3 fix fbcon copy and r600 exa copy path
v4 fix non tiled path 2D tiling on GPU >= R600, set it to false
as default
v5 adapt to pixel/element size split of libdrm/radeon
v6 update to properly handle falling back to 1d tiled
v6 final fix to tile split value on evergreen and newer
v7 fix default array mode on r6xx, fix height alignment issue
on evergreen
v8 fix tile split value
v9 add stencil tile split support, simplify dri2 for stencil
with evergreen
v10 Try to fix xv path regarding tiling. Adapt to libdrm API
change. Try to fix case where there is no surface which
means non tiled bo.
v11 check for proper libdrm
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Properly handle asynchronous DRI2 events for disconnected clients.
Track client's pending requests and mark them as invalid when the
client disconnects.
This is based on the version from Alban Browaeys in bug #29065.
v1 (Alban Browaeys): Based upon a detailed explanation from Oldřich
Jedlička and comments from Christopher James Halse Rogers.
on http://lists.x.org/archives/xorg-driver-ati/2010-August/016780.html .
v2: Updated version to apply on master. Removed unnecessary
client_index field from _DRI2FrameEvent. Added freeing/removing from
list to failed paths of radeon_dri2_schedule_wait_msc and
radeon_dri2_schedule_swap.
v3: Adopt to older xorg-server that doesn't have dixRegisterPrivateKey.
v4: Conditional include of list.h, unreachable return removed.
v5: Distribute list.h as xorg_list.h, remove xorg-server version check.
Use the version from xorg-server when available (checked in
configure.ac).
v6: Removed xorg_list.h, made DRI2 scheduling features dependent on
list.h presence.
The server 1.2 as shipped in the tarball on the web does not contain the
modes code. It was added just after and found in git branch server-1.2-branch.
The modes code was initially included in version ati 6.8.0 and fails to compile
with server 1.2 as it requires randr 1.2. The modes code is included in server
versions 1.3 and later, so there is no need to provide an unknown version of
the modes code in the ati driver tarball. It will never be used.
This patch makes the ati driver requiring server 1.3 or later.
Version 6.8.0 configures and builds ok on server 1.3
Master branch post 6.13.1 configures and builds ok on server 1.3
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Per-target compilation flags (theatre200_drv_la_CFLAGS) are required
when multiple targets which require different compiler flags,
are build in the same makefile.
Automake issues a command with -c and -o flags which not all compilers
support. The object fles are prefixed with theatre200_drv_la.
The macro AM_PROG_CC_C_O must then be used to provide this feature
on compilers that do not have it. If not, a warning is issued at make time.
This macros checks for compiler support and if missing, uses a "compile"
script it generates in the package root directory.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Autoconf says:
"This macro is obsolescent, as current systems have conforming
header files. New programs need not use this macro".
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls
AC_PROG_C_C99. This sets gcc with -std=gnu99.
If AC_PROG_CC macro is called afterwards, it resets CC to gcc.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Unrelated to the previous patches, the new value simply reflects
the reality that the minimum level for autoconf to configure
all x.org modules is 2.60 dated June 2006.
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
When we get a hotplug event from the kernel we should notify the client side to reconfigure displays.
based on work by ajax in intel driver.
Signed-off-by: Dave Airlie <airlied@redhat.com>
It doesn't seem to be used anywhere, so don't require it.
CC: Jerome Glisse <jglisse@redhat.com>
CC: Alex Deucher <alexdeucher@gmail.com>
CC: Dave Airlie <airlied@redhat.com>
Signed-off-by: Matt Turner <mattst88@gmail.com>
AM_CONDITIONAL calls can't be made inside if statements, since
automake won't know what to do when the if isn't true.
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
The sdkdir variable isn't use, so remove the statement.
Acked-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Add missing INSTALL file. Use standard GNU file on building tarball
README may have been updated
Remove AUTHORS file as it is empty and no content available yet.
Remove NEWS file as it is empty and no content available yet.
The git generated ChangeLog replaces the hand written one.
Update configure.ac to xorg-macros level 1.3.
Use XORG_DEFAULT_OPTIONS which replaces four XORG_* macros
Update Makefile.am to add ChangeLog target if missing
Remove ChangeLog from EXTRA_DIST or *CLEAN variables
This is a pre-req for the INSTALL_CMD
AC_CHECK_FILE is not possible when cross-compiling. Use AC_CHECK_HEADER /
AC_PREPROC_IFELSE instead.
[ Michel Dänzer: Shuffled things around slightly to make it work on my setup ]
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Signed-off-by: Michel Dänzer <daenzer@vmware.com>