Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
This saves massive quantities of memory on pre-965 since the DRI2 tiling
enable caused the minimum size of any pixmap to be 1MB.
(cherry picked from commit 5bfd73cd31ba197a62f549cdbad1a1270b571027)
|
|
(cherry picked from commit 70e0261208654c6c875ad462da2734c6aa9eeb96)
|
|
|
|
(cherry picked from commit 9d8e5c21a1688b915bf39261d4c3b0bf2906daef)
|
|
(cherry picked from commit a6b31f38ebf470c61de0e10b0ce2af0d7ee1684b)
|
|
This was hit by xv86vm's SwitchMode path, and for that the CRTC offsets
get set at mode setting time anyway.
(cherry picked from commit 53108994616d9751ac3a29fd61eb269cfaeab967)
|
|
(cherry picked from commit 73bc7f113969834d00cd92be8374dbadc62f96a9)
|
|
Otherwise, with a pre-2.6.28 older kernel the disable would be lost at
resume time and cause hangs.
Bug #20214
(cherry picked from commit 81c652e9a666a7459bcc5217c8a5ec518b6e00da)
|
|
The assumption is that we're almost always accelerating our drawing to
new pixmaps (fill, copy, etc.).
(cherry picked from commit 0621ba12a3b694720e67a49b25ca52f0e09b3802)
|
|
(cherry picked from commit 5018d0f16cb8b44c743b5b37d194fe806d955568)
|
|
(cherry picked from commit beca598bc2848093b710bd47828d622205d273df)
|
|
Forgot to update i915_video.c in 872aadc7102bd5131e1582ede081e22672911ba2.
(cherry picked from commit e97e2571703e3d6188bf18f211b793fc50383f9c)
|
|
(cherry picked from commit 96da26b6813a8c1da8a43036c375aa0d2bb70f16)
|
|
We still pin the buffer object in case of overlay, but for textured video
we're now no longer using i830_memory for Xv anymore.
(cherry picked from commit 872aadc7102bd5131e1582ede081e22672911ba2)
|
|
(cherry picked from commit 723b6065093adb56a2d7204bd990ceae41bfafc9)
|
|
commit id b9f5915ce812144ffd9d2aa42e8ba856129c35e,
which resolved bug #17235, but generate new regression-bug #19715.
This patch intends to resolve bug #17235, and avoid regression as well.
We have successfully re-tested it for bug #17235 and #19715 respectively.
(cherry picked from commit 3aa8591abfbe8db0f13912910c850fdd748808df)
|
|
(cherry picked from commit 9fe5fca3fe761a4f11857d9766138a60f471a9e6)
|
|
Missed the pI830->FbBase condition when removing the KMS hook.
(cherry picked from commit 5c370091620b38447172ebeffbc6ed3256e86c9d)
|
|
Oops, my bad. Reverted 8d4bc36fae50b09a73ba2cfab920adb32141a358
since my kernel doesn't yet have the new param, committed
the revert by accident.
(cherry picked from commit 2013799b20599a58de48cb21a5a389e898a58af1)
|
|
(cherry picked from commit 127330bfd53ac7571bdd12a551142528b972893f)
|
|
This adds back the resize hook so we can resize the front buffer under
kernel mode setting as well.
The patch also pulls the drmmode_* structs from drmmode_display.h into
drmmode_display.c and eliminates the header file.
(cherry picked from commit 0cb87ccfe97b0e016e47dcf236fd5ce78dddfc4b)
|
|
This fixes failure to auth DRI2 clients under KMS.
(cherry picked from commit 66bc44e8f9a0505c0b11b8042243ca74079da85f)
|
|
Set alignments, tile settings and flags correctly in the 2D driver to support
tiled rendering. UXA's create pixmap function currently assumes the worst
about the alignment constraints; that should probably be fixed. Some of the
1M alignment fixes could probably be done more cleanly as well.
(cherry picked from commit 8d4bc36fae50b09a73ba2cfab920adb32141a358)
|
|
They're tiny so it shouldn't have been a problem, but play it safe. This is
another <5% loss on top of the previously reported value, bringing the whole
series to about 8%.
(cherry picked from commit 6c0ca1676bf60529dd331cc739abdf68fa9e918d)
|
|
Several VBT modes out in the wild have H or VSyncEnd values greater than
the H or VTotal value. This clearly ends up creating a bad mode,
causing some panels to either ignore the timing or display some sort of
corrupt image.
Check for these cases and fix them up by default, making things work for
several Dell and Sony machines.
Fixes FDO bug #17292.
(cherry picked from commit 57a02b50c60c10a25ff0f3cd93af9f37fa0d1b11)
|
|
The IM-945GSE-A claims to have a TV output, and always claims a connected
LVDS output. It has neither.
(cherry picked from commit e20e1cf76fb00ba4f933a1ed6d1a4896be346c91)
|
|
(cherry picked from commit 05ff561234cc2b93fe1ea2a35041fa2e119a7e38)
|
|
This eliminates the pinned memory allocation for 965 render state.
(cherry picked from commit fbf003ef2767a1a9f5e4064f04a17992030d8f5c)
|
|
(cherry picked from commit befd4ad8beae39377f804e06c7cbd926ec4251db)
|
|
This is a first step in a series of changes to avoid requiring a pinned object,
which gets in the way of doing non-root KMS. This change appears to result in
about a 2-6% loss in x11perf -aa10text, which better algorithms in libdrm could
make up for (it hasn't really had to deal with code this bad before).
(cherry picked from commit 5d705de5d11297f4d6bd5237fb67619e703745bc)
|
|
(cherry picked from commit 64b08ed5ad46ccd76964972e39bfed8721a920aa)
|
|
Debian "unstable" is still stuck with this ancient version.
(cherry picked from commit f126aabdf8952177bb15f392041da7a7094eb31b)
|
|
This improves performance by avoiding repeated map/unmap cycles, which are
a bit expensive on my machine with lock debugging on in the kernel. It could
do much better if we did more than 18 or so floats at a time.
(cherry picked from commit b6f3ce32e295929f461a7bc37e61f126fb51e4aa)
|
|
The require_space had failed since it only checked for the space required
by the batch emits in the function itself, but not in the
i965_emit_composite_state() that it called (the state we were concerned about
having set up for that 12 * 4 dwords to follow!). This is replaced by
intel_batch_start_atomic(), which will catch such mistakes in the future.
(cherry picked from commit 9a8bbb1951ad0ca0a9407a97348fc7fa03127900)
|
|
(cherry picked from commit 3d739597c4f5817079efd9067ad5db2f4105f765)
|
|
Previously it wouldn't count the pixmaps that were about to be used, which
is pretty much the only purpose of having the pain around. This also
eliminates the check_twice confusion with emit_batch_header_for_composite().
(cherry picked from commit e20f7278f3abb44a3a151ac91f83c45cf1a2745a)
|
|
(cherry picked from commit 013e2adfbf955cb21450b610091542ebd54392c2)
|
|
(cherry picked from commit a340fe5e4227ebea5493e658eb6289624b07ab0b)
|
|
We want the objects to be created once per prepare/done both for efficiency and
so we can handle aperture checking better.
(cherry picked from commit aefe198ca427a5ad69717f49948eb3ede713bb28)
|
|
This increases the overhead for video in the presence of cliprects, but we
were already doing nasty things in that case and don't seem to care. This
could fix potential bad rendering or hangs with video, particularly with
DRI2.
(cherry picked from commit 946c7ef8170e74ac178c83b1465242d57fa86f2e)
|
|
(cherry picked from commit 7be668179a12918918cad863f6936ced4ab78dbf)
|
|
As the rotation memory and rotation pixmap are allocated separately (to make
rotation at startup work), the allocate dri_bo needs to be set in the pixmap
for acceleration to work. This restores the performance in rotated modes.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit a4b023c17b9c3bd65fb9466ddb8a953f60244402)
|
|
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 8237faf8f3ca73ecdf0ef009a7d361b318726f6f)
|
|
This eliminates the separate i830_allocate_memory_tiled function which means
that all memory objects will have tiling parameters set correctly.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 21bd4e8974e4c0e83f5f95adb0fc17290444caf5)
|
|
(cherry picked from commit d96f774d1bb39640486c72338fe8b19ee1ceaa23)
|
|
(cherry picked from commit 750d8e105831718d4a44a145fdb87571fa9f9d8e)
|
|
This should be a noop. If it wasn't a noop, it means that on pre-g33 chipsets
we were spamming some data into a page of system memory because we used a
virtual instead of a physical address. It was also supposed to not work when
we submit it from a batchbuffer, as we have been doing for some time now.
This code has existed since about the beginning of the driver's existence,
with no justification.
(cherry picked from commit 45f45c73469f1bd46a1b6fb206f2e9e5e4fd66b3)
|
|
|
|
Leaving the VT in KD_TEXT mode keeps the kernel's blanking code active,
so when a DPMS event happens, the fb console is restored rather than X's
configuration. On the downside it means the kernel won't print messages
in the background, which would be visible if a panic or emergency switch
occurred. The proper fix here is a new kernel mode, which we can move
to when ready.
(cherry picked from commit 253b8db298f38676e47dc902534465054f7b58b8)
|