diff options
author | Dave Airlie <airlied@panoply-rh.(none)> | 2008-03-17 16:37:46 +1000 |
---|---|---|
committer | Dave Airlie <airlied@panoply-rh.(none)> | 2008-03-17 16:38:20 +1000 |
commit | 607964ed9e5f6d86a0960bef2341e7f5de9c71da (patch) | |
tree | 2fa0f3ff0bc57846eded35c4b76e92c08dbec7c5 /linux-core/drm_stub.c | |
parent | 2d0411cb7544ea45b5879d4f454cb9ee3c9ff5fb (diff) |
drm: add master set/drop protocol
this may not survive long - just need something for testing
Diffstat (limited to 'linux-core/drm_stub.c')
-rw-r--r-- | linux-core/drm_stub.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/linux-core/drm_stub.c b/linux-core/drm_stub.c index 6856075b..f66dec07 100644 --- a/linux-core/drm_stub.c +++ b/linux-core/drm_stub.c @@ -88,6 +88,29 @@ again: return new_id; } +int drm_setmaster_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + if (file_priv->minor->master && file_priv->minor->master != file_priv->master) + return -EINVAL; + + if (!file_priv->master) + return -EINVAL; + + if (!file_priv->minor->master && file_priv->minor->master != file_priv->master) + file_priv->minor->master = file_priv->master; + return 0; +} + +int drm_dropmaster_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + if (!file_priv->master) + return -EINVAL; + file_priv->minor->master = NULL; + return 0; +} + struct drm_master *drm_get_master(struct drm_minor *minor) { struct drm_master *master; |