Daniel Drake wrote:
> Hi,
>
> The VX855 code posted to this list does not modify viaInitVideo().
> This means that DMA blitting and Xv get disabled.
>
> Is this intentional, or are these things not supported?
>
This is an oversight. The attached patches enable them. I don't have the
hardware so I can't test, but it should work.
Regards,
Xavier
Index: src/via_video.c
===================================================================
--- src/via_video.c (revision 751)
+++ src/via_video.c (working copy)
@@ -564,17 +564,21 @@
pVia->useDmaBlit = FALSE;
#ifdef XF86DRI
- pVia->useDmaBlit = pVia->directRenderingEnabled &&
- ((pVia->Chipset == VIA_CLE266) ||
- (pVia->Chipset == VIA_KM400) ||
- (pVia->Chipset == VIA_K8M800) ||
- (pVia->Chipset == VIA_PM800) ||
- (pVia->Chipset == VIA_VM800) ||
- (pVia->Chipset == VIA_K8M890) ||
- (pVia->Chipset == VIA_P4M900) ||
- (pVia->Chipset == VIA_CX700) ||
- (pVia->Chipset == VIA_VX800) ||
- (pVia->Chipset == VIA_P4M890));
+ switch (pVia->Chipset) {
+ case VIA_CLE266:
+ case VIA_KM400:
+ case VIA_K8M800:
+ case VIA_PM800:
+ case VIA_VM800:
+ case VIA_P4M890:
+ case VIA_CX700:
+ case VIA_K8M890:
+ case VIA_P4M900:
+ case VIA_VX800:
+ case VIA_VX855:
+ pVia->useDmaBlit = pVia->directRenderingEnabled;
+ break;
+ }
if ((pVia->drmVerMajor < 2) ||
((pVia->drmVerMajor == 2) && (pVia->drmVerMinor < 9)))
pVia->useDmaBlit = FALSE;
Index: src/via_video.c
===================================================================
--- src/via_video.c (revision 751)
+++ src/via_video.c (working copy)
@@ -588,17 +592,26 @@
if (!viaFastVidCpy)
viaFastVidCpy = viaVidCopyInit("video", pScreen);
- if ((pVia->Chipset == VIA_CLE266) || (pVia->Chipset == VIA_KM400) ||
- (pVia->Chipset == VIA_K8M800) || (pVia->Chipset == VIA_PM800) ||
- (pVia->Chipset == VIA_VM800) || (pVia->Chipset == VIA_K8M890) ||
- (pVia->Chipset == VIA_P4M900) || (pVia->Chipset == VIA_CX700) ||
- (pVia->Chipset == VIA_P4M890) || (pVia->Chipset == VIA_VX800)) {
- num_new = viaSetupAdaptors(pScreen, &newAdaptors);
- num_adaptors = xf86XVListGenericAdaptors(pScrn, &adaptors);
- } else {
- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
- "[Xv] Unsupported Chipset. X video functionality disabled.\n");
- num_adaptors = 0;
+ switch (pVia->Chipset) {
+ case VIA_CLE266:
+ case VIA_KM400:
+ case VIA_K8M800:
+ case VIA_PM800:
+ case VIA_VM800:
+ case VIA_P4M890:
+ case VIA_CX700:
+ case VIA_K8M890:
+ case VIA_P4M900:
+ case VIA_VX800:
+ case VIA_VX855:
+ num_new = viaSetupAdaptors(pScreen, &newAdaptors);
+ num_adaptors = xf86XVListGenericAdaptors(pScrn, &adaptors);
+ break;
+ default:
+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+ "[Xv] Unsupported Chipset. X video functionality disabled.\n");
+ num_adaptors = 0;
+ break;
}
DBG_DD(ErrorF(" via_video.c : num_adaptors : %d\n", num_adaptors));
_______________________________________________
Openchrome-devel mailing list
[email protected]
http://wiki.openchrome.org/mailman/listinfo/openchrome-devel