[PATCH 1/2] drm: handle cursor_set2 in restore_fbdev_mode
Alex Deucher
alexdeucher at gmail.com
Thu Oct 1 10:13:04 PDT 2015
On Thu, Oct 1, 2015 at 1:01 PM, Alex Deucher <alexdeucher at gmail.com> wrote:
> 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.
restore_fbdev_mode doesn't end up get called when I killall -9 X.
Alex
>
> Alex
More information about the dri-devel
mailing list