Age | Commit message (Collapse) | Author |
|
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>
|
|
|
|
definitely incorrect, but hope it doesn't break anything.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Since they only have one crtc sometimes the xserver doesn't assign
a crtc to one of the outputs even though both outputs have common modes
which results in only one monitor being enabled. Assign a crtc in
preinit so that both outputs light up.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
pRADEONEnt->HasCRTC2 wasn't setup under KMS.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Previously we relied on the drm not having accel enabled
to make sure evergreen used shadowfb, now we when we enable
accel in the drm, we need to make sure the ddx doesn't try
and use it until it's implemented.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Signed-off-by: Marek Olšák <maraeo@gmail.com>
|
|
This patch is mostly a port over of Intel ddx code for
MSC support. It needs a radeon KMS module with version
2.4 which has the query for hw crtc id.
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
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>
|
|
I was playing with multi-seat and found this code, fixed
it up to be sane and more DRI2 like.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Also, define RADEON_BUFFER_ALIGN in terms of it, and replace some
RADEON_ALIGN(x, RADEON_BUFFER_ALIGN) with RADEON_ALIGN(x,
RADEON_GPU_PAGE_SIZE) since this is really what was intended.
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>
|
|
Taken from James patch on bug 24523
agd5f: adapt to the current code
|
|
|
|
Allows users that want to use zaphod mode to select
which xrandr outputs are assigned to which head. E.g.,
Option "ZaphodHeads" "LVDS,VGA-0"
will assign LVDS to the first zaphod driver instance
and VGA-0 to the second instance.
|
|
NO_ACCEL wasn't handled correctly with KMS.
fixes fdo bug 26198
|
|
I've seen RN50s with 64MB of RAM that are slow as molasses, this
should fix them.
RH bug 556400
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This ports the mesa DMA buffer handling with the 3 lists,
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
All of the drawing ops were the exact same modulo the vtx size,
this along with the vertex buffer wrapping code could all be consolidated
into a smaller set of functions.
This also adds 2 VBO which we switch between, and merges a #define to
enable the multiple operations in one CS under KMS mode.
Multi-operation still isn't working though.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This moves to a boolean instead of using VRAM sizing.
as per Michel's suggestions on list.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
this is needed for server recycle.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This changes the vertex buffer index to be an offset, and
records the start of the vb for each operation and uses
that to set the operations up.
This still flushes after each operation to make sure we have
no regressions in non-kms/kms cases.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This just merges it with the main kms cs flush
|
|
|
|
This patch returns NULL for pixmap creation when we are using
mixed pixmaps and the pixmap has a size.
The size check is necessary for the front buffer.
We add a flag to force pixmap creation for certain pixmaps
that need to be hw, like the DRI2 and Xv ones.
Idea from Michel and workarounds from Ben Skeggs.
v2: add Option "EXALowVRAM" to allow configuring this, value in MBs.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
When we resize the front buffer we need to reduce the flush limits
appropriately.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Not supported yet.
|
|
This reverts commit 60d9685abddccec17c1a9a5ec48cbe9c92543e0f.
which breaks colormap on 1.6 X server
Conflicts:
src/drmmode_display.c
|
|
-EINVAL should only happen if the info ioctl doesn't support
the get accel query. This patch assume that on such case accel
is working.
|
|
We need to program the gamma at modeset. no need to use
old cmap interface at all.
|
|
Requires at least xserver 1.7 to work properly.
Also make sure the front buffer is and stays tiled if colour tiling is enabled.
|
|
Inspired by the intel driver; might avoid/reduce HW cursor flicker in some
cases.
|
|
|
|
This will fallback to shadowfb is GPU accel failed somewhere during
KMS kernel init.
|
|
Can be dangerous with kms:
http://lists.freedesktop.org/archives/xorg-devel/2009-September/002113.html
|
|
fixes cursor problems in games like UT2004 and Penumbra Overture
see fdo bug 24034
|
|
|
|
On X recycling CloseScreen drop master so grab it again
in InitScreen and avoid to reallocate buffer & various
others cs/bo utilities on X recycling.
|
|
This requires an X server from git with createpixmap2 support fixed up in it.
On 1.6 and previous it won't do any tiling, if you are running git server
please upgrade to latest git.
Option "AllowColorTiling" "true" to enable and do some testing
|
|
Also remove a superfluous assignment.
|
|
We need to map front buffer and also to avoid EXA initialization
when falling back to shadowfb on newer r6xx/r7xx when KMS is enabled.
|
|
The LeaveVT hook isn't always called when the server dies, e.g. when quitting
from the GDM greeter. This may cause existing servers to fall over if the dying
server process still exists when they try to re-acquire master and set a mode.
Also use drmSet/DropMaster() rather than ioctl() directly.
|
|
|
|
re-emit 2D state and reset 3D state emit on flush
|
|
This uses a new libdrm interface which shares code with mesa.
It also fixes the bo to flush when full instead of never flushing.
It survives gtkperf -a here which the driver didn't before now
|
|
|
|
|
|
This adds DRI2 + KMS + driver pixmaps support to the driver.
I've decided to just do a completely separate KMS driver file
instead of hacking the crap out of radeon_driver.c. So now
I do the KMS check in radeon_probe.c time and set the DDX
pointed up to a completely different set at this stage.
This avoids a lot of if (kms) type crap in the code at
the expense of making sure we make changes to both files
if necessary.
This code is still disabled in configure.ac as I broke EXA composite
rendering somehow in KMS mode
|