summaryrefslogtreecommitdiffstats
path: root/src/egl
Commit message (Collapse)AuthorAgeFilesLines
* egl: add null platformChia-I Wu2011-09-203-0/+8
| | | | | | | The null platform has no window or pixmap surface (but pbuffer surface). And the only valid display is EGL_DEFAULT_DISPLAY. It is useful for offscreen rendering. It works everywhere becase no window system is required.
* egl_glx.c: use unsigned instead of uintMatt Turner2011-09-191-3/+3
| | | | | | | We've had a hack to fix this in Gentoo on Solaris for a while. Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* wayland: Flush before blocking in swapbuffers.Jørgen Lind2011-09-151-2/+5
| | | | Make sure that we've sent the frame request that we're going to block on.
* egl_dri2: add support for RGBA_8888 android native bufferChia-I Wu2011-09-091-0/+2
| | | | HAL_PIXEL_FORMAT_RGBA_8888 maps to __DRI_IMAGE_FORMAT_ABGR8888.
* Define INLINE macro in terms of inline.José Fonseca2011-09-081-19/+22
|
* wayland: Use wl_resource_* error functionsKristian Høgsberg2011-09-011-10/+10
|
* egl_dri2: Destroy callback in release_pending_bufferBenjamin Franzke2011-09-011-0/+2
|
* wayland-drm: Fix compilation with wayland masterBenjamin Franzke2011-09-011-9/+9
| | | | c661ecce introduced some not-yet-upstream stuff.
* wayland: Track changes to drop wl_visualKristian Høgsberg2011-08-318-39/+108
|
* egl_dri2: Only clear EGL_PIXMAP_BIT if DRI config is double bufferedKristian Høgsberg2011-08-311-2/+4
| | | | | | | We don't want to set the pixmap bit in the EGL config if the DRI config we're adding is a double buffered config. However, don't clear any other bits the platform might pass in in the surface_type argument.
* wayland: Track server side wayland changesKristian Høgsberg2011-08-312-35/+37
|
* wayland: Use new wl_callback mechanismKristian Høgsberg2011-08-311-31/+24
|
* egl_dri2: Drop dri2_surface_type enumBenjamin Franzke2011-08-312-18/+9
| | | | | Was only used in platform_wayland, and the remaining egl stack uses _EGLSurface::Type with one of EGL_{WINDOW,PIXMAP,PBUFFER}_BIT.
* egl_dri2: add pbuffer support to platform_androidChia-I Wu2011-08-311-5/+16
| | | | | | This is a simple change thanks to allocateBuffer. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: check the surface type in platform_androidChia-I Wu2011-08-311-45/+56
| | | | | | | Check the surface type is EGL_WINDOW_BIT before doing anything, in preparation for pbuffer support. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: refactor droid_get_buffers_with_formatChia-I Wu2011-08-311-27/+39
| | | | | | Move the loop to parse attachments to its own function. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: set ctx->WindowRenderBufferChia-I Wu2011-08-311-0/+6
| | | | | | | | | Set ctx->WindowRenderBuffer to EGL_BACK_BUFFER. As EGL_WINDOW_BIT of a config is set only when there is dri_double_buffer, that makes sure window surfaces are always double-buffered and contexts will render to the back buffer. Reviewed-by: Chad Versace <[email protected]>
* egl: Use gbm/wayland flags regardless of egl_dri2Benjamin Franzke2011-08-291-10/+10
| | | | | | Since they are needed for display autodetection. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=40443
* android: add support for egl_dri2Chia-I Wu2011-08-282-0/+53
| | | | | | | Add rules to build egl_dri2 and make it a built-in EGL driver of libGLES_mesa. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: add support for AndroidChia-I Wu2011-08-283-0/+749
| | | | | | | | | | | | | | | | | | | | | | Add platform_android.c that supports _EGL_PLAFORM_ANDROID. It works with drm_gralloc, where back buffers of windows are backed by GEM objects. In Android a native window has a queue of back buffers allocated by the server, through drm_gralloc. For each frame, EGL needs to dequeue the next back buffer render to the buffer enqueue the buffer After enqueuing, the buffer is no longer valid to EGL. A window has no depth buffer or other aux buffers. They need to be allocated locally by EGL. Reviewed-by: Benjamin Franzke <[email protected]> Reviewed-by: Chad Versace <[email protected]> [olv: with assorted minor changes, mostly suggested during the review]
* egl_dri2: allow RGBA masks to be specified for matchingChia-I Wu2011-08-285-5/+27
| | | | | | | | Add rgba_masks to dri2_add_config. When it is non-NULL, the DRI config is accepted only when the offsets and sizes of the its channels match rgba_mask. Reviewed-by: Chad Versace <[email protected]>
* android: build core EGLChia-I Wu2011-08-211-0/+64
| | | | | | This builds the static library libmesa_egl from core EGL. Reviewed-by: Chad Versace <[email protected]>
* egl: add Android-specific extensionsChia-I Wu2011-08-214-0/+39
| | | | | | | | Add EGL_ANDROID_image_native_buffer and EGL_ANDROID_swap_rectangle. There is no spec for them though. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: add _EGL_PLATFORM_ANDROIDChia-I Wu2011-08-212-1/+3
| | | | | | | This is Android Gingerbread platform. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: Add include paths for platform autodetectionBenjamin Franzke2011-08-161-0/+2
| | | | | | Needed since commit 85fe9484. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=40145
* dri2: Add __DRI_BUFFER_COUNT tokenBenjamin Franzke2011-08-161-2/+0
| | | | | | | Remove definition from egl_dri2. Defining this is egl_dri2.h breaks as soon as a new dri2 buffer token is added like with commit 4501a5d6e8d00fd0d87625352ed5ba1a8861f72e.
* egl: Log (debug) native platform typeBenjamin Franzke2011-08-151-12/+25
| | | | Reviewed-by: Kristian Høgsberg <[email protected]>
* egl: Native Display autodetectionBenjamin Franzke2011-08-154-8/+115
| | | | | | | | | | | | | | | | | | | | | | | | EGL doesnt define howto manage different native platforms. So mesa has a builtime configurable default platform, whith non-standard envvar (EGL_PLATFORM) overwrites. This caused unneeded bugreports, when EGL_PLATFORM was forgotten. Detection is grouped into basic types of NativeDisplays (which itself needs to be detected). The final decision is based on characteristcs of these basic types: File Desciptor based platforms (fbdev): - fstat(2) to check for being a fd that belongs to a character device - check kernel subsystem (todo) Pointer to structuctures (x11, wayland, drm/gbm): - mincore(2) to check whether its valid pointer to some memory. - magic elements (e.g. pointers to exported symbols): o wayland display stores interface type pointer (first elm.) o gbm stores pointer to its constructor (first elm.) o x11 as a fallback (FIXME?) Reviewed-by: Kristian Høgsberg <[email protected]>
* Destroy context in dri2/glx driver when apps call eglDestroyContextCooper Yuan2011-08-142-2/+38
|
* egl/gbm: Fix EGL_DEFAULT_DISPLAYBenjamin Franzke2011-08-043-2/+31
|
* egl: EGL_MATCH_NATIVE_NATIVE_PIXMAP cannot be EGL_DONT_CAREChia-I Wu2011-07-291-2/+3
|
* egl: make pixmaps and pbuffers EGL_BUFFER_PRESERVEDChia-I Wu2011-07-291-1/+3
| | | | eglSwapBuffers is no-op to these surface types anyway.
* wayland-drm: Add copyright notice to protocolBenjamin Franzke2011-07-271-0/+27
| | | | Fixes build since wayland 986703ac7365bc87a5501714adb9fc73157c62b7.
* Rename swrastg_dri to swrast_driMarek Olšák2011-07-141-5/+0
| | | | | I prefer it this way and it has been suggested earlier by others too. Opinions?
* Fixes for leaks reported by cppcheck.Völgyes Dávid2011-07-063-2/+8
|
* egl_dri2: Fix compilation if udev devel files are not installedBenjamin Franzke2011-07-021-0/+4
| | | | NOTE: This is a candidate for the 7.11 branch.
* egl: add copyright noticesChia-I Wu2011-07-0238-49/+1054
| | | | | The list of copyright holders could be incomplete. Please update directly or notify me if your name is missing.
* egl: fix a compiler warningChia-I Wu2011-07-011-0/+1
|
* egl: Fix Terminate with shared gbm screensBenjamin Franzke2011-06-272-2/+7
| | | | NOTE: This is a candidate for the 7.11 branch.
* egl: fix EGL_MATCH_NATIVE_PIXMAPChia-I Wu2011-06-251-2/+10
| | | | | EGL_MATCH_NATIVE_PIXMAP is valid for eglChooseConfig, but invalid for eglGetConfigAttrib.
* egl: make implementing eglChooseConfig easierChia-I Wu2011-06-252-27/+57
| | | | | Add a new helper function, _eglFilterConfigArray, for drivers and hide _eglSortConfigs.
* egl_dri2: Build drm platform only if enabledBenjamin Franzke2011-06-242-1/+8
|
* egl_dri2: Hookup gbm as drm platformBenjamin Franzke2011-06-235-61/+131
|
* egl_dri2/wayland: Hook up new buffer.release eventBenjamin Franzke2011-06-213-18/+129
|
* wayland: Pass use_invalidate extension to driverKristian Høgsberg2011-06-202-2/+3
|
* egl_dri2/x11: Check availability of the dri2 extensionBenjamin Franzke2011-06-201-0/+9
| | | | | Do this before query versions, or xcb will shutdown and the connection can not be used for swrast.
* wayland-drm: remove depend on "make clean"Chia-I Wu2011-06-131-0/+1
|
* egl_dri2: try swrastg_dri if swrast_dri failsChia-I Wu2011-06-131-0/+6
| | | | Per libGL.
* egl_dri2: add dri2_load_driver_swrastChia-I Wu2011-06-133-19/+44
| | | | | Refactor dri2_load_driver and add dri2_load_driver_swrast for loading swrast DRI driver.
* egl_dri2: Compare configs before matching themBenjamin Franzke2011-06-121-1/+13
| | | | | This compares attribs like buffer size, and will prevent merging unequal configs because of match criterion is e.g. ATLEAST.