summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/egl
AgeCommit message (Collapse)Author
2009-12-17Merge branch 'master' into pipe-format-simplifyMichal Krol
Conflicts: src/gallium/auxiliary/draw/draw_pipe_aaline.c src/gallium/auxiliary/draw/draw_pipe_pstipple.c src/gallium/auxiliary/util/u_blit.c src/gallium/auxiliary/util/u_gen_mipmap.c src/gallium/auxiliary/util/u_surface.c src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c src/gallium/drivers/cell/ppu/cell_texture.c src/gallium/drivers/llvmpipe/lp_texture.c src/gallium/drivers/r300/r300_emit.c src/gallium/drivers/r300/r300_texture.c src/gallium/drivers/softpipe/sp_texture.c src/gallium/drivers/softpipe/sp_tile_cache.c src/gallium/drivers/svga/svga_state_vs.c src/gallium/include/pipe/p_format.h src/gallium/state_trackers/dri/dri_drawable.c src/gallium/state_trackers/egl/egl_surface.c src/gallium/state_trackers/python/p_device.i src/gallium/state_trackers/python/st_softpipe_winsys.c src/gallium/state_trackers/vega/api_filters.c src/gallium/state_trackers/vega/image.c src/gallium/state_trackers/vega/mask.c src/gallium/state_trackers/vega/paint.c src/gallium/state_trackers/vega/renderer.c src/gallium/state_trackers/vega/vg_tracker.c src/gallium/state_trackers/xorg/xorg_crtc.c src/gallium/state_trackers/xorg/xorg_dri2.c src/gallium/state_trackers/xorg/xorg_exa.c src/gallium/state_trackers/xorg/xorg_renderer.c src/gallium/state_trackers/xorg/xorg_xv.c src/gallium/state_trackers/xorg/xvmc/surface.c src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c src/gallium/winsys/drm/radeon/core/radeon_buffer.c src/gallium/winsys/egl_xlib/sw_winsys.c src/gallium/winsys/g3dvl/xlib/xsp_winsys.c src/gallium/winsys/gdi/gdi_llvmpipe_winsys.c src/gallium/winsys/gdi/gdi_softpipe_winsys.c src/gallium/winsys/xlib/xlib_cell.c src/gallium/winsys/xlib/xlib_llvmpipe.c src/gallium/winsys/xlib/xlib_softpipe.c src/mesa/state_tracker/st_cb_fbo.c src/mesa/state_tracker/st_cb_texture.c src/mesa/state_tracker/st_texture.c
2009-12-03Move pf_get_block() to u_format auxiliary module.Michal Krol
2009-11-30fixups for interface changes (mostly state trackers)Roland Scheidegger
2009-11-27Merge branch 'width0'Roland Scheidegger
Conflicts: src/gallium/drivers/r300/r300_texture.c src/gallium/state_trackers/xorg/xorg_exa.c src/mesa/state_tracker/st_cb_texture.c
2009-11-26gallium: fix more statetrackers/drivers for not using texture ↵Roland Scheidegger
width/height/depth arrays
2009-11-20st/egl: Fix memory leak in egl_tracker.c.Vinson Lee
2009-11-15st/egl: add some basic commentsBrian Paul
2009-11-10st/egl: Probe hardware for depth stencil formatJakob Bornecrantz
2009-10-23mesa: Enable remap table in core.Chia-I Wu
This enables the remap table in core. driInitExtensions is adapted to use the remap table. All uses of extension_helper.h are replaced by remap_helper.h. The chicken-egg problem of the DRI drivers is also solved. It is now also possible to pass NULL extensions to driInitExtensions. It will cause driInitExtensions to map all known functions. This functionality is used by software drivers and EGL_i915. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-17gallium: Permit surface_copy and surface_fill to be NULL.Corbin Simpson
Uf. Lots of files touched. Would people with working vega, xorg, dri1, etc. please make sure you are not broken, and fix yourself up if you are. There were only two or three places where the code did not have painful fallbacks, so I would advise st maintainers to find less painful workarounds, or consider overhauling util_surface_copy and util_surface_fill. Per ymanton, darktama, and Dr_Jakob's suggestions, clear has been left as-is. I will not add PIPE_CAP_BLITTER unless it is deemed necessary.
2009-09-30st/egl: Fix a double free in drm_destroy_context.Chia-I Wu
st_destroy_context has destroyed the pipe context for us. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-09-30st/egl: Fix a crash when unbinding current context.Chia-I Wu
This fixes a NULL-pointer dereference when eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT) is called. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-09-27st/egl: Remove buffer from screenJakob Bornecrantz
It is no longer needed since the new drm api code, and it incorrectly checked if the buffer where there for testing completeness when it should have checked the texture instead.
2009-08-28drm_api: Operate on textures instead of buffersJakob Bornecrantz
Most use cases just got the buffer from the texture and then called into one of the get_handle functions. Also with this patch it would be easier to move to a generic function for getting handles from textures and textures from handles, that is exposed via the screen.
2009-08-26EGL_i915: Make struct drm_device per display.Chia-I Wu
This is to allow a driver to drive multiple displays. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-21st/egl: Add support for drmModeDirtyFB command if foundJakob Bornecrantz
2009-08-20st/egl: Open the first drm nodeJakob Bornecrantz
At least its better then hardcoded to i915
2009-08-18egl: Create the front texture the properlyJakob Bornecrantz
2009-08-18egl: Some per-driver data should be per-display.Chia-I Wu
Move some fields of _EGLDriver to _EGLDisplay. It also becomes unnecessary to pass _EGLDisplay to drivers when _eglMain is called. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-18egl: Overhaul driver API.Chia-I Wu
The motivation is so that drivers do not need to look up and check for bad display, context, and etc. It also becomes unnecessary for drivers to call the link functions. This commit makes eglapi.[ch] do the lookup and check. As a result, the driver API is overhauled, and almost all sources and drivers need update. The updates are mainly find and replace with human brains. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-05st/egl: Create primary texture not display targetJakob Bornecrantz
2009-08-03egl: Replace IsBound by a pointer to the binding.Chia-I Wu
IsBound tells if a context or surface is current. What it does not tell is, to which thread a context is current, or to which context a surface is current. This commit replaces IsBound by a pointer to the binding thread or context. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-18st/egl: Fix broken build after EGL thread changesAndrew Randrianasulu
2009-07-17egl: Remove redundant DeletePending flag.Chia-I Wu
A context or surface that is neither linked to a display nor current to a thread should be destroyed. Therefore, an unlinked context or surface implies a pending delete automatically. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-17egl: Use the link functions to manage resources.Chia-I Wu
This commit uses the newly introduced link functions to manage EGL contexts and surfaces. As a result of this, the API for drivers are changed. All drivers are updated for the change. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-06-30drm/st: Return drm_api struct from a functionJakob Bornecrantz
2009-05-15st/egl: Use proper MakefileJakob Bornecrantz
2009-04-28gallium: Update the drm_api.Thomas Hellstrom
Make it possible to pass state-tracker-specific data to the init_screen function, and even open the door for device-specific state-tracker screen initialization. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-03-26gallium: Remove some little-used fields from struct pipe_surface.Michel Dänzer
2009-03-25st/egl: Set dpms to on when showing screensJakob Bornecrantz
There is a wonderful bug in 2.6.29 that causes a hard lock on my computer when this code is active for lvds that are turned off.
2009-03-25st/egl: Fix warningJakob Bornecrantz
2009-03-13gallium: Remove do_flip argument from surface_copyJakob Bornecrantz
I should have gotten most uses and implementation correctly fixed, but things might break. Feel free to blame me.
2009-03-04gallium: Unify reference counting.Michel Dänzer
The core reference counting code is centralized in p_refcnt.h. This has some consequences related to struct pipe_buffer: * The screen member of struct pipe_buffer must be initialized, or pipe_buffer_reference() will crash trying to destroy a buffer with reference count 0. u_simple_screen takes care of this, but I may have missed some of the drivers not using it. * Except for rare exceptions deep in winsys code, buffers must always be allocated via pipe_buffer_create() or via screen->*buffer_create() rather than via winsys->*buffer_create().
2009-03-03st/drm: s/hocks/hooks/Jakob Bornecrantz
2009-02-27egl: Fix for minor api changeJakob Bornecrantz
2009-02-25egl: remove compiler flags from CFLAGSBrian Paul
The incoming CFLAGS already has -fPIC and -Wall. Don't want -g here either.
2009-02-25egl: add comment/reminder to fix the CFLAGS in this MakefileBrian Paul
2009-02-25gallium: Fix build when exiting CFLAGS contains a path with different gl.hBenjamin Close
If a path is in CFLAGS when building and that path contains gl.h then the wrong gl.h is used when building. This can lead to very confusing errors. The solution is rather than postpend the CFLAGS we prepend the paths as expected allowing compilation to occur as intended Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-02-12egl: Doesn't depend on xorg or pixmanJakob Bornecrantz
2009-02-13galium: Makefile fixes: -Werror=implicit-function-declaration -> ↵Benjamin Close
-Werror-implicit-function-declaration Found-By: Tinderbox
2009-02-11egl: Use only libdrm structs for kmsJakob Bornecrantz
2009-02-11Add external pixman CFLAGS after all internal include pathsDan Nicholson
With the pixman CFLAGS at the beginning of the command line, my build was picking up the glcore.h from glproto, which doesn't have any of the TFP fields in __GLcontextmodes. Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-01-30gallium: make p_winsys internalZack Rusin
move it to pipe/internal/p_winsys_screen.h and start converting the state trackers to the screen usage
2009-01-30egl: Don't fill shown screenJakob Bornecrantz
2009-01-29egl: Blit to the bound frontbuffer with pipeJakob Bornecrantz
2009-01-28egl: Adopt to st_framebuffer changesJakob Bornecrantz
2009-01-19egl: Fix swap and creation of front bufferJakob Bornecrantz
2009-01-18egl: Add a egl state_tracker that use GalliumJakob Bornecrantz
This works on top Gallium and KMS. The only thing that does not work currently is swap buffers for shown mesa screens. So the only fun thing this will produce is a white screen. The driver wishing to us the state_tracker needs to implement the intrace as define in drm_api.h located in gallium/include/state_tracker. And also have a working KMS implementation.