summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/r200/r200_ioctl.h
Commit message (Collapse)AuthorAgeFilesLines
* r200: emit max vtx info for index buffer.Dave Airlie2009-09-011-0/+1
| | | | We need this for the CS bounds checking.
* r200: Add scissor to state atom list.Pauli Nieminen2009-08-261-0/+10
| | | | Scissors are jsut one of states that we have to emit so it should be in state list
* r200: Prevent flush in middle of rendering.Pauli Nieminen2009-08-211-3/+5
| | | | | | | | | | | Patch adds prediction functionthat tries to predict emit size to the smallest possible values that is quarenteed to be higher than worst case scenario in rendering pipeline. State emit size prediction code is in place but fix for emit sizes is included in next patch. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
* r200: use correct finish interfaceDave Airlie2009-02-131-2/+0
|
* radeon/r200/r300: make build with out libdrm_radeon installed for nowDave Airlie2009-02-121-1/+1
|
* r200/r300: get up to speed on renamed filesDave Airlie2009-02-121-3/+0
|
* radeon/r200/r300: another big merge upheavel.Dave Airlie2009-02-121-12/+2
| | | | | | | | This merges lots of the hw state atom emission and firevertices code. it also removes a lot of the extra radeon crap from r300 and merge scissor
* radeon/r200: flush vertices when data in cmdbuf.Dave Airlie2009-02-111-1/+3
| | | | This fixes a whole bunch of regressions in piglit
* r200: cleanup some bits that aren't usedDave Airlie2009-02-091-26/+0
|
* radeon/r200 remove more unused codeDave Airlie2009-02-041-34/+0
|
* r200/r300: add aperture space checksDave Airlie2009-01-311-0/+2
|
* r200: bring back single dma flushDave Airlie2009-01-291-3/+3
|
* r200: fix up swtcl/tcl flushesDave Airlie2009-01-221-5/+4
|
* r200: emit elts into a separate ELT boDave Airlie2009-01-231-1/+2
|
* r200: make tri render on my r200.Dave Airlie2009-01-211-18/+9
|
* r200: clear is working at least - not much elseDave Airlie2009-01-201-9/+50
|
* radeon/r200/r300: consolidate the buffer copy/flip code into one placeDave Airlie2009-01-141-5/+0
|
* radeon/r200/r300: initial attempt to convert to common context codeDave Airlie2009-01-141-4/+4
|
* radeon/r200: move state atom to common headerDave Airlie2009-01-141-1/+1
|
* radeon/r200: start splitting out commonalities into separate headersDave Airlie2009-01-131-3/+3
|
* mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul2008-09-181-1/+1
| | | | Makefile.template
* replace __inline and __inline__ with INLINE macroBrian Paul2008-06-211-3/+3
|
* Refactor and fix core vblank supportJesse Barnes2007-10-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Consolidate support for synchronizing to and retrieving vblank counters. Also fix the core vblank code to return monotonic MSC counters, which are required by some GLX extensions. Adding support for multiple pipes to a low level driver is fairly easy, the Intel 965 driver provides simple example code (see intel_buffers.c:intelWindowMoved()). The new code bumps the media stream counter extension version to 2 and adds a new getDrawableMSC callback. This callback takes a drawablePrivate pointer, which is used to calculate the MSC value seen by clients based on the actual vblank counter(s) returned from the kernel. The new drawable private fields are as follows: - vblSeq - used for tracking vblank counts for buffer swapping - vblFlags - flags (e.g. current pipe), updated by low level driver - msc_base - MSC counter from the last time the current pipe changed - vblank_base - kernel DRM vblank counter from the last time the pipe changed Using the above variables, the core vblank code (in vblank.c) can calculate a monotonic MSC value. The low level DRI drivers are responsible for updating the current pipe (by setting VBLANK_FLAG_SECONDARY for example in vblFlags) along with msc_base and vblank_base whenever the pipe associated with a given drawable changes (again, see intelWindowMoved for an example of this). Drivers should fill in the GetDrawableMSC DriverAPIRec field to point to driDrawableGetMSC32 and add code for pipe switching as outlined above to fully support the new scheme.
* Drop __DRInativeDisplay and pass in __DRIscreen pointers instead.Kristian Høgsberg2007-10-101-3/+3
| | | | | | | | | | | | | Many DRI entry points took a __DRInativeDisplay pointer and a screen index as arguments. The only use for the native display pointer was to pass it back to the loader when looking up the __DRIscreen for the given screen index. Instead, let's just pass in the __DRIscreen pointer directly, which let's drop the __DRInativeDisplay type and the getScreen function. The assumption is now that the loader will be able to retrieve context from the __DRIscreen pointer when necessary.
* remove CVS/XFree86 keywordsChristoff Brill2007-05-171-1/+0
|
* Dave Reveman's patch for GLX_MESA_copy_sub_buffer supportBrian Paul2006-03-311-1/+2
|
* Minor driver cleanup. Remove unnecessery/unneded ↵Roland Scheidegger2005-10-111-6/+0
| | | | radeon/r200AllocDmaRegionVerts function. No longer compile the radeon_compat stuff which was for drm 1.1 compatibility presumably but unused since about forever into the driver.
* Bug #2428: #ifdef GLX_DIRECT_RENDERING in DRI drivers is pointless.Adam Jackson2005-01-311-6/+0
|
* OK, one more time. Simplify the state-backup system by just storing the fullEric Anholt2004-09-301-1/+0
| | | | | | | | | state in a ready-to-emit cmdbuf, which avoids the issue Nicolai Haehnle reported where the check() could return differently during backup-and-emit than it should have if it were called at the right time. Move the lit emission before most of the TCL state emission on r200, which fixes neverball issues. Tested with: r100/r200 with neverball, tuxracer, chromium, quake3, ipers
* The previous code would emit a full set of state during the first EmitState onEric Anholt2004-09-221-2/+7
| | | | | | | | | | | | | a new cmdbuf, to ensure that state wasn't lost across UNLOCK/LOCK pairs (in the case of context switching). This was rather inefficient. Instead, after flushing a cmdbuf, mark the state as needing to be saved on UNLOCK. Then, at the beginning of flushing a cmdbuf, if we actually have lost the context, go back and emit a new cmdbuf with the full set of state, before continuing with the cmdbuf flush. Also, remove the dirty/clean atom lists, since atoms are emitted in a fixed order these days, and go with a simpler single list. Provides a 14% improvement in ipers performance in my tests, along with other apps.
* Close some races with locking on R100 and R200 which could manifest as renderingEric Anholt2004-08-171-0/+25
| | | | | | | | | | | | | | | | | | | | errors on r100 and rendering errors and hangs on r200 (same for R100 without OLD_PACKETS). If a command buffer filled after some state (EmitState or a VBPNTR write) was emitted, the lock was grabbed, the buffer flushed, a new buffer prepared, and the lock dropped. Another client could come in, set its own state as part of rendering, and when the first client flushed the rendering commands depending on the previous state, it got the 2nd client's state. This is fixed by checking for enough space before beginning a set of state emits and rendering, and flushing the buffer first if so. This guarantees that the buffer won't wrap. Also, move the "lost_context = 1" from the end of cmdbuf flushing to UNLOCK_HARDWARE for clarity (at a minimum) that any time the lock is dropped, state may get overwritten. We don't have enough information at the point of the LOCK_HARDWARE to reset our state to the last UNLOCK_HARDWARE point in the case that we did lose our context, but saving the information to rebuild that state may be a useful optimization (ipers data suggests up to 5%).
* Patch removes _SOLO definition needed for mesa-solo. mesa-soloJon Smirl2004-07-041-2/+1
| | | | | uses the NEW_INTERFACE now so _SOLO isn't necessary anymore. Tested with the hardware that I own.
* Replace 'Display *' with '__DRInativeDisplay *'.Ian Romanick2004-06-041-3/+3
|
* disable under _SOLO buildAlan Hourihane2004-04-141-0/+2
|
* fix the usage of GLX_MESA_allocate_memoryAlan Hourihane2004-04-131-3/+3
|
* Adjustments to make everything use IOCTL/sarea defines in DRM insteadJon Smirl2004-03-111-1/+2
| | | | of glx/mini. removes glx/mini/drm.h glx/mini/sarea.h
* Before calling _mesa_create_context(), initialize a dd_function_table structBrian Paul2004-01-201-1/+1
| | | | | | | | | | by calling _mesa_init_driver_functions() and then plugging in the driver- specific functions. In particular, make sure ctx->Driver.NewTextureObject points to the appropriate driver function so that _all_ texture objects are augmented with the driver-specific data. Put in a bunch of assertions in the texture-related driver functions that texObj->DriverData is valid. Remove old dead code in near future.
* Update DRI drivers to current DRI CVS and make them work.Jon Smirl2003-10-211-10/+9
|
* r200 driver, brought over by Jon SmirlKeith Whitwell2003-08-061-0/+191