Henri <[EMAIL PROTECTED]> writes:

> Concerning this sound chip, i had a pb with upgrade from 9.0 to
> 9.1rc2 : the driver was name snd-via8233 in 9.0, and it is named
> snd-82xx in rc2. The upgrade didn't made any change about this, so
> that sound does not work when booting on the new kernel. when
> lauching draksound, it says "error, the driver << >> is not in the
> list" !!!

right!

this should fix it and also convert old snd-card aliases (try it as
"patch -p0 < /where/it/is/via.diff" in /usr/lib/libDrakX):
Index: modules.pm
===================================================================
RCS file: /cooker/gi/perl-install/modules.pm,v
retrieving revision 1.309
diff -u -p -r1.309 modules.pm
--- modules.pm	24 Feb 2003 14:09:00 -0000	1.309
+++ modules.pm	13 Mar 2003 16:39:26 -0000
@@ -219,6 +219,18 @@ sub read_conf {
 	    push @{$c{$name}{probeall} ||= []}, delete $c{$alias}{alias};
 	}
     }
+    # Convert alsa driver from old naming system to new one (snd-card-XXX => snd-XXX)
+    foreach my $alias (sort keys %c) {
+        if ($c{$alias}{alias} =~ /^snd-card/) {
+            my $new_driver = $c{$alias}{alias};
+            $new_driver =~ s/^snd-card/snd/;
+            $c{$alias}{alias} = $new_driver;
+        }
+    }
+    # Ensure correct upgrade for snd-via683 and snd-via8233 drivers
+    foreach my $alias (sort keys %c) {
+        $c{$alias}{alias} = 'snd-via82xx' if $c{$alias}{alias} =~ /^snd-via686|^snd-via8233/;
+    }
 
     \%c;
 }
@@ -248,6 +260,11 @@ sub write_conf {
 	} elsif ($type eq 'alias' && $alias =~ /scsi_hostadapter|usb-interface/) {
 	    #- remove old aliases which are replaced by probeall
 	    $_ = '';
+     } elsif ($type eq 'above') {
+         # Convert alsa driver from old naming system to new one (snd-card-XXX => snd-XXX)
+         # Ensure correct upgrade for snd-via683 and snd-via8233 drivers
+         s/snd-card/snd/g;
+         s/snd-via(686|8233)/snd-via82xx/g;
 	} elsif ($conf{$alias}{$type} && $conf{$alias}{$type} ne $module) {
 	    my $v = join(' ', uniq(deref($conf{$alias}{$type})));
 	    $_ = "$type $alias $v\n";

Reply via email to