diff options
author | Dave Airlie <airlied@redhat.com> | 2011-03-04 14:50:28 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-03-04 15:56:22 +1000 |
commit | e73f88af66fcc50083fae4b7e1c39b469179a97a (patch) | |
tree | 5c4a7a9a9c7223d017f3ab17708d6f57cebdb8d7 | |
parent | 9f35421e09c494c36079d7cf5724ae9f832431d7 (diff) | |
download | linux-e73f88af66fcc50083fae4b7e1c39b469179a97a.tar.gz linux-e73f88af66fcc50083fae4b7e1c39b469179a97a.tar.bz2 linux-e73f88af66fcc50083fae4b7e1c39b469179a97a.zip |
drm: add cap bit to denote if dumb ioctl is available or not.
This allows libkms to make an easier decision.
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/drm_ioctl.c | 8 | ||||
-rw-r--r-- | include/drm/drm.h | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c index d6de9d042b76..7f6912a16761 100644 --- a/drivers/gpu/drm/drm_ioctl.c +++ b/drivers/gpu/drm/drm_ioctl.c @@ -275,6 +275,14 @@ int drm_getcap(struct drm_device *dev, void *data, struct drm_file *file_priv) struct drm_get_cap *req = data; req->value = 0; + switch (req->capability) { + case DRM_CAP_DUMB_BUFFER: + if (dev->driver->dumb_create) + req->value = 1; + break; + default: + return -EINVAL; + } return 0; } diff --git a/include/drm/drm.h b/include/drm/drm.h index da4efd162d58..9ac431396176 100644 --- a/include/drm/drm.h +++ b/include/drm/drm.h @@ -752,6 +752,8 @@ struct drm_event_vblank { __u32 reserved; }; +#define DRM_CAP_DUMB_BUFFER 0x1 + /* typedef area */ #ifndef __KERNEL__ typedef struct drm_clip_rect drm_clip_rect_t; |