summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/dri/dri_screen.h
Commit message (Collapse)AuthorAgeFilesLines
* gallium: add external usage flags to resource_from(get)_handle (v2)Marek Olšák2016-03-091-0/+1
| | | | | | | | | This will allow drivers to make better decisions about texture sharing for DRI2, DRI3, Wayland, and OpenCL. v2: add read/write flags, take advantage of __DRI_IMAGE_USE_BACKBUFFER Reviewed-by: Axel Davy <axel.davy@ens.fr>
* gallium: remove unused function declarationsEmil Velikov2015-11-251-1/+0
| | | | | | | | Unused as of commit 23fb11455b4 "{st,targets}/dri: use static/dynamic pipe-loader" Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
* st/dri: unwrap/remove __NOT_HAVE_DRM_H magicEmil Velikov2015-07-221-12/+0
| | | | | | | | | | | | | | | With the dri_interface.h clean of the macro, we can remove the final only st/dri specific use of the very same. Seemingly it was incorrectly used, as the build-time presence of dri2 is not libdrm specific. At run-time, the code is already limited to dri2 use-cases plus returning true, when the extension is not present (or too old) will likely lead to a crash as one tries to use it shortly after the dri_with_format() call. As a side effect this gives us a nice cleanup the builds. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* gallium: replace INLINE with inlineIlia Mirkin2015-07-211-3/+3
| | | | | | | | | | | | | | | | Generated by running: git grep -l INLINE src/gallium/ | xargs sed -i 's/\bINLINE\b/inline/g' git grep -l INLINE src/mesa/state_tracker/ | xargs sed -i 's/\bINLINE\b/inline/g' git checkout src/gallium/state_trackers/clover/Doxyfile and manual edits to src/gallium/include/pipe/p_compiler.h src/gallium/README.portability to remove mentions of the inline define. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Acked-by: Marek Olšák <marek.olsak@amd.com>
* st/dri: add support for create_context_robustness GLX and EGL extensionsMarek Olšák2015-05-121-0/+1
| | | | Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
* st/dri: implement the fence interface for CL eventsMarek Olšák2015-04-301-0/+9
|
* gallium: pass st_config_options to query_versionsMarek Olšák2014-08-111-0/+2
| | | | | | | So move it from dri_context to dri_screen. This will be needed for version computations. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
* dri: Add a new capabilities for drivers that can't share buffersGiovanni Campagna2014-07-301-0/+1
| | | | | | | | | | | | | | | | | | | The kms-dri swrast driver cannot share buffers using the GEM, so it must tell the loader to disable extensions relying on that, without disabling the image DRI extension altogether (which would prevent the loader from working at all). This requires a new gallium capability (which is queried on the pipe_screen and for swrast drivers it's forwarded to the winsys), and requires a new version of the DRI image extension. [Emil Velikov] - Rebased on top of gallium-dri megadrivers. - Drop PIPE_CAP_BUFFER_SHARE and sw_winsys::get_param hook. The can_share_buffer cap is set at InitScreen. We use a different InitScreen (and thus value for the cap) function for kms_dri, due to deeper differences originating from dri megadrivers. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* gallium: Add a dumb drm/kms winsys backed swrast providerGiovanni Campagna2014-07-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | Add a new winsys and target that can be used with a dri2 state tracker and loader instead of drisw. This allows to use gbm as a dri2/image loader and avoid the extra copy from the backbuffer to the shadow frontbuffer. The new driver is called "kms_swrast", and is loaded by gbm as a fallback, because it is only useful with the gbm platform (as no buffer sharing is possible) To force select the driver set the environment variable GBM_ALWAYS_SOFTWARE [Emil Velikov] - Rebase on top of gallium megadriver. - s/text/test/ in configure.ac (Spotted by Andreas Pokorny). - Add scons support for winsys/sw/kms-dri and fix the build. - Provide separate DriverAPI, due to different InitScreen hook. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* st/dri: merge dri/drm and dri/sw backendsEmil Velikov2014-07-101-0/+157
| | | | | | | | | | | | | | Move the driver_name to dri2/drisw and remove all the SPLIT_TAGETS mayhem. In the next step we'll unify the dri and dri-swrast targets, completing the gallium DRI megadriver. v2: Remove leftover st/dri Makefiles from CONFIG_FILES. Spotted by Thomas Helland. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <thomas.stellard@amd.com>
* st/dri: Move common files to common directoryJakob Bornecrantz2010-03-261-114/+0
| | | | | | | | | | | | | | | | 27 files changed, 15 insertions(+), 15 deletions(-) rename src/gallium/state_trackers/dri/{ => common}/dri1_helper.c (100%) rename src/gallium/state_trackers/dri/{ => common}/dri1_helper.h (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_context.c (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_context.h (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_drawable.c (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_drawable.h (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_extensions.c (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_screen.c (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_screen.h (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_st_api.c (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_st_api.h (100%) rename src/gallium/state_trackers/dri/{ => common}/dri_wrapper.h (100%)
* st/dri: add driswGeorge Sapountzis2010-03-251-0/+12
|
* st/dri: add dri_wrapper.hGeorge Sapountzis2010-03-251-1/+1
|
* st/dri: split out DRI2 codeGeorge Sapountzis2010-03-251-0/+3
|
* st/dri: add inline for dri2 check done in multiple placesGeorge Sapountzis2010-03-251-0/+10
|
* st/dri: Switch from st_public.h to st_api.h.Chia-I Wu2010-03-181-0/+12
| | | | | This is tested with demos found in progs/demos. However, only the DRI2 path is tested.
* st/dri: Move DRI1 bits in dri_screen.c to dri1.c.Chia-I Wu2010-03-181-6/+3
|
* Merge branch 'mesa_7_7_branch'Brian Paul2010-01-221-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/draw/draw_context.c src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c src/gallium/auxiliary/pipebuffer/Makefile src/gallium/auxiliary/pipebuffer/SConscript src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/auxiliary/tgsi/tgsi_scan.c src/gallium/drivers/i915/i915_surface.c src/gallium/drivers/i915/i915_texture.c src/gallium/drivers/llvmpipe/lp_setup.c src/gallium/drivers/llvmpipe/lp_tex_sample_c.c src/gallium/drivers/llvmpipe/lp_texture.c src/gallium/drivers/softpipe/sp_prim_vbuf.c src/gallium/state_trackers/xorg/xorg_dri2.c src/gallium/winsys/drm/intel/gem/intel_drm_api.c src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c src/gallium/winsys/drm/radeon/core/radeon_drm.c src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c src/mesa/state_tracker/st_cb_clear.c
| * st/dri: Don't request a fake front if the server adds one automatically.Thomas Hellstrom2010-01-181-0/+1
| | | | | | | | | | | | | | We use the presence of the getBuffersWithFormat extension function to detect whether the server automatically adds a front. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
* | Remove leftover __DRI{screen,drawable,context}Private referencesKristian Høgsberg2010-01-041-2/+2
|/ | | | | | | | | As part of the DRI driver interface rewrite I merged __DRIscreenPrivate and __DRIscreen, and likewise for __DRIdrawablePrivate and __DRIcontextPrivate. I left typedefs in place though, to avoid renaming all the *Private use internal to the driver. That was probably a mistake, and it turns out a one-line find+sed combo can do the mass rename. Better late than never.
* st/dri: remove unused dummyContext valueKeith Whitwell2009-08-141-6/+0
|
* drm/st: Return drm_api struct from a functionJakob Bornecrantz2009-06-301-0/+1
|
* gallium dri st: Probe the driver for supported surface formats.Thomas Hellstrom2009-06-171-0/+2
| | | | | | | | | | | | This is done when constructing the fbconfigs, and the result is saved for window system framebuffer creation. Note: For dri2 the server needs to have an identical format selection logic. Otherwise the dri state-tracker and the xorg driver (state-tracker) will disagree on which format to use for the attachments. Some more work is needed in this area. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
* gallium: indent and cleanfile the dri state-tracker.Thomas Hellstrom2009-04-281-4/+2
|
* gallium: Update the dri2 state tracker to support dri1.Thomas Hellstrom2009-04-281-8/+4
| | | | Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
* gallium: Move the dri2 state tracker since we're about to extend it to dri1.Thomas Hellstrom2009-04-281-0/+88
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>