[AMD Official Use Only - AMD Internal Distribution Only]

The series is:

Reviewed-by: Ruijing Dong <ruijing.d...@amd.com>

-----Original Message-----
From: amd-gfx <amd-gfx-boun...@lists.freedesktop.org> On Behalf Of David Rosca
Sent: Friday, February 28, 2025 10:10 AM
To: Alex Deucher <alexdeuc...@gmail.com>
Cc: amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH 1/4] drm/amdgpu: Fix MPEG2, MPEG4 and VC1 video caps max 
size

On 28. 02. 25 15:21, Alex Deucher wrote:
> On Fri, Feb 28, 2025 at 8:34 AM David Rosca <david.ro...@amd.com> wrote:
>> 1920x1088 is the maximum supported resolution.
>>
>> Signed-off-by: David Rosca <david.ro...@amd.com>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/nv.c | 18 ++++++++---------
>>   drivers/gpu/drm/amd/amdgpu/vi.c | 36
>> ++++++++++++++++-----------------
> I think soc15.c needs similar fixes?
Fixed in v2.
>    Also, I think we need to bump
> the driver version so mesa knows what kernel version has the proper
> limits.

I think for now we can ignore the kernel caps in Mesa for these codecs as the 
maximum size is the same for all asics. We can later switch to kernel caps 
again, no need to bump the version just for this.

David

>
> Alex
>
>>   2 files changed, 27 insertions(+), 27 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/nv.c
>> b/drivers/gpu/drm/amd/amdgpu/nv.c index 8068f384f56c..a18e6fb9fa3f
>> 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/nv.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/nv.c
>> @@ -78,10 +78,10 @@ static const struct amdgpu_video_codecs
>> nv_video_codecs_encode = {
>>
>>   /* Navi1x */
>>   static const struct amdgpu_video_codec_info nv_video_codecs_decode_array[] 
>> = {
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2, 4096, 
>> 4096, 3)},
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4, 4096, 
>> 4096, 5)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2, 1920, 
>> 1088, 3)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4,
>> + 1920, 1088, 5)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4_AVC, 4096, 
>> 4096, 52)},
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1, 4096, 4096, 
>> 4)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1, 1920,
>> + 1088, 4)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_HEVC, 8192, 
>> 4352, 186)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_JPEG, 4096, 
>> 4096, 0)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VP9,
>> 8192, 4352, 0)}, @@ -104,10 +104,10 @@ static const struct 
>> amdgpu_video_codecs sc_video_codecs_encode = {
>>   };
>>
>>   static const struct amdgpu_video_codec_info 
>> sc_video_codecs_decode_array_vcn0[] = {
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2, 4096, 
>> 4096, 3)},
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4, 4096, 
>> 4096, 5)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2, 1920, 
>> 1088, 3)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4,
>> + 1920, 1088, 5)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4_AVC, 4096, 
>> 4096, 52)},
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1, 4096, 4096, 
>> 4)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1, 1920,
>> + 1088, 4)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_HEVC, 8192, 
>> 4352, 186)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_JPEG, 16384, 
>> 16384, 0)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VP9,
>> 8192, 4352, 0)}, @@ -115,10 +115,10 @@ static const struct 
>> amdgpu_video_codec_info sc_video_codecs_decode_array_vcn0[]
>>   };
>>
>>   static const struct amdgpu_video_codec_info 
>> sc_video_codecs_decode_array_vcn1[] = {
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2, 4096, 
>> 4096, 3)},
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4, 4096, 
>> 4096, 5)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2, 1920, 
>> 1088, 3)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4,
>> + 1920, 1088, 5)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4_AVC, 4096, 
>> 4096, 52)},
>> -       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1, 4096, 4096, 
>> 4)},
>> +       {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1, 1920,
>> + 1088, 4)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_HEVC, 8192, 
>> 4352, 186)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_JPEG, 16384, 
>> 16384, 0)},
>>          {codec_info_build(AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VP9,
>> 8192, 4352, 0)}, diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c
>> b/drivers/gpu/drm/amd/amdgpu/vi.c index 3bbbb75242d9..9b3510e53112
>> 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/vi.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/vi.c
>> @@ -167,16 +167,16 @@ static const struct amdgpu_video_codec_info 
>> tonga_video_codecs_decode_array[] =
>>   {
>>          {
>>                  .codec_type = AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2,
>> -               .max_width = 4096,
>> -               .max_height = 4096,
>> -               .max_pixels_per_frame = 4096 * 4096,
>> +               .max_width = 1920,
>> +               .max_height = 1088,
>> +               .max_pixels_per_frame = 1920 * 1088,
>>                  .max_level = 3,
>>          },
>>          {
>>                  .codec_type = AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4,
>> -               .max_width = 4096,
>> -               .max_height = 4096,
>> -               .max_pixels_per_frame = 4096 * 4096,
>> +               .max_width = 1920,
>> +               .max_height = 1088,
>> +               .max_pixels_per_frame = 1920 * 1088,
>>                  .max_level = 5,
>>          },
>>          {
>> @@ -188,9 +188,9 @@ static const struct amdgpu_video_codec_info 
>> tonga_video_codecs_decode_array[] =
>>          },
>>          {
>>                  .codec_type = AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1,
>> -               .max_width = 4096,
>> -               .max_height = 4096,
>> -               .max_pixels_per_frame = 4096 * 4096,
>> +               .max_width = 1920,
>> +               .max_height = 1088,
>> +               .max_pixels_per_frame = 1920 * 1088,
>>                  .max_level = 4,
>>          },
>>   };
>> @@ -206,16 +206,16 @@ static const struct amdgpu_video_codec_info 
>> cz_video_codecs_decode_array[] =
>>   {
>>          {
>>                  .codec_type = AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2,
>> -               .max_width = 4096,
>> -               .max_height = 4096,
>> -               .max_pixels_per_frame = 4096 * 4096,
>> +               .max_width = 1920,
>> +               .max_height = 1088,
>> +               .max_pixels_per_frame = 1920 * 1088,
>>                  .max_level = 3,
>>          },
>>          {
>>                  .codec_type = AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4,
>> -               .max_width = 4096,
>> -               .max_height = 4096,
>> -               .max_pixels_per_frame = 4096 * 4096,
>> +               .max_width = 1920,
>> +               .max_height = 1088,
>> +               .max_pixels_per_frame = 1920 * 1088,
>>                  .max_level = 5,
>>          },
>>          {
>> @@ -227,9 +227,9 @@ static const struct amdgpu_video_codec_info 
>> cz_video_codecs_decode_array[] =
>>          },
>>          {
>>                  .codec_type = AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1,
>> -               .max_width = 4096,
>> -               .max_height = 4096,
>> -               .max_pixels_per_frame = 4096 * 4096,
>> +               .max_width = 1920,
>> +               .max_height = 1088,
>> +               .max_pixels_per_frame = 1920 * 1088,
>>                  .max_level = 4,
>>          },
>>          {
>> --
>> 2.43.0
>>

Reply via email to