summaryrefslogtreecommitdiffstats
path: root/src/gallium/targets
Commit message (Collapse)AuthorAgeFilesLines
...
* mesa: Move register_allocate.c to util.Eric Anholt2014-09-233-7/+0
| | | | | | | | | | | | | The r300 gallium driver is using it outside of the Mesa tree, and I wanted to do so for vc4 as well. Rather than make the multiple-definitions problem even more complicated, just move it to more-shared code. v2: Don't forget to delete the symlink in r300 (review by Matt). Delete more r300-helper references (review by Emil) Don't prefix util/ header inclusion with "util/" (review by Emil) Reviewed-by: Matt Turner <mattst88@gmail.com> (v1) Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (v1)
* freedreno: add DRM_CONF_SHARE_FDRob Clark2014-09-211-1/+24
| | | | | | | | And config query and DRM_CONF_SHARE_FD to both mega-driver and traditional build configs, so that EGL_EXT_image_dma_buf_import works. Signed-off-by: Rob Clark <robclark@freedesktop.org>
* automake: check if the linker supports --dynamic-listJonathan Gray2014-09-052-2/+10
| | | | | | | | | | | | | | As older versions of gnu ld did not support --dynamic-list check to see if it is supported before using it. Non gnu linkers such the apple one likely lack this option as well. Fixes the build on OpenBSD which has binutils 2.15 and 2.17. The --dynamic-list option seems to been have introduced sometime after binutils 2.17 was released as it is present in 2.18. Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
* st/hgl: Move st_visual create/destroy into hgl state_trackerAlexander von Gluck IV2014-08-302-99/+5
|
* st/hgl: Move st_manager create/destroy into hgl state_trackerAlexander von Gluck IV2014-08-301-28/+4
|
* targets/haiku-softpipe: explicitly prefix sw/hgl headerEmil Velikov2014-08-282-2/+2
| | | | | | Cc: Alexander von Gluck IV <kallisti5@unixzen.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* hgl: trivial bitsEmil Velikov2014-08-281-1/+1
| | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* gallium/targets: Break haiku state_tracker out to own directoryAlexander von Gluck IV2014-08-285-263/+10
| | | | Ack'ed by Emil Velikov <emil.l.velikov@gmail.com>
* gallium/targets: Haiku softpipe, perform better framebuffer validationAlexander von Gluck IV2014-08-281-7/+13
| | | | | | | * Check for back left attachment as well * Set and act on pipe format none Ack'ed by Emil Velikov <emil.l.velikov@gmail.com>
* gallium/targets: Haiku, Fix some improper type warningsAlexander von Gluck IV2014-08-222-2/+2
|
* gallium/targets: Clean up Haiku softpipe renderer visualAlexander von Gluck IV2014-08-222-102/+98
| | | | | * Drop creating gl_config first as it's only really used to create the state tracker visual.
* gallium/target: Add needed mesautil lib to haiku-softpipeAlexander von Gluck IV2014-08-191-0/+1
| | | | Acked-by: Brian Paul <brianp@vmware.com>
* android: targets/egl-static: add correct include for DRM headersEmil Velikov2014-08-131-3/+1
| | | | | | | | | | Android build never really installs the headers, as such we need to explicitly add their location in the source tree otherwise it will fail to find them. v2: Android now installs the headers, so let's use that ;) Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* automake: compact gallium/target/Makefile into gallium/MakefileEmil Velikov2014-08-131-71/+0
| | | | | | | | | | Yet another makefile less to worry about. v2: Add state_trackers and targets on a single SUBDIRS line. Requested by Matt. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
* android: egl/main: add/enable freedrenoEmil Velikov2014-08-131-0/+3
| | | | | | | | | | For all everyone willing to give the freedreno driver a go they can now build it under Android. Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> Cc: Rob Clark <robclark@freedesktop.org> Cc: freedreno@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* vc4: Initial skeleton driver import.Eric Anholt2014-08-081-0/+12
| | | | | | | | | | | | | | | | | | | This mostly just takes every draw call and turns it into a sequence of commands that clear the FBO and draw a single shaded triangle to it, regardless of the actual input vertices or shaders. I copied the initial driver skeleton mostly from freedreno, and I've preserved Rob Clark's copyright for those. I also based my initial hardcoded shaders and command lists on Scott Mansell (phire)'s "hackdriver" project, though the bit patterns of the shaders emitted end up being different. v2: Rebase on gallium megadrivers changes. v3: Rebase on PIPE_SHADER_CAP_MAX_CONSTS change. v4: Rely on simpenrose actually being installed when building for simulation. v5: Add more header duplicate-include guards. v6: Apply Emil's review (protection against vc4 sim and ilo at the same time, and dropping the dricommon drm bits) and fix a copyright header (thanks, Roland)
* libgl-xlib: drop duplicate mesautil from scons buildEmil Velikov2014-08-051-1/+0
| | | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* targets/omx: automake: link against libmesautil.laEmil Velikov2014-08-051-0/+1
| | | | | | | Or the build will fail due to unresolved symbols. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* targets/xvmc: automake: link against libmesautil.laEmil Velikov2014-08-051-0/+1
| | | | | | | Or the build will fail due to unresolved symbols. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* targets/clover: link against libmesautil.laJan Vesely2014-08-051-0/+1
| | | | | Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-and-Tested-by: Michel Dänzer <michel.daenzer@amd.com>
* targets/dri: link with mesautilRoland Scheidegger2014-08-051-0/+1
| | | | | | Similar to other recent build fixes. Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/graw-gdi: link with mesautil, not mesautilsBrian Paul2014-08-041-1/+1
| | | | Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* targets/libgl-gdi: link with mesautilBrian Paul2014-08-041-0/+3
| | | | Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* targets/egl-static: link with libmesautil.laBrian Paul2014-08-041-0/+1
| | | | Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* targets/vdpau: link with libmesautil.la to fix build breakageBrian Paul2014-08-041-0/+1
| | | | Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
* gallium: Add libmesautil dependency to gdm and xa targetsJason Ekstrand2014-08-042-0/+2
| | | | | Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Brian Paul <brianp@vmware.com>
* gallium: Move sRGB <-> RGB handling to libmesautilJason Ekstrand2014-08-044-2/+4
| | | | | Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* util: Gather some common macrosJason Ekstrand2014-08-042-0/+2
| | | | | | | | | | This gathers macros that have been included across components into util so that the include chain can be more vertical. In particular, this makes util stand on its own without any dependence whatsoever on the rest of mesa. Signed-off-by: "Jason Ekstrand" <jason.ekstrand@intel.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* util: Move ralloc to a new src/util directory.Kenneth Graunke2014-08-041-0/+1
| | | | | | | | | | | | | | | | | | For a long time, we've wanted a place to put utility code which isn't directly tied to Mesa or Gallium internals. This patch creates a new src/util directory for exactly that purpose, and builds the contents as libmesautil.la. ralloc seemed like a good first candidate. These days, it's directly used by mesa/main, i965, i915, and r300g, so keeping it in src/glsl didn't make much sense. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> v2 (Jason Ekstrand): More realloc uses and some scons fixes Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* targets/dri: resolve the scons buildEmil Velikov2014-08-041-0/+1
| | | | | | | | | | | With earlier commit we've conditionally enabled/added the kms_dri target for automake builds. Unfortunately the we forgot to add the appropriate define in the scons build, resulting in a broken library due to the undefined symbol 'kms_swrast_create_screen'. Reported-by: Roland Scheidegger <sroland@vmware.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Roland Scheidegger <sroland@vmware.com>
* Remove XA state tracker support for RadeonMarek Olšák2014-08-031-32/+0
| | | | | | | We don't support this type of X acceleration and we never did. Other drivers might want to do the same thing. Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
* target-helpers: Do not build kms_dri on libdrm-less platforms.Jon TURNEY2014-08-011-0/+1
| | | | | | | | Fix build since 3b176c441b7ddc5f7d2f891da3f76cf3c1814ce1 for dri_platform=none hosts. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
* gallium: Add a dumb drm/kms winsys backed swrast providerGiovanni Campagna2014-07-302-0/+10
| | | | | | | | | | | | | | | | | | | | | | 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>
* targets/dri: fix freedreno targetsRob Clark2014-07-231-1/+1
| | | | | | | The kernel driver name is either "kgsl" (downstream/android) or "msm" (upstream). Signed-off-by: Rob Clark <robclark@freedesktop.org>
* targets/dri-swrast: Convert to static/shared pipe-driverEmil Velikov2014-07-107-187/+35
| | | | | | | | | | | | | Convert the final dri target to the single DRI (megadriver) library. Cleanup all the automake leftovers from the conversion stage and update the scons build. v2: Link in llvmpipe, when applicable. 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: merge dri/drm and dri/sw backendsEmil Velikov2014-07-104-7/+6
| | | | | | | | | | | | | | 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>
* targets/dri-swrast: convert to gallium megadrivers :)Emil Velikov2014-07-103-0/+19
| | | | | | | | | | | | | | Export the approapriate new symbol, and keep backwards compat via the megadriver_stub helper library. Our next step would be to unify dri/drm and dri/sw, leading to a complete megadrivers solution, and having a single library that provides dri across all targets. 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>
* scons: build and use a single dri_common libraryEmil Velikov2014-07-102-3/+3
| | | | | | | | | | Rather than building two identical ones for dri-vmwgfx and dri-swrast build a single library, and drop some duplication in the build. 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/drm: remove __driDriverExtensions and driDriverAPIEmil Velikov2014-07-102-0/+2
| | | | | | | | | | | | ... and use libmegadriver_stub as their provider. Teach scons how to build the library archive and use it. v2: scons: fix build on a drm-less system. 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>
* targets/dri: cleanup conversion leftoversEmil Velikov2014-07-101-30/+1
| | | | | | | | | | With all the users converted to __driGetExtensions_* we can have only a single inclusion of the required header + define. 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>
* targets/dri: update scons build to handle __driDriverGetExtensions_vmwgfxEmil Velikov2014-07-101-0/+5
| | | | | | | | | | Cc: Jose Fonseca <jfonseca@vmware.com> Cc: Brian Paul <brianp@vmware.com> Cc: Jakob Bornecrantz <jakob@vmware.com> 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>
* targets/dri: Add __driDriverGetExtensions_vmwgfxEmil Velikov2014-07-101-0/+5
| | | | | | | | | | | | Identical to previous commits - will bring us a step closer to megadrivers. Cc: Jose Fonseca <jfonseca@vmware.com> Cc: Brian Paul <brianp@vmware.com> 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>
* targets/dri: Add __driDriverGetExtensions_i965 symbolEmil Velikov2014-07-101-0/+5
| | | | | | | | | | | Identical to previous commits - will bring us a step closer to megadrivers. Cc: Chia-I Wu <olv@lunarg.com> 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>
* targets/dri: Add __driDriverGetExtensions_i915 symbolEmil Velikov2014-07-101-0/+5
| | | | | | | | | | | Identical to previous commits - will bring us a step closer to megadrivers. Cc: Stephane Marchesin <stephane.marchesin@gmail.com> 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>
* targets/dri: Add __driDriverGetExtensions_freedreno symbolEmil Velikov2014-07-101-0/+5
| | | | | | | | | | | Identical to previous two commits - will bring us a step closer to megadrivers. Cc: Rob Clark <robclark@freedesktop.org> 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>
* targets/dri: Add __driDriverGetExtensions_(r300|r600|radeonsi) symbolsEmil Velikov2014-07-101-0/+5
| | | | | | | | | | | | The symbol is introduced by the mesa megadrivers, and adding gallium support for it will allow us to merge st/dri/drm and st/dri/sw. Resulting in a single dri library across all of gallium. 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>
* targets/dri: Add __driDriverGetExtensions_nouveau symbolEmil Velikov2014-07-102-0/+10
| | | | | | | | | | | | | The symbol is introduced by the mesa megadrivers, and adding gallium support for it will allow us to merge st/dri/drm and st/dri/sw. Resulting in a single dri library across gallium. v2: Rebase on top of gallium dri3. 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>
* targets/dri: allow duplicated symbolsEmil Velikov2014-07-021-0/+6
| | | | | | | | | | | With the inclusion of xmlconfig in the loader we're providing dri* symbols which are already available in libdricommon.la. This leads to a build break due to the multiple definitions. Temporary allow multiple definitions, until we come with a better solution. Reported-by: Laurent Carlier <lordheavym@gmail.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* st/dri: Remove the old libdridrm libraryEmil Velikov2014-07-021-1/+1
| | | | | | | | | | With all the hw drivers converted, we can go back to having a single libdridrm provider. 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>
* targets/dri-vmwgfx: Convert to static/shared pipe-driversEmil Velikov2014-07-026-126/+16
| | | | | | | | | | | | | | | Convert the final hardware driver to a single dri provider which includes all the pipe-drivers. Update the scons build and drop the unused vmw_powf.c. Cc: José Fonseca <jfonseca@vmware.com> Cc: Brian Paul <brianp@vmware.com> Cc: Jakob Bornecrantz <jakob@vmware.com> 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>