drivers/gpu/drm/openchrome/via_crtc.c | 24 ++++++++++++------------ drivers/gpu/drm/openchrome/via_drv.h | 5 ++--- 2 files changed, 14 insertions(+), 15 deletions(-)
New commits: commit f9e35ef676897d21f1b5c1fc25228545f6daf9d2 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Mar 27 15:30:57 2018 -0700 drm/openchrome: Version bumped to 3.0.79 This version fixes corrupted hardware cursor(s) after standby resume and hardware cursor(s) being left displayed after switching to VT (Virtual Terminal). It will cause a minor regression of hardware cursor(s) being turned off right after standby resume, although it will turn back on when the associated input device is moved around the screen. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_drv.h b/drivers/gpu/drm/openchrome/via_drv.h index df2eb0a4f36d..c1beef590ece 100644 --- a/drivers/gpu/drm/openchrome/via_drv.h +++ b/drivers/gpu/drm/openchrome/via_drv.h @@ -30,12 +30,11 @@ #define DRIVER_AUTHOR "OpenChrome Project" #define DRIVER_NAME "openchrome" #define DRIVER_DESC "OpenChrome DRM for VIA Technologies Chrome IGP" -#define DRIVER_DATE "20180309" +#define DRIVER_DATE "20180327" #define DRIVER_MAJOR 3 #define DRIVER_MINOR 0 -#define DRIVER_PATCHLEVEL 78 - +#define DRIVER_PATCHLEVEL 79 #include <linux/module.h> #include "ttm/ttm_bo_api.h" commit ad7ae852aba77aee36d67640028e218c0afcbd94 Author: Kevin Brace <kevinbr...@gmx.com> Date: Tue Mar 27 15:19:39 2018 -0700 drm/openchrome: Fix for corrupted cursor(s) after standby resume This commit fixes corrupted hardware cursor(s) after standby resume likely introduced by commit 981d27b3a95a7df6fb6c6887b467f576bf8a8b97. Furthermore, it also fixes a bug that causes hardware cursor(s) to stay displayed after switching over to VT (Virtual Terminal). That being said, this commit will cause a minor regression of turning off the hardware cursor(s) right after standby resume, although they will be displayed again when the input device is moved around the screen. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_crtc.c b/drivers/gpu/drm/openchrome/via_crtc.c index 5a9dee74e8e5..502293529234 100644 --- a/drivers/gpu/drm/openchrome/via_crtc.c +++ b/drivers/gpu/drm/openchrome/via_crtc.c @@ -392,6 +392,8 @@ static int via_crtc_cursor_move(struct drm_crtc *crtc, int x, int y) break; } + via_show_cursor(crtc); + return 0; } @@ -1845,9 +1847,6 @@ via_iga1_crtc_prepare(struct drm_crtc *crtc) { DRM_DEBUG_KMS("Entered %s.\n", __func__); - /* Turn off the cursor */ - via_hide_cursor(crtc); - drm_crtc_vblank_off(crtc); /* Blank the screen */ @@ -1862,9 +1861,6 @@ via_iga1_crtc_commit(struct drm_crtc *crtc) { DRM_DEBUG_KMS("Entered %s.\n", __func__); - /* Turn on the cursor */ - via_show_cursor(crtc); - drm_crtc_vblank_on(crtc); /* Turn on the monitor */ @@ -2022,6 +2018,11 @@ via_iga1_crtc_mode_set(struct drm_crtc *crtc, ret = via_iga1_crtc_mode_set_base(crtc, x, y, fb); + /* Specify the cursor pattern. */ + via_cursor_address(crtc); + + /* Turn off the cursor. */ + via_hide_cursor(crtc); exit: DRM_DEBUG_KMS("Exiting %s.\n", __func__); return ret; @@ -2128,9 +2129,6 @@ via_iga2_crtc_prepare(struct drm_crtc *crtc) { DRM_DEBUG_KMS("Entered %s.\n", __func__); - /* Turn off the cursor */ - via_hide_cursor(crtc); - drm_crtc_vblank_off(crtc); /* Blank the screen */ @@ -2145,9 +2143,6 @@ via_iga2_crtc_commit(struct drm_crtc *crtc) { DRM_DEBUG_KMS("Entered %s.\n", __func__); - /* Turn on the cursor */ - via_show_cursor(crtc); - drm_crtc_vblank_on(crtc); /* Turn on the monitor */ @@ -2334,6 +2329,11 @@ via_iga2_crtc_mode_set(struct drm_crtc *crtc, ret = via_iga2_crtc_mode_set_base(crtc, x, y, fb); + /* Specify the cursor pattern. */ + via_cursor_address(crtc); + + /* Turn off the cursor. */ + via_hide_cursor(crtc); exit: DRM_DEBUG_KMS("Exiting %s.\n", __func__); return ret; _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel