summaryrefslogtreecommitdiffstats
path: root/convert/merge2pcitable.pl
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mandriva.org>2009-10-01 01:55:18 +0000
committerThierry Vignaud <tv@mandriva.org>2009-10-01 01:55:18 +0000
commit5d226499ffb6b6894a800895c0264b56a5cae7bc (patch)
tree61a3533c7586b54cc5ac4fac127501819814fac8 /convert/merge2pcitable.pl
parent82863dcf6db9e12d0aff045c807248f2ac576a47 (diff)
downloadldetect-lst-5d226499ffb6b6894a800895c0264b56a5cae7bc.tar
ldetect-lst-5d226499ffb6b6894a800895c0264b56a5cae7bc.tar.gz
ldetect-lst-5d226499ffb6b6894a800895c0264b56a5cae7bc.tar.bz2
ldetect-lst-5d226499ffb6b6894a800895c0264b56a5cae7bc.tar.xz
ldetect-lst-5d226499ffb6b6894a800895c0264b56a5cae7bc.zip
automatically drop old ATI ids not anymore supported (based on id list
from dkms-modules-info/dkms-modules.alias where fglrx declares what it supports)
Diffstat (limited to 'convert/merge2pcitable.pl')
-rwxr-xr-xconvert/merge2pcitable.pl12
1 files changed, 12 insertions, 0 deletions
diff --git a/convert/merge2pcitable.pl b/convert/merge2pcitable.pl
index ee66de68..a018b5fe 100755
--- a/convert/merge2pcitable.pl
+++ b/convert/merge2pcitable.pl
@@ -11,6 +11,8 @@ my ($force, @force_modules, $all, $keep_subids, $wildcards, $use_description);
# UPDATE ME WHEN UPDATING ../lst/Cards+:
my $ati_driver = 'Card:ATI Radeon HD 2000 and later (radeon/fglrx)';
+my $ati_fallback = 'Card:ATI Radeon X1950 and earlier';
+
if ($0 =~ /merge2pcitable/)
{
if ($ARGV[0] =~ /^-f=?(.*)$/) {
@@ -32,6 +34,16 @@ if ($0 =~ /merge2pcitable/)
my $read = $main::{"read_$format"} or die "unknown format $format (must be one of $formats)\n";
my $d_pci = read_pcitable($pcitable, 'strict');
my ($d_in, $classes) = $read->($in);
+
+ if ($format eq 'kernel_aliasmap') {
+ foreach (keys %$d_pci) {
+ next if $d_pci->{$_}[0] ne $ati_driver;
+ next if $d_in->{$_}[0];
+ $d_pci->{$_}[0] = $ati_fallback;
+ }
+
+ }
+
merge($d_pci, $d_in, $classes);
exit 1 if our $error;
cleanup_subids($d_pci) if !$keep_subids;