Age | Commit message (Collapse) | Author |
|
The compat header takes care of the old server vs new server.
this commit was autogenerated from util/modular/x-driver-screen-scrn-conv.sh
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Should make bugs like https://bugs.freedesktop.org/show_bug.cgi?id=48138
easier to diagnose.
[ Michel Dänzer: Appended newline to error message. ]
Signed-off-by: Anisse Astier <anisse@astier.eu>
Singed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
So that bugs like https://bugs.freedesktop.org/show_bug.cgi?id=48138 can be
diagnosed more easily.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
- KMS only
- Includes full EXA/Xv support
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Fixes hang when trying to use DRI2 swap scheduling after a server reset.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Tested-by: Christian König <Christian.koenig@amd.com>
|
|
In path where we need to use scratch bo as temporary area,
consider it as linear buffer. Not linear aligned. Fix some
case such as in bugs:
https://bugs.freedesktop.org/show_bug.cgi?id=45827
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
It's standard behavior.
Signed-off-by: Alex Deucher <alexdeucher@gmail.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>
|
|
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Previous xservers had a bug in the EXA code which caused
display corruption in some cases.
See:
https://bugs.freedesktop.org/show_bug.cgi?id=33929
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
The field is encoded.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Currently only 1D tiling as 2D tiling still has some corner
cases to fix up.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Just fallbacks for now.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Fusion had a bug setting up the VM on earlier kernels so we need to work
around that and only enable accel on a new enough kernel.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
The first take of my patch missed the breakage against pre-1.10
xservers and now I know XNFasprintf() is not a 1:1 replacement
for XNFprintf().
The idea for the fix seemed to be so obvious, but as usual "really"
test the patch you are sending to any ML.
I am awfully sorry for the overhasty bad hack.
Thanks to Alan and Alex for the help to fix it correctly, now.
Tested-By: Sedat Dilek <sedat.dilek@gmail.com>
Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>
|
|
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
This reverts commit cb4dc7ab66016d0c980800f8dbf71bbe993889d3.
Looks like this caused https://bugs.freedesktop.org/attachment.cgi?id=43852 ,
but even if it didn't, the following needs to be addressed first:
cc1: warnings being treated as errors
../../src/radeon_kms.c: In function ‘radeon_open_drm_master’:
../../src/radeon_kms.c:413: error: passing argument 1 of ‘XNFasprintf’ from incompatible pointer type
/usr/local/include/xorg/Xprintf.h:57: note: expected ‘char **’ but argument is of type ‘char *’
../../src/radeon_kms.c:413: error: passing argument 2 of ‘XNFasprintf’ makes pointer from integer without a cast
/usr/local/include/xorg/Xprintf.h:57: note: expected ‘const char * restrict’ but argument is of type ‘uint16_t’
../../src/radeon_kms.c:413: error: assignment makes pointer from integer without a cast
make[2]: *** [radeon_kms.lo] Error 1
|
|
Noticed when building ati/radeon ddx against xserver 1.10-rc3.
[ build.log ]
../../src/radeon_kms.c:412:5: warning: 'XNFprintf' is deprecated (declared at /usr/include/xorg/os.h:273)
agd5f: don't break the build against pre-1.10 xservers.
Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
- requires 2.6.37 or newer
- 1D only at the moment
- disabled by default
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
To avoid CS rejection.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
We need the proper group size to calculate alignment so the
ddx and drm agree.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
agd5f: remove kms surface for cursor since
we now do the swap in the cursor load to avoid
breaking pre-6xx cards with BE.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Should have been removed in:
ef9bfb262db7004bef3704e5d914687e50d3fca4
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Always flush the cbuf in case we end up with a cbuf mapped in
Prepare*(), but never end up issuing a draw call since the cbuf
may be in use by multiple ops.
The CS check for the cbuf bo is no longer necessay because
the cbuf bo is NULL at this point due to the radeon_vbo_put()
just prior.
Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=32188
|
|
this is also needed for certain things like stipple rendering.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
A new optional kms driver option "SwapbuffersWait" is defined
for xorg.conf, which defaults to "on". If "on", DRI2 bufferswaps
will be synchronized to vsync, otherwise not.
This currently only affects copy-swaps, not pageflipped swaps.
It also requires a swap_interval setting of zero by the OpenGL
client.
Ideally, we'd provide a way for dri2 to pass the current swap
interval to the ddx so we could change this dynamically.
Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
|
|
requires radeon drm 2.8.0 or higher
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
Use UTS/DFS to tile/untile as appropriate for sw access.
Also enables pageflipping with tiling enabled.
|
|
512 seems to cause issues on certain cards.
Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=31724
|
|
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Accel not enabled yet.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
On r6xx+, 2D tiling can require larger than 4k base alignment.
|
|
More duplicated paths discoved...
|
|
Previously there were 3 different paths with what should
have had duplicated code:
- EXACreatePixmap2
- Initial front buffer creation
- Randr resize
This patch attempts to unify the alignment across all 3.
This may fix tiling issues in some cases and should make
buffer pitches match for pageflipping.
|
|
git+ssh://git.freedesktop.org/git/xorg/driver/xf86-video-ati
|
|
this is a port of 69d65f9184006eac790efcff78a0e425160e95aa from the Intel
driver.
Submit batch buffers from flush callback chain
There are a few cases where the server will flush client output buffers
but our block handler only catches the most common (before going into select
If the server flushes client buffers before we submit our batch buffer,
the client may receive a damage event for rendering that hasn't happened yet
Instead, we can hook into the flush callback chain, which the server will
invoke just before flushing output. This lets us submit batch buffers
before sending out events, preserving ordering.
Fixes 28438: [bisected] incorrect character in gnome-terminal under compiz
https://bugs.freedesktop.org/show_bug.cgi?id=28438
Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
this way we can share the vbo code with const buffers
|
|
Based on the r6xx/r7xx code updated for evergreen.
Still causes GPU hangs in some cases. We haven't
tracked down why yet. Might be related to constant
buffer persistence.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Requires radeon drm 2.6.0 and updated mesa.
v2: - fix lockup due to not emiting DB_DEPTH_INFO
https://bugs.freedesktop.org/show_bug.cgi?id=28342
- fix drm minor version to deal with evergreen accel
v3: rebase on current ddx git
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
This is a precursor for r300/500 vbo support.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Fixes deprecation warnings with xserver master and should also work with older
xservers.
|
|
This moves pixmap and mode set into CSR where its allowed. Should work fine on
old servers also.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|