History log of /external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
73b1570dc1959d7efe2512db956a98925a90fddb 26-Jan-2017 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: increase number of ubo binding points

Apparently GL 4.5 requires 14 of these (there's a "*" in the spec, but
it's unclear what it refers to). We need to expose an extra binding
point for the "program parameters", which means this must be 15. Remove
the last vestige of the "use c14 for immediates" idea.

Fixes GL45-CTS.shading_language_420pack.binding_uniform_block_array

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Cc: mesa-stable@lists.freedesktop.org
(cherry picked from commit 59ca352fc573a37f9f70c1f6217e85dd3e31d38e)
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
5ba380c226b127cbfad00dd647471e1518ba2cb2 02-Jan-2017 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: enable FBFETCH with a special slot for color buffer 0

We don't need to support all the color buffers for advanced blend, just
cb0. For Fermi, we use the special binding slots so that we don't
overlap with user textures, while Kepler+ gets a dedicated position for
the fb handle in the driver constbuf.

This logic is only triggered when a FBFETCH is actually present so it
should be a no-op most of the time.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
63ac80879e22f397cead3e031d2d41a8c4d84c7e 31-Aug-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: add nvc0_screen_resize_text_area() helper

This function will be helpful for resizing the code segment
area when we need to evict all shaders.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
0fc3b7c88edc5f28d01230a7575f9b75c615e929 30-Aug-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: check return value of nvc0_screen_resize_tls_area()

While we are at it, make it static and change the return values
policy to be consistent.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
b21a00d1295d721275946e045e92920acdcb1a85 12-Jun-2016 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: add support for GL_EXT_window_rectangles

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
9f92a8f00a55f4abc06c2f3c21b2dfd70905a30e 25-Apr-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: stick compute kernel arguments into uniform_bo

Having one buffer object for input kernel arguments coming from clover
and an other one for OpenGL user uniforms is unnecessary. Using the
uniform_bo object for both GL/CL uniforms avoids to declare a new BO.

This only affects compute programs but it should not hurt anything
because the states are dirtied and data will get reuploaded.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
afa04785fade4ed032a621db13e0a03505afa7ee 18-Mar-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: add preliminary support for images

This implements set_shader_images() and resource invalidation for
images. As OpenGL requires at least 8 images, we are going to expose
this minimum value even if this might be raised for Kepler, but this
limit is mainly for Fermi because the hardware only accepts 8 images.

Based on original patch by Ilia Mirkin.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
71f327aa21d095f848c2162247476612eca1ed73 08-Feb-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: bump the maximum number of UBOs for compute on Kepler

The maximum number of uniform blocks (MAX_COMPUTE_UNIFORM_BLOCKS)
per compute program must be at least 12.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
902bbda81b31bacb2a8c60ca6a8ba8ca34ae73d3 24-Feb-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: avoid using magic numbers for the uniform_bo offsets

Instead make use of constants to improve readability.

The first 32 bytes of the driver constant buffer are unknown... This
doesn't seem to be used in the codegen part, but if the texBindBase
offset is shifted from 0x20 to 0x00, this breaks the universe for
really weird reasons. This sounds like to be related to textures.

Anyway, name this NVC0_CB_AUX_UNK_INFO and add a todo should be
enough for now.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
57d4251003f4ed284179171bebaa2463675440d6 11-Jan-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: bind constant buffers for compute on Fermi

Loosely based on 3D.

Changs from v3:
- invalidate COMPUTE CBs after validating 3D CBs because they are
aliased

Changes from v2:
- get rid of the 's' param to nvc0_cb_bo_push() because it doesn't
matter to upload constbufs for compute using the 3d chan

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
1d1ddfe5f887980acfb1283cf1c0b1240b3a60a6 14-Feb-2016 Ilia Mirkin <imirkin@alum.mit.edu> nv50,nvc0: enable/disable seamless cubemap texturing as requested

In a situation where the seamless setting isn't available on a
per-texture basis (G200+ Teslas, and all Fermis), assume that all
samplers will have it identically set, and enable accordingly.

This fixes arb_seamless_cubemap piglit test on Fermi and Tesla.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
97fc3fd559629caaac5173cd28986fe9e83ca5e9 15-Feb-2016 Ben Skeggs <bskeggs@redhat.com> nvc0: implement support for maxwell texture headers

Adds support for the new TIC layout that's present on Maxwell GPUs,
heavily based on the code for the existing layout.

This code is required for GM20x support. While GM10x supports the older
layout still, this commit switches it to use the updated version instead.

Piglit testing shows zero regressions on GM107.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
733c8f8c7396a24ad21555853883221f5f5cd9d4 15-Feb-2016 Ben Skeggs <bskeggs@redhat.com> nv50-: split tic format specification

We previously stored texture format information as it would appear in
the TIC.

We're about to support the new TIC layout that appeared with Maxwell,
so it makes more sense to store the data in a split-out format.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
346d7a24ea27f1415061bf8392cb21a330e4aff6 15-Feb-2016 Ben Skeggs <bskeggs@redhat.com> nv50-: separate vertex formats from surface format descriptions

We've previously had identical naming between vertex and texture
formats, so it mostly made sense to define these together.

However, upcoming patches are going to transition the driver over to
using updated texture header definitions using NVIDIA's naming, and this
will no longer be the case.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
899b1b98a4ab094456632e08ce01ffb106519012 03-Jan-2016 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: enable atomic counters and ssbo

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
b75fff70d82474a571c59c2a3a01e4f9f02286a7 21-Oct-2015 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: do upload-time fixups for interpolation parameters

Unfortunately flatshading is an all-or-nothing proposition on nvc0,
while GL 3.0 calls for the ability to selectively specify explicit
interpolation parameters on gl_Color/gl_SecondaryColor which would
override the flatshading setting. This allows us to fix up the
interpolation settings after shader generation based on rasterizer
settings.

While we're at it, we can add support for dynamically forcing all
(non-flat) shader inputs to be interpolated per-sample, which allows
st/mesa to not generate variants for these.

Fixes the remaining failing glsl-1.30/execution/interpolation piglits.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
1825898e0471915673e572db4f61f1fd42461150 06-Oct-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: store the number of GPCs to nvc0_screen

NOUVEAU_GETPARAM_GRAPH_UNITS param returns the number of GPCs, the total
number of TPCs and the number of ROP units. Note that when the DRM
version is too old the default number of GPCs is fixed to 4.

This will be used to launch the compute kernel which is used to read MP
performance counters over all GPCs.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
7129cbf5f4acaa86512c0dd6c127b8fb617fb441 04-Oct-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: move HW SM queries to nvc0_query_hw_sm.c/h files

Global performance counters (PCOUNTER) will be added to
nvc0_query_hw_pm.c/h files.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
0644196ab13c769570e5e2dcd738ebe5deca5754 17-May-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: add a header file for nvc0_query

This will allow to split SW and HW queries in an upcoming patch.

While we are at it, make use of nvc0_query struct instead of pipe_query.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
c8a61ea4fbcb09215a95dc569dba335b766e5d4d 29-Aug-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: change prefix of MP performance counters to HW_SM

According to NVIDIA, local performance counters (MP) are prefixed
with SM, while global performance counters (PCOUNTER) are called PM.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
21bdb4d8f381e4f33b7028a049162c71c2daff73 28-Aug-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: sort performance counter queries by name

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
ebca85423cf18e987ffebadcde79e95fc2609291 28-Aug-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: make names of performance counter queries consistent

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
981f46aa95b27ff1d139a6d5e059f9fd32cf83f0 28-Aug-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: use enumerations for driver queries

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
0eac5990016dbc435ef3260cf602783bebf03e59 28-Aug-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: remove commented out code related to PCOUNTER queries

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
d1ffdebce6d03497fa6c2e4c8eb754e9075e29f4 17-May-2015 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: add support for setting patch vertices at draw time

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
a2a1a5805fd617e7f3cc8be44dd79b50da07ebb9 21-Jul-2015 Ilia Mirkin <imirkin@alum.mit.edu> gallium: replace INLINE with inline

Generated by running:
git grep -l INLINE src/gallium/ | xargs sed -i 's/\bINLINE\b/inline/g'
git grep -l INLINE src/mesa/state_tracker/ | xargs sed -i 's/\bINLINE\b/inline/g'
git checkout src/gallium/state_trackers/clover/Doxyfile

and manual edits to
src/gallium/include/pipe/p_compiler.h
src/gallium/README.portability

to remove mentions of the inline define.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Acked-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
cd0dec0d9dfab642c51774c3f5788cbdf00b8c9b 20-Jul-2015 Samuel Pitoiset <samuel.pitoiset@gmail.com> nouveau: use bool instead of boolean

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
e9b1ea29bf1e8f09e83bd6358d0d2068053f09d4 08-May-2015 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: keep track of PGRAPH state in nvc0_screen

See identical commit for nv50. Destroying the current context and then
creating a new one or switching to another existing context would cause
the "current" state to not be properly initialized, so we save it off in
the screen.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: mesa-stable@lists.freedesktop.org
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
ed7d3886cc25240ad92055b7813e038ba1a5e77c 04-Jul-2014 Samuel Pitoiset <samuel.pitoiset@gmail.com> nvc0: define driver-specific query groups

This patch defines "Driver statistics" and "MP counters" groups, but
only the latter will be exposed through GL_AMD_performance_monitor.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Peres <martin.peres@free.fr>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
22543dd8a1b8aa9b963c0f355a628159fe83a5bf 16-Oct-2014 Ilia Mirkin <imirkin@alum.mit.edu> nvc0: remove unused mm_VRAM_fe0

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
a2cb3a4a4fa5f22e983ac6081b22a04594c7a10a 15-Jun-2014 Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> nvc0: implement multiple viewports/scissors, enable ARB_viewport_array

Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de>
[imirkin: mark things dirty on ctx switch, 3d blit]
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
dd2229d4c68ed78a50104637aef904f8ab6d7dd3 07-Feb-2014 Christoph Bumiller <e0425955@student.tuwien.ac.at> nvc0: create the SW object

It's required for being able to use software methods now.
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h
5eb7ff1175a644ffe3b0f1a75cb235400355f9fb 20-Aug-2013 Johannes Obermayr <johannesobermayr@gmx.de> Move nv30, nv50 and nvc0 to nouveau.

It is planned to ship openSUSE 13.1 with -shared libs.
nouveau.la, nv30.la, nv50.la and nvc0.la are currently LIBADDs in all nouveau
related targets.
This change makes it possible to easily build one shared libnouveau.so which is
then LIBADDed.
Also dlopen will be faster for one library instead of three and build time on
-jX will be reduced.

Whitespace fixes were requested by 'git am'.

Signed-off-by: Johannes Obermayr <johannesobermayr@gmx.de>
Acked-by: Christoph Bumiller <christoph.bumiller@speed.at>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/gallium/drivers/nouveau/nvc0/nvc0_screen.h