drm/amd/display: interface to obtain minimum plane size caps
authorIgor Kravchenko <Igor.Kravchenko@amd.com>
Fri, 10 Jul 2020 20:24:30 +0000 (16:24 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 21 Jul 2020 19:37:39 +0000 (15:37 -0400)
[Why]
Implement an interface to obtain plane size caps

[How]
Add min_width, min_height fields to dc_plane_cap structure.
Set values to 16x16 for discrete ASICs, and 64x64 for others.

Signed-off-by: Igor Kravchenko <Igor.Kravchenko@amd.com>
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dc.h
drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c
drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c
drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c

index e5a1a9e..a5faedf 100644 (file)
@@ -96,6 +96,9 @@ struct dc_plane_cap {
                uint32_t nv12;
                uint32_t fp16;
        } max_downscale_factor;
+       // minimal width/height
+       uint32_t min_width;
+       uint32_t min_height;
 };
 
 // Color management caps (DPP and MPC)
index 9597fc7..1d53850 100644 (file)
@@ -423,7 +423,9 @@ static const struct dc_plane_cap plane_cap = {
                                .argb8888 = 250,
                                .nv12 = 1,
                                .fp16 = 1
-               }
+               },
+               64,
+               64
 };
 
 static const struct dc_plane_cap underlay_plane_cap = {
@@ -447,7 +449,9 @@ static const struct dc_plane_cap underlay_plane_cap = {
                                .argb8888 = 1,
                                .nv12 = 250,
                                .fp16 = 1
-               }
+               },
+               64,
+               64
 };
 
 #define CTX  ctx
index 51b3fe5..5d83e81 100644 (file)
@@ -424,7 +424,9 @@ static const struct dc_plane_cap plane_cap = {
                        .argb8888 = 250,
                        .nv12 = 1,
                        .fp16 = 1
-       }
+       },
+       64,
+       64
 };
 
 #define CTX  ctx
index c8c6225..968a89b 100644 (file)
@@ -1043,7 +1043,9 @@ static const struct dc_plane_cap plane_cap = {
                        .argb8888 = 250,
                        .nv12 = 250,
                        .fp16 = 1
-       }
+       },
+       16,
+       16
 };
 static const struct resource_caps res_cap_nv14 = {
                .num_timing_generator = 5,
index 7d82648..88d41a3 100644 (file)
@@ -857,7 +857,9 @@ static const struct dc_plane_cap plane_cap = {
                        .argb8888 = 250,
                        .nv12 = 250,
                        .fp16 = 250
-       }
+       },
+       64,
+       64
 };
 
 static const struct dc_debug_options debug_defaults_drv = {