drivers/gpu/drm/via/via_cursor.c | 13 +++++++++++++ drivers/gpu/drm/via/via_drv.h | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-)
New commits: commit cb11d9db71dab54cd0799291b977c251cac42577 Author: Kevin Brace <kevinbr...@bracecomputerlab.com> Date: Wed Jul 26 18:02:36 2023 -0500 drm/via: Version bumped to 3.6.9 Improve the cursor plane behavior somewhat. Signed-off-by: Kevin Brace <kevinbr...@bracecomputerlab.com> diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h index b650fb5986e1..fed60e2cb2a6 100644 --- a/drivers/gpu/drm/via/via_drv.h +++ b/drivers/gpu/drm/via/via_drv.h @@ -44,10 +44,10 @@ #define DRIVER_MAJOR 3 #define DRIVER_MINOR 6 -#define DRIVER_PATCHLEVEL 8 +#define DRIVER_PATCHLEVEL 9 #define DRIVER_NAME "via" #define DRIVER_DESC "OpenChrome DRM for VIA Technologies Chrome" -#define DRIVER_DATE "20230522" +#define DRIVER_DATE "20230726" #define DRIVER_AUTHOR "OpenChrome Project" commit 25ceadef0072178b7fcca1b64a5a6ef118c97484 Author: Kevin Brace <kevinbr...@bracecomputerlab.com> Date: Wed Jul 26 17:57:52 2023 -0500 drm/via: Use atomic_enable callback for the cursor plane This appears to improve the cursor behavior, but more work is needed to fix the issue completely. Signed-off-by: Kevin Brace <kevinbr...@bracecomputerlab.com> diff --git a/drivers/gpu/drm/via/via_cursor.c b/drivers/gpu/drm/via/via_cursor.c index 956d53052b78..1132c45ac1c6 100644 --- a/drivers/gpu/drm/via/via_cursor.c +++ b/drivers/gpu/drm/via/via_cursor.c @@ -365,6 +365,18 @@ static void via_cursor_atomic_update(struct drm_plane *plane, via_show_cursor(crtc); } +static void via_cursor_atomic_enable(struct drm_plane *plane, + struct drm_atomic_state *state) +{ + struct drm_plane_state *new_state = + drm_atomic_get_new_plane_state(state, plane); + struct drm_crtc *crtc = new_state->crtc; + + if (crtc) { + via_show_cursor(crtc); + } +} + void via_cursor_atomic_disable(struct drm_plane *plane, struct drm_atomic_state *state) { @@ -382,6 +394,7 @@ const struct drm_plane_helper_funcs via_cursor_drm_plane_helper_funcs = { .cleanup_fb = via_cursor_cleanup_fb, .atomic_check = via_cursor_atomic_check, .atomic_update = via_cursor_atomic_update, + .atomic_enable = via_cursor_atomic_enable, .atomic_disable = via_cursor_atomic_disable, };