summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@linux.ie>2008-07-26 08:43:59 +1000
committerDave Airlie <airlied@linux.ie>2008-07-26 08:43:59 +1000
commit66723c09f5e4d60f1c746d112b065bacc1cfa89f (patch)
treed392e96a406d2c981d7afdcdfece95b07d26d61d
parent2be292f6ea8df96afc1454f30918b1b391fba2ba (diff)
modesetting: pass file priv to cursor
-rw-r--r--linux-core/drm_crtc.c2
-rw-r--r--linux-core/drm_crtc.h4
-rw-r--r--linux-core/intel_display.c1
-rw-r--r--linux-core/nv50_kms_wrapper.c6
4 files changed, 8 insertions, 5 deletions
diff --git a/linux-core/drm_crtc.c b/linux-core/drm_crtc.c
index 91bff1f6..7ee33219 100644
--- a/linux-core/drm_crtc.c
+++ b/linux-core/drm_crtc.c
@@ -1445,7 +1445,7 @@ int drm_mode_cursor_ioctl(struct drm_device *dev,
if (req->flags & DRM_MODE_CURSOR_BO) {
/* Turn of the cursor if handle is 0 */
if (crtc->funcs->cursor_set) {
- ret = crtc->funcs->cursor_set(crtc, req->handle, req->width, req->height);
+ ret = crtc->funcs->cursor_set(crtc, file_priv, req->handle, req->width, req->height);
} else {
DRM_ERROR("crtc does not support cursor\n");
ret = -EFAULT;
diff --git a/linux-core/drm_crtc.h b/linux-core/drm_crtc.h
index 117b7213..bfccdeb5 100644
--- a/linux-core/drm_crtc.h
+++ b/linux-core/drm_crtc.h
@@ -299,8 +299,8 @@ struct drm_crtc_funcs {
void (*restore)(struct drm_crtc *crtc); /* resume? */
/* cursor controls */
- int (*cursor_set)(struct drm_crtc *crtc, uint32_t buffer_handle,
- uint32_t width, uint32_t height);
+ int (*cursor_set)(struct drm_crtc *crtc, struct drm_file *file_priv,
+ uint32_t handle, uint32_t width, uint32_t height);
int (*cursor_move)(struct drm_crtc *crtc, int x, int y);
/* Set gamma on the CRTC */
diff --git a/linux-core/intel_display.c b/linux-core/intel_display.c
index 29aae169..b8077bd2 100644
--- a/linux-core/intel_display.c
+++ b/linux-core/intel_display.c
@@ -972,6 +972,7 @@ void intel_crtc_load_lut(struct drm_crtc *crtc)
}
static int intel_crtc_cursor_set(struct drm_crtc *crtc,
+ struct drm_file *file_priv,
uint32_t handle,
uint32_t width, uint32_t height)
{
diff --git a/linux-core/nv50_kms_wrapper.c b/linux-core/nv50_kms_wrapper.c
index 1c4b52d7..77271c1b 100644
--- a/linux-core/nv50_kms_wrapper.c
+++ b/linux-core/nv50_kms_wrapper.c
@@ -236,8 +236,10 @@ static const struct drm_mode_config_funcs nv50_kms_mode_funcs = {
* CRTC functions.
*/
-static int nv50_kms_crtc_cursor_set(struct drm_crtc *drm_crtc, uint32_t buffer_handle,
- uint32_t width, uint32_t height)
+static int nv50_kms_crtc_cursor_set(struct drm_crtc *drm_crtc,
+ struct drm_file *file_priv,
+ uint32_t buffer_handle,
+ uint32_t width, uint32_t height)
{
struct nv50_crtc *crtc = to_nv50_crtc(drm_crtc);
struct nv50_display *display = nv50_get_display(crtc->dev);