The hwcursor parameter is a boolean variable. When set to true, the hardware cursor is enabled. When set to false, it is disabled. Signed-off-by: Julia Lemire <jlemire@xxxxxxxxxx> --- drivers/gpu/drm/mgag200/mgag200_cursor.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/gpu/drm/mgag200/mgag200_cursor.c b/drivers/gpu/drm/mgag200/mgag200_cursor.c index 9f9780b..c9a94a6 100644 --- a/drivers/gpu/drm/mgag200/mgag200_cursor.c +++ b/drivers/gpu/drm/mgag200/mgag200_cursor.c @@ -10,9 +10,17 @@ #include <drm/drmP.h> #include "mgag200_drv.h" +#include <linux/moduleparam.h> + +static bool hwcursor = true; static bool warn_transparent = true; static bool warn_palette = true; +static bool warn_user_input = true; + +module_param(hwcursor, bool, 0644); +MODULE_PARM_DESC(hwcursor, "When true, the hardware cursor is enabled. When false, it is disabled."); + /* Hide the cursor off screen. We can't disable the cursor hardware because it @@ -90,6 +98,16 @@ int mga_crtc_cursor_set(struct drm_crtc *crtc, goto out1; } + if (!hwcursor) { + if (warn_user_input) { + dev_info(&dev->pdev->dev, "User disabled hardware cursor.\n"); + warn_user_input = false; + } + mga_hide_cursor(mdev); + ret = -EINVAL; + goto out1; + } + /* Move cursor buffers into VRAM if they aren't already */ if (!pixels_1->pin_count) { ret = mgag200_bo_pin(pixels_1, TTM_PL_FLAG_VRAM, -- 1.7.10.4 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel