On Thu, Oct 1, 2015 at 1:13 PM, Alex Deucher alexdeucher@gmail.com wrote:
On Thu, Oct 1, 2015 at 1:01 PM, Alex Deucher alexdeucher@gmail.com wrote:
On Wed, Sep 30, 2015 at 11:50 PM, Michel Dänzer michel@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@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@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.
For clarity, drm_fb_helper_set_par which which ultimately calls restore_fbdev_mode never gets called.
Alex
Alex
Alex