[PATCH] drm/amd/display: remove need of modeset flag for overlay planes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 5/2/2018 12:53 AM, Stéphane Marchesin wrote:
> On Fri, Apr 27, 2018 at 3:27 AM Shirish S <shirish.s at amd.com> wrote:
>
>> This patch is in continuation to the
>> "843e3c7 drm/amd/display: defer modeset check in dm_update_planes_state"
>> where we started to eliminate the dependency on
>> DRM_MODE_ATOMIC_ALLOW_MODESET to be set by the user space,
>> which as such is not mandatory.
>> After deferring, this patch eliminates the dependency on the flag
>> for overlay planes.
>> This has to be done in stages as its a pretty complex and requires
> thorough
>> testing before we free primary planes as well from dependency on modeset
>> flag.
>> Signed-off-by: Shirish S <shirish.s at amd.com>
>> ---
>>    drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 8 +++++---
>>    1 file changed, 5 insertions(+), 3 deletions(-)
>> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> index 1a63c04..87b661d 100644
>> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> @@ -4174,7 +4174,7 @@ static void amdgpu_dm_commit_planes(struct
> drm_atomic_state *state,
>>                   }
>>                   spin_unlock_irqrestore(&crtc->dev->event_lock, flags);
>> -               if (!pflip_needed) {
>> +               if (!pflip_needed || plane->type ==
> DRM_PLANE_TYPE_OVERLAY) {
>>                           WARN_ON(!dm_new_plane_state->dc_state);
>>                           plane_states_constructed[planes_count] =
> dm_new_plane_state->dc_state;
>> @@ -4884,7 +4884,8 @@ static int dm_update_planes_state(struct dc *dc,
>>                   /* Remove any changed/removed planes */
>>                   if (!enable) {
>> -                       if (pflip_needed)
>> +                       if (pflip_needed &&
>> +                           plane && plane->type !=
> DRM_PLANE_TYPE_OVERLAY)
>
> nit: I don't think we need to check that plane is non-NULL
Agree, was a bit over cautious.
Have removed it in V2.
Thanks.
Regards,
Shirish S
> Stéphane
>
>>                                   continue;
>>                           if (!old_plane_crtc)
>> @@ -4931,7 +4932,8 @@ static int dm_update_planes_state(struct dc *dc,
>>                           if (!dm_new_crtc_state->stream)
>>                                   continue;
>> -                       if (pflip_needed)
>> +                       if (pflip_needed &&
>> +                           plane && plane->type !=
> DRM_PLANE_TYPE_OVERLAY)
>>                                   continue;
>>                           WARN_ON(dm_new_plane_state->dc_state);
>> --
>> 2.7.4
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux