Roland Scheidegger
34563921dd
add R200_EMIT_PP_TRI_PERF_CNTL packet to support brilinear filtering on
...
r200
2005-03-15 22:12:30 +00:00
Eric Anholt
2f7cd38c12
Initialize kbuf to NULL to quiet the compiler about uninit variables
...
(wasn't an issue). Don't forget to free kbuf if the copyin fails.
2005-02-14 03:22:58 +00:00
Roland Scheidegger
732cdc5cef
add support for texture micro tiling on radeon/r200. Add support for r100
...
cube maps (since it also requires a version bump) at the same time.
2005-02-10 19:22:43 +00:00
Eric Anholt
81459d6e50
Close a race which could allow for privilege escalation by users with DRI
...
privileges on Radeon hardware. Essentially, a malicious program could
submit a packet containing an offset (possibly in main memory) to be
rendered from/to, while a separate thread switched that offset in
userspace rapidly between a valid value and an invalid one.
radeon_check_and_fixup_offset() would pull the offset in from user
space, check it, and spit it back out to user space to be copied in
later by the emit code. It would sometimes catch the bad value, but
sometimes the malicious program could modify it after the check and get
an invalid offset rendered from/to.
Fix this by allocating a temporary buffer and copying the data in at once.
While here, make the cliprects stuff not do the VERIFYAREA_READ and
COPY_FROM_USER_UNCHECKED gymnastics, avoiding a lock order reversal on
FreeBSD. Performance impact is negligible -- no difference on r200 to
~1% improvement on rv200 in quake3 tests (P4 1Ghz, demofour at
1024x768, n=4 or 5).
2005-02-08 04:17:14 +00:00
Eric Anholt
ed31275144
Cast user data to correct type in radeon_surface_free's copyin.
2005-02-03 01:05:34 +00:00
Dave Airlie
0d6b7fcb79
cleanup patch from Adrian Bunk <bunk@stusta.de>
2005-02-01 11:08:31 +00:00
Dave Airlie
77045dc516
fix incorrect PCI id for ATI radeon
2005-01-27 09:13:42 +00:00
Roland Scheidegger
43c3223de6
(Stephane Marchesin,me) Add radeon framebuffer tiling support to radeon
...
drm. Add new ioctls to manage surfaces which cover the tiled areas
2005-01-26 17:48:59 +00:00
Roland Scheidegger
408376b203
replace magic number with macro constant RADEON_ZBLOCK16
2005-01-26 14:19:24 +00:00
Dave Airlie
0867ce78f6
This table is in radeon_drv.h along with the version number so remove it
...
from here
2005-01-16 06:41:34 +00:00
Roland Scheidegger
c4a87c6883
(Stephane Marchesin, me) add hyperz support to radeon drm. Only fast z
...
clear and z buffer compression are working correctly, hierarchical-z is
not.
2004-12-08 16:43:00 +00:00
Eric Anholt
c9202c8965
Commit WIP of BSD conversion to core model. Compiles for r128, radeon, but
...
doesn't run yet. Moves the ioctl definitions for these two drivers back
to the shared code -- they aren't OS-specific.
2004-11-06 01:41:47 +00:00
Dave Airlie
3f02a79351
Vladimir requested support so we can at least load r300 microcode for
...
helping
2D operations.
Ups radeon to version 1.12.0, Vladimir, you might want to add any extra
pciids...
Approved-by: Dave Airlie <airlied@linux.ie>
2004-10-10 05:52:19 +00:00
Jon Smirl
9f9a8f1382
Lindent of core build. Drivers checked for no binary diffs. A few files
...
weren't Lindent's because their comments didn't convert very well. A
bunch of other minor clean up with no code implact included.
2004-09-30 21:12:10 +00:00
Jon Smirl
fa6b1d129e
First check in for DRM that splits core from personality modules
2004-09-27 19:51:38 +00:00
Dave Airlie
eeae6a0a38
merge back bunch of whitespace and misc changes from kernel
2004-09-05 10:54:59 +00:00
Dave Airlie
7809efc8c3
drm-memory patch, cleans up alloc/free and makes calloc look more libc like
2004-08-30 09:01:50 +00:00
Dave Airlie
d4dbf45781
Merged drmfntbl-0-0-2
2004-08-24 11:15:53 +00:00
Dave Airlie
5c9ed83094
Merged drmfntbl-0-0-1
2004-08-17 13:10:05 +00:00
Dave Airlie
02df04d71d
sync up with current 2.6 kernel bk tree - mostly __user annotations
2004-07-25 08:47:38 +00:00
Dave Airlie
8efddd01e8
sparse cleanups from kernel: Al Viro
2004-07-15 13:03:55 +00:00
Dave Airlie
4cfd0d5cee
whitespace align with kernel
2004-07-05 11:44:30 +00:00
Roland Scheidegger
43c244ebba
fix whitespace issue in previous patch
2004-05-18 23:30:46 +00:00
Roland Scheidegger
aa142ff1b5
add R200_EMIT_RB3D_BLENDCOLOR state packet to support GL_EXT_blend_color,
...
GL_EXT_blend_func_separate and GL_EXT_blend_equation_separate on r200
2004-05-18 23:03:22 +00:00
Dave Airlie
bc1428035c
fixes from Linux kernel
2004-04-08 12:05:25 +00:00
Michel Daenzer
0dea4de288
Make sure that all state packets are handled in
...
radeon_check_and_fixup_packets()
Fix state packet IDs of R200 cubic offsets
2004-01-10 20:59:16 +00:00
Michel Daenzer
7b62ed9aed
R200_PP_CUBIC_OFFSET_F1_[0-6] state packets only contain 5 offsets, not 6
...
(thanks to Andreas Stenglein for spotting this)
2004-01-10 12:28:06 +00:00
Michel Daenzer
2655ccddf4
Memory layout transition:
...
the 2D driver initializes MC_FB_LOCATION and related registers sanely
the DRM deduces the layout from these registers
clients use the new SETPARAM ioctl to tell the DRM where they think the
framebuffer is located in the card's address space
the DRM uses all this information to check client state and fix it up if
necessary
This is a prerequisite for things like direct rendering with IGP chips and
video capturing.
2003-11-04 00:46:05 +00:00
Michel Daenzer
062751ac47
Remove artificial PCI GART limitations, rename AGP to GART where
...
appropriate
2003-08-26 15:44:01 +00:00
Keith Whitwell
9e7d6177d1
Possibly fix stanford checker complaints about sarea
2003-06-16 10:40:52 +00:00
Keith Whitwell
0b01c70d59
Texture rectangle support for r100
2003-06-10 18:54:17 +00:00
Keith Whitwell
98840144b1
Revert bogus last commit
2003-06-09 23:12:33 +00:00
Keith Whitwell
1062b9930f
Don't activate blend fallbacks unless blending is enabled
2003-06-09 23:11:23 +00:00
Keith Whitwell
13211ad82c
add more get_param queries for embedded project
2003-04-22 09:49:14 +00:00
Keith Whitwell
1728bc637d
merged drm-filp-0-1-branch
2003-03-28 14:27:37 +00:00
Michel Daenzer
fac2ed4d10
fix EAGAIN handling in radeon_cp_dispatch_texture() (fixes corruption of
...
large textures), and get rid of superfluous local y variable
2003-02-06 18:20:00 +00:00
Leif Delgass
9b9b099471
Add cast to avoid void * arithmetic warning
2003-01-26 22:25:35 +00:00
Keith Whitwell
b03fa556b2
Rewrite radeon_cp_dispatch_texture() to avoid pingponging back to userspace
...
when issue large (multi-buffer) uploads.
2002-12-06 12:22:43 +00:00
Michel Daenzer
5e1b8ed88a
preserve CRTC{,2}_OFFSET_CNTL in 2D driver to avoid bad effects when
...
pageflipping after a mode switch
take current page into account in AdjustFrame(); writing the CRTC offset
via the CP was probably a bad idea as this can happen asynchronously,
reverted
take frame offset into account when flipping pages
handle CRTC2 as well for pageflipping (untested)
preserve GEN_INT_CNTL on mode switches to prevent interrupts from getting
disabled
2002-10-29 13:49:26 +00:00
Brian Paul
ff25e7016c
merge from mesa-4-1-branch to get cube-map registers. bumped version to 1.7
2002-10-28 19:05:40 +00:00
Michel Daenzer
f40674ea9f
change RADEON_PARAM_IRQ_ACTIVE to RADEON_PARAM_IRQ_NR
2002-09-25 19:48:51 +00:00
Keith Whitwell
f1c8fe9557
merged r200-0-2-branch to trunk
2002-09-23 17:26:43 +00:00
Keith Whitwell
4fcde1efc1
standardize use of __FUNCTION__ (Linus)
2002-08-29 07:34:49 +00:00
Keith Whitwell
48cc350e21
merged r200-0-1-branch
2002-08-26 22:16:18 +00:00
Keith Whitwell
33d57137da
zero-cliprect case patch from Jacek
2002-08-12 07:26:00 +00:00
Michel Daenzer
d0ac4e5ad0
test scratch register writeback before using it
2002-08-11 15:56:44 +00:00
Michel Daenzer
881a9b214d
fix off-by-one error for right bottom corner in radeon_emit_clip_rect()
...
(Jacek Rosik)
2002-07-18 23:17:13 +00:00
Tim Smith
8fa8db126a
Workaround for Radeon lockups on fast machines
2002-07-17 08:30:36 +00:00
Michel Daenzer
fd86ac9561
Don't read scratch registers directly, obtain the values via the GET_PARAM
...
ioctl. The DRM reads them from memory addresses the chip writes to on
updates. Fall back to reading the registers directly with an old DRM.
(Tim Smith, cleanups by myself)
2002-07-11 20:31:12 +00:00
Alan Hourihane
74ef13fd00
merged bsd-3-0-0-branch
2002-07-05 08:31:11 +00:00