summaryrefslogtreecommitdiffstats
path: root/perl-install/detect_devices.pm
diff options
context:
space:
mode:
authorDamien Chaumette <dchaumette@mandriva.com>2002-10-10 15:28:14 +0000
committerDamien Chaumette <dchaumette@mandriva.com>2002-10-10 15:28:14 +0000
commite9491d2b93aa715d67e8901a5dc240ad0617c0f4 (patch)
tree5c3a77c5879752442f55a5a38969c60bc93a3b50 /perl-install/detect_devices.pm
parent9572c2b7be11fd83d7981c2c369f271c961254fb (diff)
downloaddrakx-e9491d2b93aa715d67e8901a5dc240ad0617c0f4.tar
drakx-e9491d2b93aa715d67e8901a5dc240ad0617c0f4.tar.gz
drakx-e9491d2b93aa715d67e8901a5dc240ad0617c0f4.tar.bz2
drakx-e9491d2b93aa715d67e8901a5dc240ad0617c0f4.tar.xz
drakx-e9491d2b93aa715d67e8901a5dc240ad0617c0f4.zip
- move serial modem detection to detect_devices.pm
- add speedtouch USB detection - add winmodem detection
Diffstat (limited to 'perl-install/detect_devices.pm')
-rw-r--r--perl-install/detect_devices.pm42
1 files changed, 42 insertions, 0 deletions
diff --git a/perl-install/detect_devices.pm b/perl-install/detect_devices.pm
index 204e4f1cc..d11cfd657 100644
--- a/perl-install/detect_devices.pm
+++ b/perl-install/detect_devices.pm
@@ -345,6 +345,48 @@ sub getATARAID {
values %l;
}
+#-AT&F&O2B40
+#- DialString=ATDT0231389595((
+
+#- modem_detect_backend : detects modem on serial ports and fills the infos in $modem : detects only one card
+#- input
+#- $modem
+#- $mouse : facultative, hash containing device to exclude not to test mouse port : ( device => /ttyS[0-9]/ )
+#- output:
+#- $modem->{device} : device where the modem were detected
+sub getSerialModem {
+ my ($modem, $mouse) = @_;
+ $mouse ||= {};
+ $mouse->{device} = readlink "/dev/mouse";
+ my $serdev = arch() =~ /ppc/ ? "macserial" : "serial";
+ eval { modules::load($serdev) };
+
+ detect_devices::probeSerialDevices();
+ foreach ('modem', map { "ttyS$_" } (0..7)) {
+ next if $mouse->{device} =~ /$_/;
+ next unless -e "/dev/$_";
+ detect_devices::hasModem("/dev/$_") and $modem->{device} = $_, last;
+ }
+
+ #- add an alias for macserial on PPC
+ modules::add_alias('serial', $serdev) if (arch() =~ /ppc/ && $modem->{device});
+ my @devs = detect_devices::pcmcia_probe();
+ foreach (@devs) {
+ $_->{type} =~ /serial/ and $modem->{device} = $_->{device};
+ }
+}
+
+sub getModem() {
+ my @pci_modems = grep { $_->{driver} eq 'Bad:www.linmodems.org' } probeall(0);
+ my $serial_modem = {};
+ getSerialModem($serial_modem);
+ @pci_modems, $serial_modem;
+}
+
+sub getSpeedtouch {
+ grep { $_->{description} eq 'Alcatel|USB ADSL Modem (Speed Touch)' } probeall(0);
+}
+
sub getNet() {
grep { !(($::isStandalone || $::live) && /plip/) && c::hasNetDevice($_) } @netdevices;
}