summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorChristophe Fergeau <cfergeau@mandriva.com>2009-04-28 07:54:56 +0000
committerChristophe Fergeau <cfergeau@mandriva.com>2009-04-28 07:54:56 +0000
commitd5992722992998474c9fb21224f45f55ce0e6459 (patch)
tree839e133f67538e2b676caefccb45d384c5d5520c /lib
parent16473a14d72a8d0615c83ba87e57cad5f2bcda9c (diff)
downloaddrakx-kbd-mouse-x11-d5992722992998474c9fb21224f45f55ce0e6459.tar
drakx-kbd-mouse-x11-d5992722992998474c9fb21224f45f55ce0e6459.tar.gz
drakx-kbd-mouse-x11-d5992722992998474c9fb21224f45f55ce0e6459.tar.bz2
drakx-kbd-mouse-x11-d5992722992998474c9fb21224f45f55ce0e6459.tar.xz
drakx-kbd-mouse-x11-d5992722992998474c9fb21224f45f55ce0e6459.zip
Check PCI class when detecting video cards
Dual-head ATI cards appears twice on the PCI bus, once in the DISPLAY_OTHER class and once in the DISPLAY_VGA class. They did that for compatibility with Win2000. Make sure we don't think the system has 2 video cards in such cases.
Diffstat (limited to 'lib')
-rw-r--r--lib/Xconfig/card.pm5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Xconfig/card.pm b/lib/Xconfig/card.pm
index 4575414..e6054ce 100644
--- a/lib/Xconfig/card.pm
+++ b/lib/Xconfig/card.pm
@@ -104,7 +104,10 @@ sub probe() {
} else {
internal_error();
}
- $card;
+ #dual head ATI card have a dummy DISPLAY_OTHER pci device because it
+ #was needed by Win2000, filter those out because we don't want to
+ #behave as if there were 2 video cards in the system in such cases
+ ($_->{'media_type'} eq 'DISPLAY_VGA')?$card:();
} @c;
if (@cards >= 2 && $cards[0]{card_name} eq $cards[1]{card_name} && $cards[0]{card_name} eq 'Intel 830 - 965') {