summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/egl
AgeCommit message (Collapse)Author
2010-07-28Untangle gallium/egl/glx source sharing mess and make it compile againKristian Høgsberg
2010-07-26st/egl: Fix debug linenobled
Acked-by: Jakob Bornecrantz <jakob@vmware.com>
2010-07-20st/egl: Fixes for recent GLX cleanup.Chia-I Wu
Mainly, the type of __GLXdisplayPrivateRec::screenConfigs has changed from "__GLXscreenConfigs *" to "__GLXscreenConfigs **".
2010-07-06st/egl: Add support for !GLX_DIRECT_RENDERING.Chia-I Wu
st/egl uses GLX code for DRI2 support. It should honor GLX_DIRECT_RENDERING. Also updates configure.ac to define GLX_DIRECT_RENDERING for st/egl.
2010-07-03st/egl: Remove unnecessary headers.Vinson Lee
2010-06-30st/egl: Manually free configs on terminate.Chia-I Wu
The configs should be FREE()ed, not free()ed. We cannot rely on _eglCleanupDisplay here.
2010-06-30egl: Store screens in a dynamic array.Chia-I Wu
2010-06-30egl: Store configs in a dynamic array.Chia-I Wu
2010-06-30st/egl: Add egl-gdi target.Chia-I Wu
The target supports OpenVG on Windows with software rasterizer. The egl_g3d_loader defined by the target supports arbitrary client APIs and window systems. It is the SConscript that limits the support to OpenVG and GDI. This commit also fixes a typo in gdi backend.
2010-06-29egl: Remove st/egl probe code.Chia-I Wu
It is no longer needed.
2010-06-29st/egl: Build a single EGL driver.Chia-I Wu
This change makes st/egl build a single egl_gallium.so and multiple st_<API>.so and pipe_<HW>.so. When a display is initialized, the corresponding pipe driver will be loaded. When a context is created, the corresponding state tracker will be loaded. Unlike DRI drivers, no ABI compatibility is maintained. egl_gallium, pipe drivers and state trackers should always be distributed as a single package. As such, there is only a single src/gallium/targets/egl/ that builds everything for the package.
2010-06-29st/egl: Move module loading code to targets.Chia-I Wu
Several changes are made. libegl.a no longer defines _eglMain. It defines functions to create and destroy a _EGLDriver instead. The creation function is called by the targets. It takes an egl_g3d_loader as its argument. The loader is defined by the targets and is in charge of creating st_api and pipe_screen. This allows us to move the module loading code to targets. Lastly, the modules are now loaded as the respective contexts are created.
2010-06-29st/egl: Reorganize targets.Chia-I Wu
Merge all targets into targets/egl/. The target produces egl_gallium_<HW>.so for each pipe driver and st_<API>.so for each client APIs. This enables us to further merge egl_gallium_<HW>.so into egl_gallium.so later.
2010-06-29st/egl: One driver per hardware.Chia-I Wu
Merge multiple egl_<platform>_<pipe>.so into a single egl_gallium_<pipe>.so. The environment variable EGL_PLATFORM is now used to modify the return value of _eglGetNativePlatform.
2010-06-29st/egl: Introduce native_platform.Chia-I Wu
Move native_get_name, native_create_probe, native_get_probe_result, and native_create_display into struct native_platform, and add native_get_platform to get a handle to the struct.
2010-06-29st_api: Remove st_context::is_visual_supported.Chia-I Wu
The callback is used by st/vega to check if a visual specifies the depth/stencil format. It forces st/vega to be loaded by st/egl to perform the check. As noted in EGL spec, the depth/stencil format of a visual should not affect OpenVG. It should be better to ignore the field and always allocate the depth/stencil texture.
2010-06-28Merge branch 'gallium-drm-driver-drescriptor'Jakob Bornecrantz
Conflicts: src/gallium/state_trackers/egl/x11/native_dri2.c src/gallium/state_trackers/egl/x11/native_x11.c src/gallium/state_trackers/egl/x11/native_x11.h src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/radeon/drm/radeon_drm.c
2010-06-23egl: Introduce platform displays internally.Chia-I Wu
This commit introduces type-safe platform displays internally. A platform display consists of a generic pointer and an enum that specifies the platform. An EGLDisplay is created from a platform display. Native displays become platform displays whose platform is determined by _eglGetNativePlatform(). Platform windows and pixmaps may also be introduced if needed.
2010-06-17egl: s/EGL_DISPLAY/EGL_PLATFORM/.Chia-I Wu
A platform is already used to mean a window system in EGL. No need to use a different term.
2010-06-11st/egl: Add fbdev backend.Chia-I Wu
The backend is pure software. It implements EGL_MESA_screen_surface extension, and is kept simple by only exporting the current mode.
2010-06-10st/egl: Remove unnecessary header.Vinson Lee
2010-06-06gallium: Convert state trackers to drm driver interfaceJakob Bornecrantz
2010-06-04st/egl: Fix compiler warnings.Chia-I Wu
Forgot to stage this chunk in last commit.
2010-06-04st/egl: Move sw screen creation to native helper.Chia-I Wu
The code is shared by ximage and gdi backend.
2010-05-31st/egl: Use stamps only to avoid unnecessary geometry update.Chia-I Wu
resource_surface_add_resources should still be called even when the stamps match. For example, a caller may ask for two different sets of attachments.
2010-05-31st/egl: Update KMS backend to use resource_surface.Chia-I Wu
2010-05-31st/egl: Update GDI backend to use resource_surface.Chia-I Wu
2010-05-31st/egl: Update ximage backend to use resource_surface.Chia-I Wu
2010-05-31st/egl: Add helper functions for use by backends.Chia-I Wu
There is only resource_surface for now. It helps manage the resources of a software-based native surface such as XImage or GDI.
2010-05-31st/egl: Use OS-specific module suffices.Chia-I Wu
At least, .dll is used on Windows.
2010-05-31st/egl: Add GDI backend.Chia-I Wu
The backend uses Windows GDI driver to provide a software EGL implementation on Windows.
2010-05-30st/egl: Hook eglCreatePbufferFromClientBuffer.Chia-I Wu
This is some refactoring works. Creating a pbuffer from an EGL_OPENVG_IMAGE is still not supported.
2010-05-30st/egl: Fix eglCopyBuffers.Chia-I Wu
It was broken since surface_copy -> resource_copy_region transition.
2010-05-30st/egl: Initialize KMS backend from an fd.Chia-I Wu
Check if the native native is EGL_DEFAULT_DISPLAY. If not, treat it as an fd.
2010-05-27egl/mks: remove extra param from function callBrian Paul
2010-05-27egl_g3d: add missing param to egl_g3d_st_manager_get_egl_image()Brian Paul
2010-05-25drm_api: Remove type argument from create screen callbackJakob Bornecrantz
With the removal of DRI1 support there where no use of this argument, some drivers didn't even properly check it.
2010-05-21st_api: Give get_egl_image arguments directly to the functionJakob Borncrantz
2010-05-21st_api: Add get param function to st_managerJakob Bornecrantz
2010-05-21Merge branch 'gallium-msaa'Roland Scheidegger
Conflicts: src/mesa/state_tracker/st_gen_mipmap.c src/mesa/state_tracker/st_texture.c
2010-05-17st/egl: adapt to interface changesRoland Scheidegger
2010-05-08egl_g3d: Check external modules for client APIs first.Chia-I Wu
dlopen api_<API>.so before dlopening the process itself in case the client APIs are implemented in external modules.
2010-05-07glapi: Move to src/mapi/.Chia-I Wu
Move glapi to src/mapi/{glapi,es1api,es2api}.
2010-04-26et/egl: Remove dead code.Vinson Lee
proc_name cannot be NULL after the switch statement. proc_name is assigned a value or the function has already returned.
2010-04-26st_api: Remove st_moduleJakob Bornecrantz
The struct st_module isn't needed as it is the same thing as the st_api struct. That is they both represent the API. Instead just use a single function entry point to the the API.
2010-04-20st/egl: No need to use drm_api argument structJakob Bornecrantz
2010-04-20st/egl: Use correct driver_name field to get kernel driver nameJakob Bornecrantz
2010-04-20st/egl: Check for null destroy callback on api structJakob Bornecrantz
2010-04-19Merge branch '7.8'Dan Nicholson
Conflicts: progs/egl/Makefile progs/egl/Makefile is gone on master with the egl demos split into subdirectories. Will require an additional commit.
2010-04-19egl: Pass flags to locate Xlib headers and librariesDan Nicholson
eglplatform.h pulls in Xlib.h on X11 platforms. Likewise, the egl glx driver and egl programs needs to link to libX11. Make sure we use the locations the user told us about. Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>