[PATCH 1/2] drm: handle cursor_set2 in restore_fbdev_mode

Alex Deucher alexdeucher at gmail.com
Thu Oct 1 10:01:26 PDT 2015


On Wed, Sep 30, 2015 at 11:50 PM, Michel Dänzer <michel at daenzer.net> wrote:
> On 01.10.2015 03:47, Alex Deucher wrote:
>> If a driver uses the cursor_set2 crtc callback rather than
>> cursor_set, use that.  This fixes the fbdev helper for drivers
>> that use cursor_set2.
>>
>> Change-Id: I127d3f8e72789ba70c3648140f87c6187864e130
>> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
>> ---
>>  drivers/gpu/drm/drm_fb_helper.c | 6 +++++-
>>  1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
>> index 418d299..ca08c47 100644
>> --- a/drivers/gpu/drm/drm_fb_helper.c
>> +++ b/drivers/gpu/drm/drm_fb_helper.c
>> @@ -345,7 +345,11 @@ static bool restore_fbdev_mode(struct drm_fb_helper *fb_helper)
>>               struct drm_crtc *crtc = mode_set->crtc;
>>               int ret;
>>
>> -             if (crtc->funcs->cursor_set) {
>> +             if (crtc->funcs->cursor_set2) {
>> +                     ret = crtc->funcs->cursor_set2(crtc, NULL, 0, 0, 0, 0, 0);
>> +                     if (ret)
>> +                             error = true;
>> +             } else if (crtc->funcs->cursor_set) {
>>                       ret = crtc->funcs->cursor_set(crtc, NULL, 0, 0, 0);
>>                       if (ret)
>>                               error = true;
>>
>
> Hah, nice catch. The series is
>
> Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>
>
> (I assume you tested with something like killall -9 Xorg and confirming
> sure the cursor doesn't stay visible in console)
>

The cursor still stays visible in the console.  Interestingly, the
cursor still shows up in the console even without these patches.

Alex


More information about the dri-devel mailing list