Mesa (master): radv: add initial non-conformant radv vulkan driver
Dave Airlie
airlied at kemper.freedesktop.org
Thu Oct 6 23:17:20 UTC 2016
Module: Mesa
Branch: master
Commit: f4e499ec79147f4172f3669ae9dafd941aaeeb65
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f4e499ec79147f4172f3669ae9dafd941aaeeb65
Author: Dave Airlie <airlied at redhat.com>
Date: Fri Oct 7 09:16:09 2016 +1000
radv: add initial non-conformant radv vulkan driver
This squashes all the radv development up until now into
one for merging.
History can be found:
https://github.com/airlied/mesa/tree/semi-interesting
This requires llvm 3.9 and is in no way considered
a conformant vulkan implementation. It can run a number
of vulkan applications, and supports all GPUs using
the amdgpu kernel driver.
Thanks to Intel for providing anv and spirv->nir,
and Emil Velikov for reviewing build integration.
Parts of this are:
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
Acked-by: Edward O'Callaghan <funfunctor at folklore1984.net>
Authors: Bas Nieuwenhuizen and Dave Airlie
Signed-off-by: Dave Airlie <airlied at redhat.com>
---
configure.ac | 33 +-
src/Makefile.am | 8 +-
src/amd/common/Makefile.am | 51 +
src/amd/common/Makefile.sources | 29 +
src/amd/common/ac_binary.c | 288 ++
src/amd/common/ac_binary.h | 88 +
src/amd/common/ac_llvm_helper.cpp | 46 +
src/amd/common/ac_llvm_util.c | 142 +
src/amd/common/ac_llvm_util.h | 31 +
src/amd/common/ac_nir_to_llvm.c | 4547 ++++++++++++++++++++
src/amd/common/ac_nir_to_llvm.h | 102 +
src/amd/vulkan/.gitignore | 6 +
src/amd/vulkan/Makefile.am | 165 +
src/amd/vulkan/Makefile.sources | 67 +
src/amd/vulkan/dev_icd.json.in | 7 +
src/amd/vulkan/radeon_icd.json | 7 +
src/amd/vulkan/radv_cmd_buffer.c | 2413 +++++++++++
src/amd/vulkan/radv_cs.h | 117 +
src/amd/vulkan/radv_descriptor_set.c | 716 +++
src/amd/vulkan/radv_descriptor_set.h | 81 +
src/amd/vulkan/radv_device.c | 1782 ++++++++
src/amd/vulkan/radv_device_info.h | 32 +
src/amd/vulkan/radv_entrypoints_gen.py | 351 ++
src/amd/vulkan/radv_formats.c | 1085 +++++
src/amd/vulkan/radv_image.c | 1030 +++++
src/amd/vulkan/radv_meta.c | 388 ++
src/amd/vulkan/radv_meta.h | 190 +
src/amd/vulkan/radv_meta_blit.c | 1270 ++++++
src/amd/vulkan/radv_meta_blit2d.c | 1282 ++++++
src/amd/vulkan/radv_meta_buffer.c | 543 +++
src/amd/vulkan/radv_meta_bufimage.c | 396 ++
src/amd/vulkan/radv_meta_clear.c | 1192 +++++
src/amd/vulkan/radv_meta_copy.c | 399 ++
src/amd/vulkan/radv_meta_decompress.c | 463 ++
src/amd/vulkan/radv_meta_fast_clear.c | 536 +++
src/amd/vulkan/radv_meta_resolve.c | 670 +++
src/amd/vulkan/radv_meta_resolve_cs.c | 461 ++
src/amd/vulkan/radv_pass.c | 183 +
src/amd/vulkan/radv_pipeline.c | 1408 ++++++
src/amd/vulkan/radv_pipeline_cache.c | 475 ++
src/amd/vulkan/radv_private.h | 1402 ++++++
src/amd/vulkan/radv_query.c | 415 ++
src/amd/vulkan/radv_radeon_winsys.h | 336 ++
src/amd/vulkan/radv_util.c | 204 +
src/amd/vulkan/radv_util.h | 9 +
src/amd/vulkan/radv_wsi.c | 246 ++
src/amd/vulkan/radv_wsi.h | 79 +
src/amd/vulkan/radv_wsi_wayland.c | 880 ++++
src/amd/vulkan/radv_wsi_x11.c | 963 +++++
src/amd/vulkan/si_cmd_buffer.c | 1119 +++++
src/amd/vulkan/vk_format.h | 449 ++
src/amd/vulkan/vk_format_layout.csv | 188 +
src/amd/vulkan/vk_format_parse.py | 384 ++
src/amd/vulkan/vk_format_table.py | 173 +
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c | 297 ++
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.h | 50 +
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c | 778 ++++
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.h | 51 +
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_surface.c | 523 +++
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_surface.h | 29 +
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c | 359 ++
src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h | 57 +
.../winsys/amdgpu/radv_amdgpu_winsys_public.h | 30 +
63 files changed, 32093 insertions(+), 8 deletions(-)
Diff: http://cgit.freedesktop.org/mesa/mesa/diff/?id=f4e499ec79147f4172f3669ae9dafd941aaeeb65
More information about the mesa-commit
mailing list