summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-03-17Add radeon_get_drm_master_fd helper functionHans de Goede
This is a preparation patch for adding server-managed-fd support without it turning into a goto fest. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-03-17radeon_open_drm_master get rid of unnecessary gotoHans de Goede
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-03-13Build against glamor in the xserver tree if availableMichel Dänzer
2014-03-11update man page to reflect tiling changes for CI partsAlex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2014-03-11radeon: enable tiling by default on CIKAlex Deucher
Now that mesa 10.1 is released, we can enable this by default for CIK parts. Tiling improves memory bandwidth utilization. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2014-03-11radeon: require libdrm 2.4.51Alex Deucher
Required for proper tiling support on CIK parts. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2014-03-11Allow enabling glamor on R500 (and R300) class 3D engines as well.Michel Dänzer
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75709 Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2014-02-25Only log debugging output about initializing colormaps when we're doing soMichel Dänzer
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2014-02-24evergreen: fix shader constant upload on ppcJérôme Glisse
The number of dword we have to swap is (16*4) ie 16 vectors of 4 floats each not 16 floats. Never hit this issue before because we never had more than 4 constant vector. Signed-off-by: Jérôme Glisse <jglisse@redhat.com>
2014-02-21radeon: don't install colormap handling if there are no crtcsAlex Deucher
Fixes a crash on cards with 0 crtcs. Discussion: http://lists.freedesktop.org/archives/dri-devel/2014-February/054186.html Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2014-02-20return immediately in preinit when called with PROBE_DETECTMaarten Lankhorst
This fixes a crash with Xorg -configure. Bug: https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1278046 Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2014-01-24bump version post releaseAlex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2014-01-24radeon: bump version for releasexf86-video-ati-7.3.0Alex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2014-01-24Require glamor 0.6.0Alex Deucher
This is required for Xv support and a number of important performance improvements. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2014-01-22Don't require the glamoregl module to be pre-loaded with xserver >= 1.15Michel Dänzer
The issues with loading it on demand have been fixed in xserver 1.15. Inspired by Jérôme Glisse on IRC.
2014-01-08dri2: Make last_vblank_seq local unsigned to match dpms_last_seqMichel Dänzer
Without this, I was occasionally running into gnome-shell hangs due to wildly off vblank sequence values. Doesn't seem to happen anymore with this change. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2014-01-07radeon/exa: Always use a scratch surface for UTS to vramAlex Deucher
If we don't, we may hit a buffer that crosses the visible vram boundary resulting in a sigbus when the CPU accesses the buffer beyond the PCI aperture. This will introduce an extra copy in certain cases. This is based on Michel's patch from bug 44099 updated for all asic families. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=44099 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2013-12-24drm/radeon: fix SUMO2 pci idAlex Deucher
0x9649 is sumo2, not sumo. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-12-24radeon: Restore kernel module load on FreeBSD.Robert Millan
Since the introduction of a call to drmCheckModesettingSupported() in radeon_kernel_mode_enabled(), with abort condition if such call fails, the drmOpen() call in radeon_open_drm_master() no longer takes the responsibility of loading the radeon kernel module. However at least on FreeBSD (and GNU/kFreeBSD), X is still relied on to load the modules it needs. This commit restores the old behaviour of loading kernel modules on these systems. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=72852 Signed-off-by: Robert Millan <rmh@freebsd.org>
2013-12-24radeon: Set first parameter of drmOpen() to NULLRobert Millan
Since the introduction of a call to drmCheckModesettingSupported() in radeon_kernel_mode_enabled(), with abort condition if such call fails, the first argument to drmOpen() call in radeon_open_drm_master() has become a no-op red herring. Such argument (a kernel module name) is supposed to result in load of specified kernel module. However, this will never happen. The problem is that if the code containing drmOpen() call is reached, it means that drmCheckModesettingSupported() check has previously succeeded, which implies the module is already loaded. So, drmOpen() will never load a kernel module. But it gives the impression that it will. In order to avoid this confusion, this commit replaces it with NULL, like xf86-video-intel driver does. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=72849 Signed-off-by: Robert Millan <rmh@freebsd.org>
2013-11-13radeon/kms: add Hawaii pci idsAlex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-11-13radeon: add support for HawaiiAlex Deucher
Disabled by default until the acceleration code stablizes. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-11-04radeon: enable tiling on SI by default (v2)Alex Deucher
Now that mesa 9.2 is out with support for tiling on SI asics, we can enable it here. Tiling improves memory bandwidth utilization. V2: update man page Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-11-01radeon: disable 2D tiling on buffers < 128 pixelsVadim Girlin
Seems to run into alignment problems with certain card configurations. bug: https://bugs.freedesktop.org/show_bug.cgi?id=70675 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-10-31radeon/glamor: with new pixmap for dri2 drawable no need to create new textureJerome Glisse
When creating a new pixmap/bo for dri2 drawable there is no need to create a new texture, instead the texture associated with the new pixmap should be use otherwise there is a missmatch between the bo backing the texture for the drawable and the bo used by dri2 client. Signed-off-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2013-10-01EXA/evergreen: Paranoia around linear tiling. (v2)Christopher James Halse Rogers
The last two bytes of tiling_mode contain the actual tiling mode; the rest are extra tiling configuration bits. These configuration bits are not necessarily zero for a linear buffer, so mask them out before checking for linearity v2: Also fix up evergreen_textured_videofuncs.c agd5f: remove trailing whitespace Signed-off-by: Christopher James Halse Rogers <raof@ubuntu.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-10-01radeon: fix the non-glamor build harder...Alex Deucher
I need to stop pushing patches first thing in the morning. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-10-01drm/radeon: fix non-glamor buildAlex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-09-30radeon: use glamor Xv support if present.Dave Airlie
This creates adaptors using glamor if possible. Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-09-30Revert "radeon: add glamor Xv support (v2)"Alex Deucher
This causes problems if glamor doesn't have Xv support enabled. I just noticed that Dave has a better version, so use that instead. This reverts commit 4fc1fa920584ace2c84d75af82d06962d0c84ec8.
2013-09-27radeon: add glamor Xv support (v2)Alex Deucher
v2: guard new glamor Xv bits with USE_GLAMOR Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2013-09-27radeon: fix limit handling for cards with >4G of ramAlex Deucher
We can overflow the 32-bit limit. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2013-09-18DRI2: Install client callback only onceMichel Dänzer
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=60182 Acked-by: Alex Deucher <alexander.deucher@amd.com>
2013-09-16glamor: require 0.5.1 or newerAlex Deucher
0.5.1 fixes a number of issues. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-09-16radeon: enable glamor by default (v4)Alex Deucher
It's required for newer asics, so enable it by default. v2: update the autoconf help. Require --disable-glamor to build without glamor support. v3: default to yes rather than auto v4: fix help text Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2013-09-06radeon/kms: add berlin pci idsAlex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-08-22Fix shadowfb on big-endian machinesMark Kettenis
For shadowfb, the framebuffer needs to have the RADEON_TILING_SURFACE flag set, otherwise the appropriate byte swapping won't happen. See https://bugs.freedesktop.org/show_bug.cgi?id=66663 Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-08-22radeon: disallow glamor on pre-R600 asicsAlex Deucher
I'm not sure they can handle the shaders properly, especially only older parts like r300. This will avoid display corruption problems reported by people using glamor on older asics by falling back to EXA if they try and enable glamor. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2013-08-07bump version post releaseMaarten Lankhorst
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
2013-08-07radeon: bump version for releasexf86-video-ati-7.2.0Maarten Lankhorst
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
2013-08-07add bicubic_table.py to EXTRA_DISTMaarten Lankhorst
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
2013-08-07kill unused radeon_driver.cMaarten Lankhorst
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
2013-08-05drmmode: add support for multi-screen reverse optimusAlex Deucher
Initial reverse optimus didn't consider multiple screens, so this overhauls the code to use the new X server interface, and allows for multiple outputs on the dGPU to be used with the iGPU doing the rendering. Ported from Dave's nouveau patch. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-08-05radeon: add support for reverse prime (v2)Dave Airlie
This adds support for reverse prime configurations v2: fix compilation with older xservers Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2013-08-05radeon: fix naming clashes with multiple GPUs (v3)Alex Deucher
The compat naming code for UMS causes problems with multiple GPU as you may end up with the same output name on multiple GPUs. Adjust the naming on secondary GPUs to avoid conflicts. v2: integrate Dave's fixes for nouveau v3: keep compat with existing naming on primary GPU Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-07-31EXA/evergreen/ni: replace magic numberGrigori Goronzy
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2013-07-30EXA/6xx/7xx: optimize non-overlapping CopyRaul Fernandes
In case dst and src rectangles of a Copy operation in the same surface don't overlap, it is safe to skip the scratch surface. This is a common case. Based on evergreen/ni patch from Grigori Goronzy. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-07-22EXA/evergreen/ni: accelerate PictOpOver with component alphaGrigori Goronzy
Subpixel text rendering is typically done with a solid src and a pixmap mask. Traditionally, this cannot be accelerated in a single pass and requires two passes [1]. However, we can cheat a little with a constant blend color. We can use: const.A = src.A / src.A const.R = src.R / src.A const.G = src.G / src.A const.B = src.B / src.A dst.A = const.A * (src.A * mask.A) + (1 - (src.A * mask.A)) * dst.A dst.R = const.R * (src.A * mask.R) + (1 - (src.A * mask.R)) * dst.R dst.G = const.G * (src.A * mask.G) + (1 - (src.A * mask.G)) * dst.G dst.B = const.B * (src.A * mask.B) + (1 - (src.A * mask.B)) * dst.B This only needs a single source value. src.A is cancelled down in the right places. [1] http://anholt.livejournal.com/32058.html
2013-07-22EXA/evergreen/ni: fast solid pixmap supportGrigori Goronzy
Solid pixmaps are currently implemented with scratch pixmaps, which is slow. This replaces the hack with a proper implementation. The Composite shader can now either sample a src/mask or use a constant value.
2013-07-22EXA/evergreen/ni: optimize non-overlapping CopyGrigori Goronzy
In case dst and src rectangles of a Copy operation in the same surface don't overlap, it is safe to skip the scratch surface. This is a common case.