diff options
Diffstat (limited to 'src/radeon_video.c')
-rw-r--r-- | src/radeon_video.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/radeon_video.c b/src/radeon_video.c index 56cd9abd..b07636c2 100644 --- a/src/radeon_video.c +++ b/src/radeon_video.c @@ -16,6 +16,10 @@ #include "xf86.h" #include "dixstruct.h" +#ifdef USE_GLAMOR +#include <glamor.h> +#endif + /* DPMS */ #ifdef HAVE_XEXTPROTO_71 #include <X11/extensions/dpmsconst.h> @@ -165,9 +169,18 @@ void RADEONInitVideo(ScreenPtr pScreen) memcpy(newAdaptors, adaptors, num_adaptors * sizeof(XF86VideoAdaptorPtr)); adaptors = newAdaptors; - if ((info->ChipFamily < CHIP_FAMILY_RS400) - || (info->directRenderingEnabled) - ) { +#ifdef USE_GLAMOR + if (info->use_glamor) { + texturedAdaptor = glamor_xv_init(pScreen, 16); + if (texturedAdaptor != NULL) { + adaptors[num_adaptors++] = texturedAdaptor; + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Set up glamor textured video\n"); + } else + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Failed to set up glamor textured video\n"); + } else +#endif + if ((info->ChipFamily < CHIP_FAMILY_RS400) + || info->directRenderingEnabled) { texturedAdaptor = RADEONSetupImageTexturedVideo(pScreen); if (texturedAdaptor != NULL) { adaptors[num_adaptors++] = texturedAdaptor; |