Module: Mesa
Branch: master
Commit: 0977b7f7b3b6356500889f5a15348e0a3180e683
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0977b7f7b3b6356500889f5a15348e0a3180e683

Author: Marek Olšák <[email protected]>
Date:   Fri Feb  2 18:22:15 2018 +0100

ac: query high bits of 32-bit address space

---

 configure.ac                 | 2 +-
 meson.build                  | 2 +-
 src/amd/common/ac_gpu_info.c | 7 +++++++
 src/amd/common/ac_gpu_info.h | 1 +
 4 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 8ed606c769..994052d5c4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -74,7 +74,7 @@ AC_SUBST([OPENCL_VERSION])
 # in the first entry.
 LIBDRM_REQUIRED=2.4.75
 LIBDRM_RADEON_REQUIRED=2.4.71
-LIBDRM_AMDGPU_REQUIRED=2.4.89
+LIBDRM_AMDGPU_REQUIRED=2.4.90
 LIBDRM_INTEL_REQUIRED=2.4.75
 LIBDRM_NVVIEUX_REQUIRED=2.4.66
 LIBDRM_NOUVEAU_REQUIRED=2.4.66
diff --git a/meson.build b/meson.build
index a3d1b3d670..6fc7ec7fc9 100644
--- a/meson.build
+++ b/meson.build
@@ -980,7 +980,7 @@ dep_libdrm_nouveau = []
 dep_libdrm_etnaviv = []
 dep_libdrm_freedreno = []
 if with_amd_vk or with_gallium_radeonsi
-  dep_libdrm_amdgpu = dependency('libdrm_amdgpu', version : '>= 2.4.89')
+  dep_libdrm_amdgpu = dependency('libdrm_amdgpu', version : '>= 2.4.90')
 endif
 if (with_gallium_radeonsi or with_dri_r100 or with_dri_r200 or
     with_gallium_r300 or with_gallium_r600)
diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c
index 6d9dcb5c56..b5b059e120 100644
--- a/src/amd/common/ac_gpu_info.c
+++ b/src/amd/common/ac_gpu_info.c
@@ -226,6 +226,12 @@ bool ac_query_gpu_info(int fd, amdgpu_device_handle dev,
                return false;
        }
 
+       r = amdgpu_query_sw_info(dev, amdgpu_sw_info_address32_hi, 
&info->address32_hi);
+       if (r) {
+               fprintf(stderr, "amdgpu: amdgpu_query_sw_info(address32_hi) 
failed.\n");
+               return false;
+       }
+
        /* Set chip identification. */
        info->pci_id = amdinfo->asic_id; /* TODO: is this correct? */
        info->vce_harvest_config = amdinfo->vce_harvest_config;
@@ -371,6 +377,7 @@ void ac_print_gpu_info(struct radeon_info *info)
        printf("max_alloc_size = %i MB\n",
               (int)DIV_ROUND_UP(info->max_alloc_size, 1024*1024));
        printf("min_alloc_size = %u\n", info->min_alloc_size);
+       printf("address32_hi = %u\n", info->address32_hi);
        printf("has_dedicated_vram = %u\n", info->has_dedicated_vram);
        printf("has_virtual_memory = %i\n", info->has_virtual_memory);
        printf("gfx_ib_pad_with_type2 = %i\n", info->gfx_ib_pad_with_type2);
diff --git a/src/amd/common/ac_gpu_info.h b/src/amd/common/ac_gpu_info.h
index cca3e98d36..ae42aff601 100644
--- a/src/amd/common/ac_gpu_info.h
+++ b/src/amd/common/ac_gpu_info.h
@@ -57,6 +57,7 @@ struct radeon_info {
        uint64_t                    vram_vis_size;
        uint64_t                    max_alloc_size;
        uint32_t                    min_alloc_size;
+       uint32_t                    address32_hi;
        bool                        has_dedicated_vram;
        bool                        has_virtual_memory;
        bool                        gfx_ib_pad_with_type2;

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to