diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-03-25 11:55:34 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2016-03-25 12:01:36 +0900 |
commit | b2a2e114eec0967f7b67f030fbab8983cf980489 (patch) | |
tree | eba2ae882c86e6bc1970179deadf5bbe805228bd /src | |
parent | e31a2d668a1b5ebaf75d423c8123cbc8e0dcbae9 (diff) |
Revert "Use render node for DRI3 if available"
This reverts commit ea558e645786b08d75307716036045170e97b43e.
It broke VDPAU<->GL interop with DRI3 enabled, because the Gallium VDPAU
code doesn't support DRI3 yet. We can consider re-enabling this once
there is a Mesa release where the Gallium VDPAU code supports DRI3.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94675
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/amdgpu_dri3.c | 37 | ||||
-rw-r--r-- | src/amdgpu_probe.h | 1 |
2 files changed, 3 insertions, 35 deletions
diff --git a/src/amdgpu_dri3.c b/src/amdgpu_dri3.c index 65d4899..06d0668 100644 --- a/src/amdgpu_dri3.c +++ b/src/amdgpu_dri3.c @@ -39,7 +39,9 @@ #include <fcntl.h> #include <errno.h> -static int open_master_node(ScreenPtr screen, int *out) + +static int +amdgpu_dri3_open(ScreenPtr screen, RRProviderPtr provider, int *out) { ScrnInfoPtr scrn = xf86ScreenToScrn(screen); AMDGPUEntPtr pAMDGPUEnt = AMDGPUEntPriv(scrn); @@ -85,36 +87,6 @@ static int open_master_node(ScreenPtr screen, int *out) return Success; } -static int open_render_node(ScreenPtr screen, int *out) -{ - ScrnInfoPtr scrn = xf86ScreenToScrn(screen); - AMDGPUEntPtr pAMDGPUEnt = AMDGPUEntPriv(scrn); - int fd; - - fd = open(pAMDGPUEnt->render_node, O_RDWR | O_CLOEXEC); - if (fd < 0) - return BadAlloc; - - *out = fd; - return Success; -} - -static int -amdgpu_dri3_open(ScreenPtr screen, RRProviderPtr provider, int *out) -{ - ScrnInfoPtr scrn = xf86ScreenToScrn(screen); - AMDGPUEntPtr pAMDGPUEnt = AMDGPUEntPriv(scrn); - int ret = BadAlloc; - - if (pAMDGPUEnt->render_node) - ret = open_render_node(screen, out); - - if (ret != Success) - ret = open_master_node(screen, out); - - return ret; -} - static PixmapPtr amdgpu_dri3_pixmap_from_fd(ScreenPtr screen, int fd, CARD16 width, @@ -211,9 +183,6 @@ Bool amdgpu_dri3_screen_init(ScreenPtr screen) { ScrnInfoPtr scrn = xf86ScreenToScrn(screen); - AMDGPUEntPtr pAMDGPUEnt = AMDGPUEntPriv(scrn); - - pAMDGPUEnt->render_node = drmGetRenderDeviceNameFromFd(pAMDGPUEnt->fd); if (!dri3_screen_init(screen, &amdgpu_dri3_screen_info)) { xf86DrvMsg(scrn->scrnIndex, X_WARNING, diff --git a/src/amdgpu_probe.h b/src/amdgpu_probe.h index 865c197..1e6b99e 100644 --- a/src/amdgpu_probe.h +++ b/src/amdgpu_probe.h @@ -88,7 +88,6 @@ typedef struct { int fd_wakeup_ref; unsigned int assigned_crtcs; struct xf86_platform_device *platform_dev; - char *render_node; } AMDGPUEntRec, *AMDGPUEntPtr; extern const OptionInfoRec *AMDGPUOptionsWeak(void); |