Re: [Mesa-dev] [PATCH 9/9] egl/swrast: enable config extension for swrast
On 2 May 2015 at 11:15, Axel Davy wrote: > Enables to use dri config for swrast, like vblank_mode. > > Signed-off-by: Axel Davy > --- > src/egl/drivers/dri2/egl_dri2.c| 21 ++--- > src/gallium/state_trackers/dri/drisw.c | 1 + > src/mesa/drivers/dri/swrast/swrast.c | 1 + > 3 files changed, 12 insertions(+), 11 deletions(-) > > diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c > index 689d5ec..1434580 100644 > --- a/src/egl/drivers/dri2/egl_dri2.c > +++ b/src/egl/drivers/dri2/egl_dri2.c > @@ -559,6 +559,7 @@ dri2_create_screen(_EGLDisplay *disp) > { > const __DRIextension **extensions; > struct dri2_egl_display *dri2_dpy; > + unsigned i; > > dri2_dpy = disp->DriverData; > > @@ -599,25 +600,23 @@ dri2_create_screen(_EGLDisplay *disp) > extensions = dri2_dpy->core->getExtensions(dri2_dpy->dri_screen); > > if (dri2_dpy->dri2) { > - unsigned i; > - >if (!dri2_bind_extensions(dri2_dpy, dri2_core_extensions, extensions)) > goto cleanup_dri_screen; > - > - for (i = 0; extensions[i]; i++) { > -if (strcmp(extensions[i]->name, __DRI2_ROBUSTNESS) == 0) { > -dri2_dpy->robustness = (__DRIrobustnessExtension *) > extensions[i]; > -} > -if (strcmp(extensions[i]->name, __DRI2_CONFIG_QUERY) == 0) { > - dri2_dpy->config = (__DRI2configQueryExtension *) extensions[i]; > -} > - } > } else { >assert(dri2_dpy->swrast); >if (!dri2_bind_extensions(dri2_dpy, swrast_core_extensions, > extensions)) > goto cleanup_dri_screen; > } > > + for (i = 0; extensions[i]; i++) { > + if (strcmp(extensions[i]->name, __DRI2_ROBUSTNESS) == 0) { > + dri2_dpy->robustness = (__DRIrobustnessExtension *) extensions[i]; > + } > + if (strcmp(extensions[i]->name, __DRI2_CONFIG_QUERY) == 0) { > + dri2_dpy->config = (__DRI2configQueryExtension *) extensions[i]; > + } > + } > + Side note: Applying this hunk might lead to conflict due to the newly introduced __DRI2_FENCE. Afaict one can move it as well similarly to robustness and config_query. Cheers Emil ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 9/9] egl/swrast: enable config extension for swrast
On 2 May 2015 at 20:15, Axel Davy wrote: > Enables to use dri config for swrast, like vblank_mode. > > Signed-off-by: Axel Davy Reviewed-by: Dave Airlie > --- > src/egl/drivers/dri2/egl_dri2.c| 21 ++--- > src/gallium/state_trackers/dri/drisw.c | 1 + > src/mesa/drivers/dri/swrast/swrast.c | 1 + > 3 files changed, 12 insertions(+), 11 deletions(-) > > diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c > index 689d5ec..1434580 100644 > --- a/src/egl/drivers/dri2/egl_dri2.c > +++ b/src/egl/drivers/dri2/egl_dri2.c > @@ -559,6 +559,7 @@ dri2_create_screen(_EGLDisplay *disp) > { > const __DRIextension **extensions; > struct dri2_egl_display *dri2_dpy; > + unsigned i; > > dri2_dpy = disp->DriverData; > > @@ -599,25 +600,23 @@ dri2_create_screen(_EGLDisplay *disp) > extensions = dri2_dpy->core->getExtensions(dri2_dpy->dri_screen); > > if (dri2_dpy->dri2) { > - unsigned i; > - >if (!dri2_bind_extensions(dri2_dpy, dri2_core_extensions, extensions)) > goto cleanup_dri_screen; > - > - for (i = 0; extensions[i]; i++) { > -if (strcmp(extensions[i]->name, __DRI2_ROBUSTNESS) == 0) { > -dri2_dpy->robustness = (__DRIrobustnessExtension *) > extensions[i]; > -} > -if (strcmp(extensions[i]->name, __DRI2_CONFIG_QUERY) == 0) { > - dri2_dpy->config = (__DRI2configQueryExtension *) extensions[i]; > -} > - } > } else { >assert(dri2_dpy->swrast); >if (!dri2_bind_extensions(dri2_dpy, swrast_core_extensions, > extensions)) > goto cleanup_dri_screen; > } > > + for (i = 0; extensions[i]; i++) { > + if (strcmp(extensions[i]->name, __DRI2_ROBUSTNESS) == 0) { > + dri2_dpy->robustness = (__DRIrobustnessExtension *) extensions[i]; > + } > + if (strcmp(extensions[i]->name, __DRI2_CONFIG_QUERY) == 0) { > + dri2_dpy->config = (__DRI2configQueryExtension *) extensions[i]; > + } > + } > + > dri2_setup_screen(disp); > > return EGL_TRUE; > diff --git a/src/gallium/state_trackers/dri/drisw.c > b/src/gallium/state_trackers/dri/drisw.c > index 5f69a2d..4a2c1bb 100644 > --- a/src/gallium/state_trackers/dri/drisw.c > +++ b/src/gallium/state_trackers/dri/drisw.c > @@ -333,6 +333,7 @@ drisw_update_tex_buffer(struct dri_drawable *drawable, > static const __DRIextension *drisw_screen_extensions[] = { > &driTexBufferExtension.base, > &dri2RendererQueryExtension.base, > + &dri2ConfigQueryExtension.base, > NULL > }; > > diff --git a/src/mesa/drivers/dri/swrast/swrast.c > b/src/mesa/drivers/dri/swrast/swrast.c > index fb29078..d60774d 100644 > --- a/src/mesa/drivers/dri/swrast/swrast.c > +++ b/src/mesa/drivers/dri/swrast/swrast.c > @@ -942,6 +942,7 @@ static const __DRIextension *swrast_driver_extensions[] = > { > &driCoreExtension.base, > &driSWRastExtension.base, > &driCopySubBufferExtension.base, > +&dri2ConfigQueryExtension.base, > &swrast_vtable.base, > NULL > }; > -- > 2.3.7 > > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
[Mesa-dev] [PATCH 9/9] egl/swrast: enable config extension for swrast
Enables to use dri config for swrast, like vblank_mode. Signed-off-by: Axel Davy --- src/egl/drivers/dri2/egl_dri2.c| 21 ++--- src/gallium/state_trackers/dri/drisw.c | 1 + src/mesa/drivers/dri/swrast/swrast.c | 1 + 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index 689d5ec..1434580 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -559,6 +559,7 @@ dri2_create_screen(_EGLDisplay *disp) { const __DRIextension **extensions; struct dri2_egl_display *dri2_dpy; + unsigned i; dri2_dpy = disp->DriverData; @@ -599,25 +600,23 @@ dri2_create_screen(_EGLDisplay *disp) extensions = dri2_dpy->core->getExtensions(dri2_dpy->dri_screen); if (dri2_dpy->dri2) { - unsigned i; - if (!dri2_bind_extensions(dri2_dpy, dri2_core_extensions, extensions)) goto cleanup_dri_screen; - - for (i = 0; extensions[i]; i++) { -if (strcmp(extensions[i]->name, __DRI2_ROBUSTNESS) == 0) { -dri2_dpy->robustness = (__DRIrobustnessExtension *) extensions[i]; -} -if (strcmp(extensions[i]->name, __DRI2_CONFIG_QUERY) == 0) { - dri2_dpy->config = (__DRI2configQueryExtension *) extensions[i]; -} - } } else { assert(dri2_dpy->swrast); if (!dri2_bind_extensions(dri2_dpy, swrast_core_extensions, extensions)) goto cleanup_dri_screen; } + for (i = 0; extensions[i]; i++) { + if (strcmp(extensions[i]->name, __DRI2_ROBUSTNESS) == 0) { + dri2_dpy->robustness = (__DRIrobustnessExtension *) extensions[i]; + } + if (strcmp(extensions[i]->name, __DRI2_CONFIG_QUERY) == 0) { + dri2_dpy->config = (__DRI2configQueryExtension *) extensions[i]; + } + } + dri2_setup_screen(disp); return EGL_TRUE; diff --git a/src/gallium/state_trackers/dri/drisw.c b/src/gallium/state_trackers/dri/drisw.c index 5f69a2d..4a2c1bb 100644 --- a/src/gallium/state_trackers/dri/drisw.c +++ b/src/gallium/state_trackers/dri/drisw.c @@ -333,6 +333,7 @@ drisw_update_tex_buffer(struct dri_drawable *drawable, static const __DRIextension *drisw_screen_extensions[] = { &driTexBufferExtension.base, &dri2RendererQueryExtension.base, + &dri2ConfigQueryExtension.base, NULL }; diff --git a/src/mesa/drivers/dri/swrast/swrast.c b/src/mesa/drivers/dri/swrast/swrast.c index fb29078..d60774d 100644 --- a/src/mesa/drivers/dri/swrast/swrast.c +++ b/src/mesa/drivers/dri/swrast/swrast.c @@ -942,6 +942,7 @@ static const __DRIextension *swrast_driver_extensions[] = { &driCoreExtension.base, &driSWRastExtension.base, &driCopySubBufferExtension.base, +&dri2ConfigQueryExtension.base, &swrast_vtable.base, NULL }; -- 2.3.7 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev