[Mesa-dev] [PATCH] amd/common: add vcn dec ip info query for amdgpu version 3.17

Emil Velikov emil.l.velikov at gmail.com
Mon May 29 16:15:09 UTC 2017


On 26 May 2017 at 14:59, Marek Olšák <maraeo at gmail.com> wrote:
> On Fri, May 26, 2017 at 3:07 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>> Hi Leo,
>>
>> On 26 May 2017 at 12:24, Leo Liu <leo.liu at amd.com> wrote:
>>> Signed-off-by: Leo Liu <leo.liu at 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


More information about the mesa-dev mailing list