History log of /external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
77b1d2e09cfe968a01978a9042ad4edcaad3ada2 02-Oct-2012 Marcin Slusarz <marcin.slusarz@gmail.com> nouveau: use pre-calculated stride for resource_get_handle

Fixes FDO#55294.

NOTE: This is a candidate for the 9.0 branch.
(cherry picked from commit 93eba269351c6e256db3a4cc7c7018f5a3fae5a1)
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
6286d9810b7ebae588060370cd7a63c327478a2f 31-Jul-2012 Christoph Bumiller <e0425955@student.tuwien.ac.at> Revert "gallium: specify resource_resolve destination via a pipe_surface"

This reverts commit 5d5af7d359e0060fa00b90a8f04900b96f9058b0.

It turns out the issue this was supposed to fix merely counter-acted
a bug in the hardware driver that I wasn't aware of.

The resource_resolve is not supposed to do sRGB conversion, period.
(This would violate the requirement that source and destination must
be of the same format).
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
5d5af7d359e0060fa00b90a8f04900b96f9058b0 25-Jul-2012 Christoph Bumiller <e0425955@student.tuwien.ac.at> gallium: specify resource_resolve destination via a pipe_surface

The format member of pipe_surface may differ from that of the
pipe_resource, which is used to communicate, for instance, whether
sRGB encode should be enabled in the resolve operation or not.

Fixes resolve to sRGB surfaces in mesa/st when GL_FRAMEBUFFER_SRGB
is disabled.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
a2fc42b899de22273c1df96091bfb5c636075cb0 11-Jan-2012 Ben Skeggs <bskeggs@redhat.com> nv30: import new driver for GeForce FX/6/7 chipsets, and Quadro variants

The primary motivation for this rewrite was to have a maintainable driver
going forward, as nvfx was quite horrible in a lot of ways.

The driver is heavily based on the design of the nv50/nvc0 3d drivers we
already have, and uses the same common buffer/fence code. It also passes
a HEAP more piglit tests than nvfx did, supports a couple more features,
and a few more to come still probably.

The CPU footprint of this driver is far far less than nvfx, and translates
into far greater framerates in a lot of applications (unless you're using
a CPU that's way way newer than the GPUs of these generations....)

Basically, we once again have a maintained driver for these chipsets \o/

Feel free to report bugs now!
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
8611a31bb401fcc2bdc0b3624859fffff7236c4b 20-Feb-2010 Luca Barbieri <luca@luca-barbieri.com> nv30, nv40: unify nv[34]0_miptree.c

The only difference between nv30 and nv40 is that nv30 allowed swizzling
for more texture types.

This patch preserves the existing behavior, using conditional code.

Note however that this does not make sense, since all texture types can
be swizzled on nv40 and probably on nv30 too.

However, the handling of swizzled surfaces in the current 2D code is
partially broken, so it's best not to touch this.

A whole rewrite of the 2D code will be submitted, which will solve this
problem.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
b8e56d4cddbd9c491b940e3ce5974c526802c752 20-Feb-2010 Luca Barbieri <luca@luca-barbieri.com> nv30, nv40: unify all structures and headers, except shaders

This patch unifies nv[34]0_screen.h, nv[34]0_context.h and
nv[34]0_state.h

The unified files are put in a new "nvfx" directory.

nv30_context.h and nv40_context.h still exist to hold the function
prototypes and include nvfx_context.h

nv[34]0_screen.h and nv[34]0_state.h are deleted, replaced by the
unified versions.

nv40 includes some extra fields for swtnl and user clip planes
support.

These fields will be unused on nv30 until that functionality gets
added to it too (by unification with nv40).
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
e497a58fad878d913a1795b239ddd05870988c58 09-Mar-2010 David Heidelberger <d.okias@gmail.com> nv30: fix typo

Signed-off-by: David Heidelberger <d.okias@gmail.com>
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
6f4ce4a4fed9f0f0f0ee89a63e406ab86dae7150 09-Mar-2010 Keith Whitwell <keithw@vmware.com> Squashed commit of gallium-no-texture-blanket

commit f90b3f01af82b9522067b1824e21709a6fb2d3af
Author: Keith Whitwell <keithw@vmware.com>
Date: Mon Mar 8 14:39:44 2010 +0000

gallium: remove p_screen::surface_buffer_create

This isn't very useful without texture_blanket(), which has also been
removed.

Note that this function hasn't been removed from the old pipe_winsys
(u_simple_screen) still used internally by some drivers (eg softpipe).

commit 6c462de39a4b9980a5f034a95e580efdfcb8173b
Author: Keith Whitwell <keithw@vmware.com>
Date: Mon Mar 8 14:27:40 2010 +0000

egl/x11: disable texture_blanket usage

commit b42da9160df9f47224e5b3291b972f41767aa6e5
Merge: 4be2436 3ca9336
Author: Keith Whitwell <keithw@vmware.com>
Date: Mon Mar 8 14:27:24 2010 +0000

Merge commit 'origin/master' into gallium-no-texture-blanket

Conflicts:
src/gallium/drivers/svga/svga_screen_texture.c

commit 4be2436316929e3dfc55bc34d810920c06556b66
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 4 14:59:26 2010 +0000

gallium: remove texture blanket call

No longer needed, except for nouveau and egl/xll/native_ximage.c.

Fix for nouveau is to keep the call, but move it to an internal
function within nouveau.

Fix for that egl/x11 relies on gallium-sw-api branch or its successor.

commit 69b6764330367d63c237d0bde9fb96435d0e0257
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 4 13:35:16 2010 +0000

drm_api: wrap comment
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
3ca933623cf0fd3b025ab7d1b37d3fd01c854807 08-Mar-2010 Keith Whitwell <keithw@vmware.com> Merge commit 'origin/gallium-winsys-handle-rebased'
5024a39d111e2cef176a18e17f18917c2242ec72 02-Mar-2010 Christoph Bumiller <e0425955@student.tuwien.ac.at> nouveau: s/TEXTURE_USAGE_PRIMARY/TEXTURE_USAGE_SCANOUT
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
c9f1db0a03b6d89f8b1113785aa961e6c9a398ef 01-Mar-2010 José Fonseca <jfonseca@vmware.com> nouveau: Rename pipe formats.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
5b6b67eb3ff714fbba8aed88a22a7646e1dbf655 04-Feb-2010 Francisco Jerez <currojerez@riseup.net> Nuke the nv0x-nv2x gallium pipe drivers.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
28486880ca3ec39419ccee0cb1a3bedc9ef7117c 02-Feb-2010 José Fonseca <jfonseca@vmware.com> gallium: pipe/p_inlines.h -> util/u_inlines.h
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
3a0c527bd03c0a4e637a1dcde11f0fb6129c07f6 27-Dec-2009 Luca Barbieri <luca@luca-barbieri.com> nouveau: Fix nv20-40 swizzled miptree RTs

I just coded a patch that does this and seems to work fine. It must be
fixed since it breaks OpenGL (or the state tracker can be changed, but
it seems better to do it in the driver).

The patch also fixes NV20 and NV30 in the same way. They compile but
are untested.

I would guess that using the 3D engine is faster for the larger
levels, but the 2D engine is faster for the smaller ones (and lacks
this issue).
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
b1ed72ebe2599ec178f51d86fd42f26486b9a19b 17-Dec-2009 Michal Krol <michal@vmware.com> Move the remaining format pf_get_* functions to u_format.h.

Previously they depended on format blocks, but after removing those
they started depending on format encoding.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
b91503f45740e6e2a5db92609aed887b6c7bd460 12-Dec-2009 Patrice Mandin <patmandin@gmail.com> Revert "nouveau: nv30: Disable swizzled surface usage if any dimension is 1 (Warsow creates a 1x1 front buffer)"

This reverts commit ec7844537ecdb0b598447e37bf0b7120acd029f3.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
ec7844537ecdb0b598447e37bf0b7120acd029f3 12-Dec-2009 Patrice Mandin <patmandin@gmail.com> nouveau: nv30: Disable swizzled surface usage if any dimension is 1 (Warsow creates a 1x1 front buffer)
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
c574f515f0aa20ccc3841cf61a6124bc5996e7b2 06-Dec-2009 Younes Manton <younes.m@gmail.com> nouveau: Work around nv04-nv40 miptrees not matching nouveau_miptree.

Thanks to Bob Gleitsmann for the patch.

I'll clean this up in a better way later if noone else beats me to it.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
94b5c28a98850f42fbcdab9ceda1450279e1e6fd 02-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: adapt nv drivers to interface cleanups
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
d509f84543d0979e9bb53c20c195f378dd61e728 26-Nov-2009 Roland Scheidegger <sroland@vmware.com> gallium: fix more statetrackers/drivers for not using texture width/height/depth arrays
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
87d7c1aa15a944d64e43b217e18553256f9fb681 02-Nov-2009 Younes Manton <younes.m@gmail.com> nouveau: Assume all texture blankets are linear for now.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
a5348d435da7d06478adc003a07e388915a8b346 12-Oct-2009 Patrice Mandin <patmandin@gmail.com> Add support for more 8 and 16 bits formats
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
d332f8b4efae39f09454593374ff939a08af7619 26-Mar-2009 Michel Dänzer <daenzer@vmware.com> gallium: Remove some little-used fields from struct pipe_surface.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
5e27cd46c04a9e7b5904cc014bffd0f4daae31fe 04-Mar-2009 Michel Dänzer <daenzer@vmware.com> gallium: Unify reference counting.

The core reference counting code is centralized in p_refcnt.h.

This has some consequences related to struct pipe_buffer:

* The screen member of struct pipe_buffer must be initialized, or
pipe_buffer_reference() will crash trying to destroy a buffer with reference
count 0. u_simple_screen takes care of this, but I may have missed some of
the drivers not using it.
* Except for rare exceptions deep in winsys code, buffers must always be
allocated via pipe_buffer_create() or via screen->*buffer_create() rather
than via winsys->*buffer_create().
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
a0dc286b5fecec1ede014cb5702368a60cbb22bc 25-Feb-2009 Younes Manton <younes.m@gmail.com> nouveau: nv04-nv40 texture transfer.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
0f4a91b50908ce4c1ae5fc65d73791608de30f06 16-Feb-2009 Patrice Mandin <patmandin@gmail.com> nouveau: oops :-)
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
36b83f519864e20a8ddd69b7ced55e89624a390a 11-Feb-2009 Younes Manton <younes.m@gmail.com> nouveau: 1xN, Nx1 levels of a swizzled mip tree shouldn't be aligned.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
c2be521d24eddb907ff556c0a8ec854a157ef9bc 10-Feb-2009 Patrice Mandin <patmandin@gmail.com> nouveau: nv30: fix miptree organization to have swizzled texture+mipmap at the right places
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
5c8c728afe0e2a8e8819097ae1c2f3c738d9397b 06-Feb-2009 Younes Manton <younes.m@gmail.com> nouveau: Frontbuffer pitch needs to be set.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
79bf0bdc7ffe97ec128e5dd143c4ed54648aae42 04-Feb-2009 Ben Skeggs <skeggsb@gmail.com> nouveau: get things building/running again after pipe_surface.buffer removal

Don't look at nouveau_winsys_pipe.h... I promise it's temporary!
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
5069bfed29bcee2c89c36c74c6d65d388eb7792e 03-Feb-2009 Zack Rusin <zackr@vmware.com> gallium: remove pipe_buffer from surfaces

this change disassociates, at least from the driver perspective,
the surface from buffer. surfaces are technically now views on the
textures so make it so by hiding the buffer in the internals of
textures.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
adfbba476db1fc55006efb748656ebb1a481d143 30-Jan-2009 Zack Rusin <zackr@vmware.com> gallium: make p_winsys internal

move it to pipe/internal/p_winsys_screen.h and start converting
the state trackers to the screen usage
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
b3028acd98e2b7fd09344f9005c5b20bba91262c 30-Jan-2009 Zack Rusin <zackr@vmware.com> gallium: give the screen priority when it comes to buffer allocations

allows the driver to overwrite buffer allocation, first step on the way
to making winsys interface internal to the drivers. state trackers and
the code above it will go through the screen
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
5897383344da3320d158c26adae05de35480471f 20-Jan-2009 José Fonseca <jfonseca@vmware.com> gallium: Remove the standalone surfaces.

This commit is mostly just a cosmetic change that cleans-up the interfaces,
replacing pipe_winsys::surface_* calls by

/**
* Allocate storage for a display target surface.
*
* Often surfaces which are meant to be blitted to the front screen (i.e.,
* display targets) must be allocated with special characteristics, memory
* pools, or obtained directly from the windowing system.
*
* This callback is invoked by the pipe_screenwhen creating a texture marked
* with the PIPE_TEXTURE_USAGE_DISPLAY_TARGET flag to get the underlying
* buffer storage.
*/
struct pipe_buffer *(*surface_buffer_create)(struct pipe_winsys *ws,
unsigned width, unsigned height,
enum pipe_format format,
unsigned usage,
unsigned *stride);

Most drivers were updated but not all were tested. Use the softpipe pipe
driver and the xlib winsys changes as a reference when fixing other drivers.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
0b03cd4ea744c32f3f553f7af21c0241926998c8 10-Jan-2009 Younes Manton <younes.m@gmail.com> nouveau: Update nv30 swizzling.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
6432d03c3d7ae21312e983fe41f4df7d66f7a3bf 12-Dec-2008 Patrice Mandin <pmandin@caramail.com> nouveau: remove useless NOUVEAU_BO_SWIZZLED flag, copy/paste nv40 work to swizzle textures
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
3086b1ecbe718d05bdf016e01cff9f5928c42e63 12-Nov-2008 Pekka Paalanen <pq@iki.fi> nv04..nv30: fix pipe_surface init

Signed-off-by: Pekka Paalanen <pq@iki.fi>
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
f302fca5eb63e4bca8af5b35c585451486143e6a 10-Sep-2008 Ben Skeggs <skeggsb@gmail.com> nouveau: gallium directory structure changed again..
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
36ac2ade17a1b8f2c47d41945430983834b9ef01 11-Jul-2008 Patrice Mandin <pmandin@caramail.com> nv30: Update miptree to match latest changes
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
b6478021d572d9ec30212d6e6992496ee4cf347d 29-Jun-2008 Ben Skeggs <skeggsb@gmail.com> nouveau: adapt to cpp->pf_block changes
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
fa4b2439d4f240a5e573d4ea198b829791d614f4 26-May-2008 Ben Skeggs <skeggsb@gmail.com> nouveau: very quick port to tex-surface changes.

probably the last match-gallium-upstream merge for a bit, some cleanup+nv50
work coming RSN...
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
7f811f2c42937f254ae1b11e5b0ece765a8ea31b 12-Apr-2008 Patrice Mandin <pmandin@caramail.com> nv30: Update miptree stuff
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
7b389f8d2f307fa0714494f2a43e9141cc04ed3e 30-Mar-2008 Patrice Mandin <pmandin@caramail.com> nv30: use FREE macro
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
1d9049c4df24d47446218f4032b891b817af0d00 20-Mar-2008 Ben Skeggs <skeggsb@gmail.com> nouveau: match gallium API changes
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
a514aeb77899816d82c5b31f3bf2206d82d68893 18-Mar-2008 Patrice Mandin <pmandin@caramail.com> nv30: update miptree stuff for texturing
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
6bd5e5ce00b1870a8d94337cc10faa8134cbefd5 12-Mar-2008 Stephane Marchesin <marchesin@icps.u-strasbg.fr> nv30: line up the miptree creation to latest changes.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
84cc07dc89c0ebce4ad55b4b3684d4420a202683 29-Feb-2008 Ben Skeggs <skeggsb@gmail.com> nouveau: implement pipe_screen

Untested on NV3x/NV5x. Quite possibly broken.
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c
26add9288c88108e3485ffc57c51ea9bdc0ee719 16-Feb-2008 Ben Skeggs <skeggsb@gmail.com> nouveau: match gallium code reorginisation.

That was... fun..
/external/mesa3d/src/gallium/drivers/nv30/nv30_miptree.c