[Openchrome-devel] drm-openchrome: Branch 'drm-next-3.19' - 2 commits - drivers/gpu/drm
Kevin Brace
kevinbrace at kemper.freedesktop.org
Wed Mar 28 04:17:16 UTC 2018
drivers/gpu/drm/openchrome/via_crtc.c | 25 +++++++++++++------------
drivers/gpu/drm/openchrome/via_drv.h | 4 ++--
2 files changed, 15 insertions(+), 14 deletions(-)
New commits:
commit 15f26a470d1b3d707f6d3245660cae8f4f2efc15
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Tue Mar 27 20:50:19 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 <kevinbrace at gmx.com>
diff --git a/drivers/gpu/drm/openchrome/via_drv.h b/drivers/gpu/drm/openchrome/via_drv.h
index 82a35c650d97..a86c9b5250a5 100644
--- a/drivers/gpu/drm/openchrome/via_drv.h
+++ b/drivers/gpu/drm/openchrome/via_drv.h
@@ -30,11 +30,11 @@
#define DRIVER_AUTHOR "OpenChrome Project"
#define DRIVER_NAME "openchrome"
#define DRIVER_DESC "OpenChrome DRM for VIA Technologies Chrome IGP"
-#define DRIVER_DATE "20180314"
+#define DRIVER_DATE "20180327"
#define DRIVER_MAJOR 3
#define DRIVER_MINOR 0
-#define DRIVER_PATCHLEVEL 78
+#define DRIVER_PATCHLEVEL 79
#include <linux/module.h>
commit 259ecea2de9c63abfc29d22bd16a78e4ecf56420
Author: Kevin Brace <kevinbrace at gmx.com>
Date: Tue Mar 27 20:48:45 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 <kevinbrace at gmx.com>
diff --git a/drivers/gpu/drm/openchrome/via_crtc.c b/drivers/gpu/drm/openchrome/via_crtc.c
index a1ea671939ab..ea559b04468a 100644
--- a/drivers/gpu/drm/openchrome/via_crtc.c
+++ b/drivers/gpu/drm/openchrome/via_crtc.c
@@ -394,6 +394,9 @@ static int via_crtc_cursor_move(struct drm_crtc *crtc, int x, int y)
VIA_WRITE(HI_CENTEROFFSET, ((xoff << 16) | (yoff & 0x07ff)));
break;
}
+
+ via_show_cursor(crtc);
+
return 0;
}
@@ -1939,9 +1942,6 @@ static void via_iga1_crtc_prepare(struct drm_crtc *crtc)
{
DRM_DEBUG_KMS("Entered %s.\n", __func__);
- /* Turn off the cursor */
- via_hide_cursor(crtc);
-
/* Blank the screen */
if (crtc->enabled)
via_iga1_crtc_dpms(crtc, DRM_MODE_DPMS_OFF);
@@ -1953,9 +1953,6 @@ static void via_iga1_crtc_commit(struct drm_crtc *crtc)
{
DRM_DEBUG_KMS("Entered %s.\n", __func__);
- /* Turn on the cursor */
- via_show_cursor(crtc);
-
/* Turn on the monitor */
if (crtc->enabled)
via_iga1_crtc_dpms(crtc, DRM_MODE_DPMS_ON);
@@ -2112,6 +2109,11 @@ static int 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;
@@ -2228,9 +2230,6 @@ static void via_iga2_crtc_prepare(struct drm_crtc *crtc)
{
DRM_DEBUG_KMS("Entered %s.\n", __func__);
- /* Turn off the cursor */
- via_hide_cursor(crtc);
-
/* Blank the screen */
if (crtc->enabled)
via_iga2_crtc_dpms(crtc, DRM_MODE_DPMS_OFF);
@@ -2242,9 +2241,6 @@ static void via_iga2_crtc_commit(struct drm_crtc *crtc)
{
DRM_DEBUG_KMS("Entered %s.\n", __func__);
- /* Turn on the cursor */
- via_show_cursor(crtc);
-
/* Turn on the monitor */
if (crtc->enabled)
via_iga2_crtc_dpms(crtc, DRM_MODE_DPMS_ON);
@@ -2435,6 +2431,11 @@ static int 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;
More information about the Openchrome-devel
mailing list