[PATCH 3/3] drm/amdgpu:Limit the resolution for virtual_display

Alex Deucher alexdeucher at gmail.com
Tue Jan 5 17:23:29 UTC 2021


On Tue, Jan 5, 2021 at 3:37 AM Emily.Deng <Emily.Deng at amd.com> wrote:
>
> Limit the resolution not bigger than 16384, which means
> dev->mode_info.num_crtc * common_modes[i].w not bigger than 16384.
>
> Signed-off-by: Emily.Deng <Emily.Deng at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/dce_virtual.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_virtual.c b/drivers/gpu/drm/amd/amdgpu/dce_virtual.c
> index 2b16c8faca34..c23d37b02fd7 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_virtual.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_virtual.c
> @@ -319,6 +319,7 @@ dce_virtual_encoder(struct drm_connector *connector)
>  static int dce_virtual_get_modes(struct drm_connector *connector)
>  {
>         struct drm_device *dev = connector->dev;
> +       struct amdgpu_device *adev = dev->dev_private;
>         struct drm_display_mode *mode = NULL;
>         unsigned i;
>         static const struct mode_size {
> @@ -350,8 +351,10 @@ static int dce_virtual_get_modes(struct drm_connector *connector)
>         };
>
>         for (i = 0; i < ARRAY_SIZE(common_modes); i++) {
> -               mode = drm_cvt_mode(dev, common_modes[i].w, common_modes[i].h, 60, false, false, false);
> -               drm_mode_probed_add(connector, mode);
> +               if (adev->mode_info.num_crtc <= 4 ||  common_modes[i].w <= 2560) {

You are also limiting the number of crtcs here.  Intended?  Won't this
break 5 or 6 crtc configs?

Alex

> +                       mode = drm_cvt_mode(dev, common_modes[i].w, common_modes[i].h, 60, false, false, false);
> +                       drm_mode_probed_add(connector, mode);
> +               }
>         }
>
>         return 0;
> --
> 2.25.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list