Fix PCI card probe and chipset detection.

it appears that the chips&technologies X driver was partially broken
during libpciaccess conversion. Thanks to the analysis by Marien Swart
in bug #18122 and a similar fix by Mark Kettenis for the radeon
driver, this patch should fix it.
This commit is contained in:
matthieu 2009-06-30 18:39:19 +00:00
parent 3b890ddc49
commit 4d65740941

View File

@ -480,14 +480,14 @@ static DisplayModeRec ChipsNTSCMode = {
{ PCI_VENDOR_CHIPSTECH, (d), PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, (i) }
static const struct pci_id_match chips_device_match[] = {
CHIPS_DEVICE_MATCH(PCI_CHIP_65545, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_65548, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_65550, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_65554, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_65555, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_68554, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_69000, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_69030, 0),
CHIPS_DEVICE_MATCH(PCI_CHIP_65545, CHIPS_CT65545),
CHIPS_DEVICE_MATCH(PCI_CHIP_65548, CHIPS_CT65548),
CHIPS_DEVICE_MATCH(PCI_CHIP_65550, CHIPS_CT65550),
CHIPS_DEVICE_MATCH(PCI_CHIP_65554, CHIPS_CT65554),
CHIPS_DEVICE_MATCH(PCI_CHIP_65555, CHIPS_CT65555),
CHIPS_DEVICE_MATCH(PCI_CHIP_68554, CHIPS_CT68554),
CHIPS_DEVICE_MATCH(PCI_CHIP_69000, CHIPS_CT69000),
CHIPS_DEVICE_MATCH(PCI_CHIP_69030, CHIPS_CT69030),
{ 0, 0, 0 },
};
#endif
@ -813,7 +813,7 @@ chipsSetup(pointer module, pointer opts, int *errmaj, int *errmin)
if (!setupDone) {
setupDone = TRUE;
xf86AddDriver(&CHIPS, module, 0);
xf86AddDriver(&CHIPS, module, HaveDriverFuncs);
/*
* Modules that this driver always requires can be loaded here