Commit graph android_kernel_sony_sdm845/drivers/char/drm/r300_cmdbuf.c
Message SHA1
drm/r300: fix bug in r300 userspace hardware wait emission
This interface was originally designed wrong, confusing bit-fields and
integers, major brown paper bag going back many years...

But userspace only ever used 4 values so fix the interface for new
users and fix the implementation to deal with the 4 values userspace
has ever emitted (0x1, 0x2, 0x3, 0x6).

Signed-off-by: Dave Airlie <airlied@redhat.com>

Dave Airlie   commited 2008-03-30 07:51:49 +10:00
0c76be3519
drm: add initial r500 drm support
This adds CP support for the r500 series of chips, and allows
accel 2D support on these chips with a new radeon driver.

Signed-off-by: Dave Airlie <airlied@redhat.com>

Dave Airlie   commited 2008-02-07 15:13:40 +10:00
3d5e2c13b1
drm: run cleanfile across drm tree
Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2008-02-07 15:09:38 +10:00
bc5f4523f7
drm: Replace filp in ioctl arguments with drm_file *file_priv.
As a fallout, replace filp storage with file_priv storage for "unique
identifier of a client" all over the DRM.  There is a 1:1 mapping, so this
should be a noop.  This could be a minor performance improvement, as everyth
on Linux dereferenced filp to get file_priv anyway, while only the mmap ioct
went the other direction.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Eric Anholt   authored and   Dave Airlie   commited 2007-10-15 10:38:20 +10:00
6c340eac02
drm: Remove DRM_ERR OS macro.
This was used to make all ioctl handlers return -errno on linux and errno on
*BSD.  Instead, just return -errno in shared code, and flip sign on return f
shared code to *BSD code.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Eric Anholt   authored and   Dave Airlie   commited 2007-10-15 10:38:19 +10:00
20caafa6ec
drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs
Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2007-07-11 16:32:08 +10:00
cdd55a294c
drm: drop drm_buf_t typedef
Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2007-07-11 16:17:42 +10:00
056219e2fa
drm: remove drm_file_t, drm_device_t and drm_head_t typedefs
some drivers still todo.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2007-07-11 15:53:27 +10:00
84b1fd103d
drm: remove a bunch of typedefs on the userspace interface
This moves a bunch of typedefs into a !defined __KERNEL__ to keep userspace
API compatiblity, it changes all internal usages to structs/enum/unions.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2007-07-11 15:27:12 +10:00
c60ce623bd
r300: updates register header
This updates the R300 register names and allows the VAP_PVS_WAITIDLE register
to be written.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Oliver McFadden   authored and   Dave Airlie   commited 2007-07-11 12:24:10 +10:00
c6c656b4b6
drm: Unify radeon offset checking.
Replace r300_check_offset() with generic radeon_check_offset(), which doesn't
reject valid offsets when the framebuffer area is at the very end of the card's
32 bit address space. Make radeon_check_and_fixup_offset() use
radeon_check_offset() as well.

This fixes https://bugs.freedesktop.org/show_bug.cgi?id=7697 .

=?utf-8?q?Michel_D=C3=A4nzer?=   authored and   Dave Airlie   commited 2006-12-15 18:54:35 +11:00
1d6bb8e51d
drm: radeon: only allow specific type-3 packetss through verifier
only allow specific type-3 packets to pass the verifier instead of all for r100/r200 as others might be unsafe (r300 already does this), and add checking for these we need but aren't safe. Check the RADEON_CP_INDX_BUFFER packet on both r200 and r300 as it isn't safe neither.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Roland Scheidegger   authored and   Dave Airlie   commited 2006-10-24 21:45:00 +10:00
a1aa289703
drm: fixup r300 scratch on BE machines
This fixes the r300 scratch stuff to work on PPC,
from Ben Herrenschmidt on IRC.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-04-23 18:14:00 +10:00
caa98c41c0
drm: Add general-purpose packet for manipulating scratch registers (r300)
From: Aapo Tahkola (via DRM CVS)
Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-03-19 19:45:26 +11:00
ee4621f011
drm: rework radeon memory map (radeon 1.23)
This code reworks the radeon memory map so it works better
for newer r300 chips and for a lot of older PCI chips.

It really requires a new X driver in order to take advantage of this code.

From: Ben Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-03-19 19:37:55 +11:00
d5ea702f1e
drm: update r300 register names
Update some of the DRM register names from DRM CVS

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-03-19 19:12:10 +11:00
45f17100bf
drm: fix brace placement
Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-02-18 16:30:54 +11:00
73d72cffe5
drm: radeon add r300 TX_CNTL and verify bitblt packets
The Xgl on r300 doesn't work unless you add a verify bitblt function to the
DRM, and we need to pass TX_CNTL to flush texture caches.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-02-18 15:51:35 +11:00
4e5e2e2560
drm: major update from CVS for radeon and core
This patch pull in a lot of changes from CVS to the main core DRM,
and updates the radeon driver to 1.21.0 that supports r300 texrect
and radeon card type ioctl.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2006-01-02 21:32:48 +11:00
d985c10881
drm: fix all sparse warning on 32-bit x86
Finally cleaned up the sparse warnings for the drm.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2005-09-30 18:37:36 +10:00
b3a8363989
drm: lindent the drm directory.
I've been threatening this for a while, so no point hanging around.
This lindents the DRM code which was always really bad in tabbing department.
I've also fixed some misnamed files in comments and removed some trailing
whitespace.

Signed-off-by: Dave Airlie <airlied@linux.ie>

Dave Airlie   commited 2005-09-25 14:28:13 +10:00
b5e89ed53e
drm: add initial r300 3D support.
This adds initial r300 3D support to the radeon DRM.

From: Nicolai Haehnle, Vladimir Dergachev, and others.
Signed-off-by: David Airlie <airlied@linux.ie>

Dave Airlie   commited 2005-08-16 20:43:16 +10:00
414ed53799