[Mesa-dev] (no subject)
olvaffe at gmail.com
Thu Jun 10 02:25:22 PDT 2010
2010/6/4 Kristian Høgsberg <krh at bitplanet.net>:
> Here's an update on the EGL/DRM integration extensions and patches.
> I've updated the patches with the feedback from the discussions on the
> list to the extent that I think is feasible. I think we're pretty
> close to consensus on how to do this, but let me know what you think.
> There's also a new extension in the series, the EGL_INTEL_no_surface
> extension, which lets us make a context current without a surface.
The summary looks fine to me. Please go ahead with your changes. I have one
comment below regarding the first patch. It is fine to ignore it unless you
> I updated the eglkms.c test case, and it now compiles and runs against
> this patch series:
> [PATCH 1/6] egl: Add MESA_typed_display infrastructure
> This is the updated version of the alternative eglGetDisplay
> extension. I've incorporated the feedback from Chia-I regarding
> naming of the entry point and tokens, and Jakobs suggestion that we
> add tokens for the existing platforms (Win32 and X11).
> It's still a new entrypoint, not separate .so's as Chia-I suggested.
> I don't think it's a terrible idea to have separate .so's with
> different names, but I still like this better, and with separate
> .so's we'll have to compile libEGL several times to output the
> different libraries, which is awkward and a pain for distributions.
> I dropped the XCB display for now.
As the extension cannot be tested, it looks like a hack to me, only with a
spec. Having separating libraries allows the issue to be resolved in the build
systems (of apps), instead of in the code. Say, wayland is adopted by a mobile
device where there is DRM but no X server. It is natural that eglGetDisplay on
that platform takes a DRM fd, and the extension becomes redundant. If wayland
linked to libEGL-drm.so, whose eglGetDisplay expects a DRM fd, on a common
desktop, building wayland to the platform would require only a change to the
> [PATCH 2/6] egl_dri2: Support EGL_DISPLAY_TYPE_DRM_MESA
> This one just adds support to egl_dri2, should be pretty harmless.
> [PATCH 3/6] egl: EGL_INTEL_no_surface extension
> The new extension mentioned above. It adds a new config attribute
> to inidicate the APIs that support making a context current with
> that config and no surfaces. Previous discussion on this have
> stalled on the problem that not all client APIs have a meaningful
> way to make a context current without surfaces. By specifying the
> supported APIs in the config we solve this problem. See the spec in
> the patch for details.
> [PATCH 4/6] egl: MESA_image_drm extension
> This is the extension to create drm images from nothing using
> eglCreateDRMImageMESA, share them using eglShareDRMImageMesa, and
> import them using the EGL_DRM_BUFFER_MESA target with
> eglCreateImageKHR. Sharing an image is a separate entrypoint
> because a drm buffer doesn't necesarily have a global name and
> creating one is an extra step that we don't always want to incur.
> [PATCH 5/6] egl_dri2: Add support for MESA_image_drm
> Nothing to see here, just the implementation. Some of the
> attrib_list checking could be lifted to egl/main.
> [PATCH 6/6] intel: Add support for MESA_drm_image
> The intel dri driver side of things.
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
olv at LunarG.com
More information about the mesa-dev