On Tue, Jul 2, 2019 at 5:54 PM Ilia Mirkin <[email protected]> wrote: > > Can you check on PIPE_CAP_COMPUTE_SHADER_DERIVATIVES ? I think we > should be able to just flip that on for nvc0. Also the > CS_DERIVED_SYSTEM_VALUES thing might be useful -- I had wanted to do > that a while ago but laziness defeated me. Now that it's there though > ... we have sysvals for many of those derived things. > > Or at least add commentary about each one, like "should be enabled > when we get to it" sort of thing. >
I added a trello card for the PIPE_CAP_COMPUTE_SHADER_DERIVATIVES one, but I could add another one for CS_DERIVED_SYSTEM_VALUES > On Tue, Jul 2, 2019 at 11:49 AM Karol Herbst <[email protected]> wrote: > > > > Signed-off-by: Karol Herbst <[email protected]> > > --- > > src/gallium/drivers/nouveau/nv50/nv50_screen.c | 13 +++++++++++++ > > src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 13 +++++++++++++ > > 2 files changed, 26 insertions(+) > > > > diff --git a/src/gallium/drivers/nouveau/nv50/nv50_screen.c > > b/src/gallium/drivers/nouveau/nv50/nv50_screen.c > > index b84330b4b38..24796aff1ce 100644 > > --- a/src/gallium/drivers/nouveau/nv50/nv50_screen.c > > +++ b/src/gallium/drivers/nouveau/nv50/nv50_screen.c > > @@ -320,6 +320,13 @@ nv50_screen_get_param(struct pipe_screen *pscreen, > > enum pipe_cap param) > > case PIPE_CAP_NIR_COMPACT_ARRAYS: > > case PIPE_CAP_COMPUTE: > > case PIPE_CAP_IMAGE_LOAD_FORMATTED: > > + case PIPE_CAP_COMPUTE_SHADER_DERIVATIVES: > > + case PIPE_CAP_ATOMIC_FLOAT_MINMAX: > > + case PIPE_CAP_CONSERVATIVE_RASTER_INNER_COVERAGE: > > + case PIPE_CAP_FRAGMENT_SHADER_INTERLOCK: > > + case PIPE_CAP_CS_DERIVED_SYSTEM_VALUES_SUPPORTED: > > + case PIPE_CAP_FBFETCH_COHERENT: > > + case PIPE_CAP_TGSI_SKIP_SHRINK_IO_ARRAYS: > > return 0; > > > > case PIPE_CAP_VENDOR_ID: > > @@ -338,8 +345,14 @@ nv50_screen_get_param(struct pipe_screen *pscreen, > > enum pipe_cap param) > > return dev->vram_size >> 20; > > case PIPE_CAP_UMA: > > return 0; > > + > > default: > > debug_printf("%s: unhandled cap %d\n", __func__, param); > > + /* fallthrough */ > > + /* caps where we want the default value */ > > + case PIPE_CAP_DMABUF: > > + case PIPE_CAP_ESSL_FEATURE_LEVEL: > > + case PIPE_CAP_MAX_FRAMES_IN_FLIGHT: > > return u_pipe_screen_get_param_defaults(pscreen, param); > > } > > } > > diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > > b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > > index 3a543e54d1f..bf883631b86 100644 > > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > > @@ -355,6 +355,13 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, > > enum pipe_cap param) > > case PIPE_CAP_GLSL_TESS_LEVELS_AS_INPUTS: > > case PIPE_CAP_NIR_COMPACT_ARRAYS: > > case PIPE_CAP_IMAGE_LOAD_FORMATTED: > > + case PIPE_CAP_COMPUTE_SHADER_DERIVATIVES: > > + case PIPE_CAP_ATOMIC_FLOAT_MINMAX: > > + case PIPE_CAP_CONSERVATIVE_RASTER_INNER_COVERAGE: > > + case PIPE_CAP_FRAGMENT_SHADER_INTERLOCK: > > + case PIPE_CAP_CS_DERIVED_SYSTEM_VALUES_SUPPORTED: > > + case PIPE_CAP_FBFETCH_COHERENT: > > + case PIPE_CAP_TGSI_SKIP_SHRINK_IO_ARRAYS: > > return 0; > > > > case PIPE_CAP_VENDOR_ID: > > @@ -373,8 +380,14 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, > > enum pipe_cap param) > > return dev->vram_size >> 20; > > case PIPE_CAP_UMA: > > return 0; > > + > > default: > > debug_printf("%s: unhandled cap %d\n", __func__, param); > > + /* fallthrough */ > > + /* caps where we want the default value */ > > + case PIPE_CAP_DMABUF: > > + case PIPE_CAP_ESSL_FEATURE_LEVEL: > > + case PIPE_CAP_MAX_FRAMES_IN_FLIGHT: > > return u_pipe_screen_get_param_defaults(pscreen, param); > > } > > } > > -- > > 2.21.0 > > > > _______________________________________________ > > mesa-dev mailing list > > [email protected] > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
