On 26 May 2017 at 14:59, Marek Olšák <mar...@gmail.com> wrote: > On Fri, May 26, 2017 at 3:07 PM, Emil Velikov <emil.l.veli...@gmail.com> > wrote: >> Hi Leo, >> >> On 26 May 2017 at 12:24, Leo Liu <leo....@amd.com> wrote: >>> Signed-off-by: Leo Liu <leo....@amd.com> >>> --- >>> src/amd/common/ac_gpu_info.c | 10 +++++++++- >>> 1 file changed, 9 insertions(+), 1 deletion(-) >>> >>> diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c >>> index 56645c4..3dae2bd 100644 >>> --- a/src/amd/common/ac_gpu_info.c >>> +++ b/src/amd/common/ac_gpu_info.c >>> @@ -88,7 +88,7 @@ bool ac_query_gpu_info(int fd, amdgpu_device_handle dev, >>> { >>> struct amdgpu_buffer_size_alignments alignment_info = {}; >>> struct amdgpu_heap_info vram, vram_vis, gtt; >>> - struct drm_amdgpu_info_hw_ip dma = {}, compute = {}, uvd = {}, vce >>> = {}; >>> + struct drm_amdgpu_info_hw_ip dma = {}, compute = {}, uvd = {}, vce >>> = {}, vcn_dec = {}; >>> uint32_t vce_version = 0, vce_feature = 0, uvd_version = 0, >>> uvd_feature = 0; >>> uint32_t unused_feature; >>> int r, i, j; >>> @@ -157,6 +157,14 @@ bool ac_query_gpu_info(int fd, amdgpu_device_handle >>> dev, >>> return false; >>> } >>> >>> + if (info->drm_major == 3 && info->drm_minor >= 17) { >>> + r = amdgpu_query_hw_ip_info(dev, AMDGPU_HW_IP_VCN_DEC, 0, >>> &vcn_dec); >>> + if (r) { >>> + fprintf(stderr, "amdgpu: >>> amdgpu_query_hw_ip_info(vcn_dec) failed.\n"); >>> + return false; >> Drive-by question: >> >> What would happen if the hardware does not support the said engine - >> is the ioctl going to fail or it will succeed storing "unsupported >> engine" type of information in vcn_dec? >> I think the code needs to be addressed in either case. > > If the engine is unsupported, the kernel driver returns > drm_amdgpu_info_hw_ip::available_rings == 0. > Indeed. Pardon for the silly question :-\
-Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev