aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86/os-support/linux/lnx_platform.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2014-07-11 18:04:20 +0200
committermarha <marha@users.sourceforge.net>2014-07-11 18:04:20 +0200
commit3865d60ef607cbb00c819e905e40d3628b8eca29 (patch)
tree73d8064951a7abbe4897bcc25959463d08544495 /xorg-server/hw/xfree86/os-support/linux/lnx_platform.c
parent294a395f15dec9e7aa24b83b08f47ba54b9bd232 (diff)
parente708bebcc029873004ade4241f347ce8c58896af (diff)
downloadvcxsrv-3865d60ef607cbb00c819e905e40d3628b8eca29.tar.gz
vcxsrv-3865d60ef607cbb00c819e905e40d3628b8eca29.tar.bz2
vcxsrv-3865d60ef607cbb00c819e905e40d3628b8eca29.zip
Merge remote-tracking branch 'origin/released'
Diffstat (limited to 'xorg-server/hw/xfree86/os-support/linux/lnx_platform.c')
-rw-r--r--xorg-server/hw/xfree86/os-support/linux/lnx_platform.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/xorg-server/hw/xfree86/os-support/linux/lnx_platform.c b/xorg-server/hw/xfree86/os-support/linux/lnx_platform.c
index 308275ab4..d660761c5 100644
--- a/xorg-server/hw/xfree86/os-support/linux/lnx_platform.c
+++ b/xorg-server/hw/xfree86/os-support/linux/lnx_platform.c
@@ -24,6 +24,7 @@ static Bool
get_drm_info(struct OdevAttributes *attribs, char *path, int delayed_index)
{
drmSetVersion sv;
+ drmVersionPtr v;
char *buf;
int major, minor, fd;
int err = 0;
@@ -57,8 +58,9 @@ get_drm_info(struct OdevAttributes *attribs, char *path, int delayed_index)
err = drmSetInterfaceVersion(fd, &sv);
if (err) {
- ErrorF("setversion 1.4 failed: %s\n", strerror(-err));
- goto out;
+ xf86Msg(X_ERROR, "%s: failed to set DRM interface version 1.4: %s\n",
+ path, strerror(-err));
+ goto out;
}
/* for a delayed probe we've already added the device */
@@ -74,6 +76,17 @@ get_drm_info(struct OdevAttributes *attribs, char *path, int delayed_index)
xf86_add_platform_device_attrib(delayed_index,
ODEV_ATTRIB_BUSID, buf);
drmFreeBusid(buf);
+
+ v = drmGetVersion(fd);
+ if (!v) {
+ xf86Msg(X_ERROR, "%s: failed to query DRM version\n", path);
+ goto out;
+ }
+
+ xf86_add_platform_device_attrib(delayed_index, ODEV_ATTRIB_DRIVER,
+ v->name);
+ drmFreeVersion(v);
+
out:
if (!server_fd)
close(fd);