summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBartosz Kosiorek <gang65@poczta.onet.pl>2011-01-21 17:13:04 +0000
committerBartosz Kosiorek <gang65@poczta.onet.pl>2011-01-21 17:13:04 +0000
commite1c94d186076edf44fc988dadb5454fc951569f2 (patch)
treeeb99be3ff005b582b4b767261476dfd7989ecbaf
parent63e0daed78040e88e9fd1743a98d0ba3ba864270 (diff)
Use DRICreatePCIBusID when available to create Bus ID string
-rw-r--r--src/via_dri.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/via_dri.c b/src/via_dri.c
index 26d1a86..9fd2884 100644
--- a/src/via_dri.c
+++ b/src/via_dri.c
@@ -600,17 +600,21 @@ VIADRIScreenInit(ScreenPtr pScreen)
pDRIInfo->clientDriverName = VIAClientDriverName;
break;
}
- pDRIInfo->busIdString = malloc(64);
- sprintf(pDRIInfo->busIdString, "PCI:%d:%d:%d",
+ if (xf86LoaderCheckSymbol("DRICreatePCIBusID")) {
+ pDRIInfo->busIdString = DRICreatePCIBusID(pVia->PciInfo);
+ } else {
+ pDRIInfo->busIdString = malloc(64);
+ sprintf(pDRIInfo->busIdString, "PCI:%d:%d:%d",
#ifdef XSERVER_LIBPCIACCESS
- ((pVia->PciInfo->domain << 8) | pVia->PciInfo->bus),
- pVia->PciInfo->dev, pVia->PciInfo->func
+ ((pVia->PciInfo->domain << 8) | pVia->PciInfo->bus),
+ pVia->PciInfo->dev, pVia->PciInfo->func
#else
- ((pciConfigPtr)pVia->PciInfo->thisCard)->busnum,
- ((pciConfigPtr)pVia->PciInfo->thisCard)->devnum,
- ((pciConfigPtr)pVia->PciInfo->thisCard)->funcnum
+ ((pciConfigPtr)pVia->PciInfo->thisCard)->busnum,
+ ((pciConfigPtr)pVia->PciInfo->thisCard)->devnum,
+ ((pciConfigPtr)pVia->PciInfo->thisCard)->funcnum
#endif
- );
+ );
+ }
pDRIInfo->ddxDriverMajorVersion = VIA_DRIDDX_VERSION_MAJOR;
pDRIInfo->ddxDriverMinorVersion = VIA_DRIDDX_VERSION_MINOR;
pDRIInfo->ddxDriverPatchVersion = VIA_DRIDDX_VERSION_PATCH;