summaryrefslogtreecommitdiffstats
path: root/perl-install/network
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/network')
-rw-r--r--perl-install/network/isdn.pm21
-rw-r--r--perl-install/network/isdn_consts.pm245
-rw-r--r--perl-install/network/netconnect.pm2
3 files changed, 260 insertions, 8 deletions
diff --git a/perl-install/network/isdn.pm b/perl-install/network/isdn.pm
index d921ee204..f412e4d30 100644
--- a/perl-install/network/isdn.pm
+++ b/perl-install/network/isdn.pm
@@ -69,9 +69,16 @@ sub isdn_write_config_backend {
my ($isdn, $light) = @_;
if ($light) {
modules::mergein_conf("$prefix/etc/modules.conf");
- @c = any::setup_thiskind($in, 'isdn', !$::expert, 1);
- modules::add_alias("ippp0", $c[0]{driver});
- isdn_detect_backend($isdn);
+ if ($netc->{autodetect}{isdn}{id}) {
+ @c = any::setup_thiskind($in, 'isdn', !$::expert, 1);
+ modules::add_alias("ippp0", $c[0]{driver});
+ isdn_detect_backend($isdn);
+ } else {
+ my $a="";
+ defined $isdn->{$_} and $a .= "$_=" . $isdn->{$_} . " " foreach qw(type protocol mem io io0 io1 irq);
+ modules::set_options($isdn->{driver}, $a);
+ }
+
$::isStandalone and modules::write_conf($prefix);
foreach my $f ('ioptions1B', 'ioptions2B') {
@@ -220,7 +227,6 @@ sub isdn_detect {
isdn_ask($isdn, $netc, _("I have detected an ISDN PCI Card, but I don't know the type. Please select one PCI card on the next screen.")) or return;
} else {
isdn_detect_step_1:
- print "plop isdn protocol\n";
$isdn->{protocol}=isdn_ask_protocol() or return;
isdn_detect_step_2:
isdn_ask_info($isdn, $netc) or goto isdn_detect_step_1;
@@ -246,10 +252,11 @@ sub isdn_detect_backend {
$isdn->{$_} = sprintf("%0x", $isdn->{$_}) foreach ('vendor', 'id');
$isdn->{card_type} = 'pci';
($isdn->{type}) = $isdn->{options} =~ /type=(\d+)/;
- if ($c->{options} !~ /protocol/ && $isdn->{protocol}) {
- $c->{options} .= "protocol=" . $isdn->{protocol};
+ if ($c->{options} !~ /protocol=/ && $isdn->{protocol} =~ /\d/) {
+ modules::set_options($c->{driver}, $c->{options} . " protocol=" . $isdn->{protocol});
}
- $c->{options} =~ /protocol=(\w+)/ and $isdn->{protocol} = $1;
+ $c->{options} =~ /protocol=(\d)/ and $isdn->{protocol} = $1;
+ print "plop " . $c->{options} . "\n";
}
}
diff --git a/perl-install/network/isdn_consts.pm b/perl-install/network/isdn_consts.pm
new file mode 100644
index 000000000..ceb241c50
--- /dev/null
+++ b/perl-install/network/isdn_consts.pm
@@ -0,0 +1,245 @@
+package network::isdn; # $Id$
+
+@isdndata =
+ (
+ {description => "Teles 16.0 (ISA)", #1 irq, mem, io
+ type => '1',
+ irq => '5',
+ mem => '0xd000',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "Teles 8.0 (ISA)", #2 irq, mem
+ type => '2',
+ irq => '9',
+ mem => '0xd800',
+ card => 'isa',
+ },
+ {description => "Teles 16.3 (ISA non PnP)", #3 irq, io
+ type => '3',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "Teles 16.3c (ISA PnP)", #14 irq, io
+ type => '14',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "Creatix/Teles (ISA PnP)", #4 irq, io0 (ISAC), io1 (HSCX)
+ type => '4',
+ irq => '5',
+ io0 => '0x0000',
+ io1 => '0x0000',
+ card => 'isa',
+ },
+ {description => "Teles generic (PCI)", #21 no parameter
+ type => '21',
+ card => 'pci',
+ },
+ {description => "Teles 16.3 (PCMCIA)", #8 irq, io
+ type => '8',
+ irq => '',
+ io => '0x',
+ card => 'isa',
+ },
+ {description => "Teles S0Box", #25 irq, io (of the used lpt port)
+ type => '25',
+ irq => '7',
+ io => '0x378',
+ card => 'isa',
+ },
+ {description => "ELSA PCC/PCF cards (ISA)", #6 io or nothing for autodetect (the io is required only if you have n>1 ELSA card )
+ type => '6',
+ io => "",
+ card => 'isa',
+ },
+ {description => "ELSA Quickstep 1000 (ISA)", #7 irq, io (from isapnp setup)
+ type => '7',
+ irq => '5',
+ io => '0x300',
+ card => 'isa',
+ },
+ {description => "ELSA Quickstep 1000 (PCI)", #18 no parameter
+ type => '18',
+ card => 'pci',
+ },
+ {description => "ELSA generic (PCMCIA)", #10 irq, io (set with card manager)
+ type => '10',
+ irq => '',
+ io => '0x',
+ card => 'isa',
+ },
+ {description => "ITK ix1-micro Rev.2 (ISA)", #9 irq, io
+ type => '9',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "Eicon.Diehl Diva (ISA PnP)", #11 irq, io
+ type => '11',
+ irq => '9',
+ io => '0x180',
+ card => 'isa',
+ },
+ {description => "Eicon.Diehl Diva (PCI)", #11 no parameter
+ type => '11',
+ card => 'pci',
+ },
+ {description => "ASUS COM ISDNLink (ISA)", #12 irq, io (from isapnp setup)
+ type => '12',
+ irq => '5',
+ io => '0x200',
+ card => 'isa',
+ },
+ {description => "ASUS COM ISDNLink (PCI)", #12
+ type => '35',
+ card => 'pci',
+ },
+ {description => "DynaLink (PCI)", #12
+ type => '12',
+ card => 'pci',
+ },
+ {description => "HFC-2BS0 based cards (ISA)", #13 irq, io
+ type => '13',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "HFC 2BDS0 (PCI)", #35 none
+ type => '35',
+ card => 'pci',
+ },
+ {description => "HFC 2BDS0 S+, SP (PCMCIA)", #37 irq,io (pcmcia must be set with cardmgr)
+ type => '37',
+ card => 'isa',
+ },
+ {description => "Sedlbauer Speed Card (ISA)", #15 irq, io
+ type => '15',
+ irq => '9',
+ io=> '0xd80',
+ card => 'isa',
+ },
+ {description => "Sedlbauer PC/104 (ISA)", #15 irq, io
+ type => '15',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "Sedlbauer Speed Card (PCI)", #15 no parameter
+ type => '15',
+ card => 'pci',
+ },
+ {description => "Sedlbauer Speed Star (PCMCIA)", #22 irq, io (set with card manager)
+ type => '22',
+ irq => '',
+ io => '0x',
+ card => 'isa',
+ },
+ {description => "Sedlbauer Speed Fax+ (ISA Pnp)", #28 irq, io (from isapnp setup)
+ type => '28',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "USR Sportster internal (ISA)", #16 irq, io
+ type => '16',
+ irq => '9',
+ io=> '0xd80',
+ card => 'isa',
+ },
+ {description => "MIC card (ISA)", #17 irq, io
+ type => '17',
+ irq => '9',
+ io => '0xd80',
+ card => 'isa',
+ },
+ {description => "Compaq ISDN S0 card (ISA)", #19 irq, io0, io1, io (from isapnp setup io=IO2)
+ type => '19',
+ irq => '5',
+ io => '0x0000',
+ io0 => '0x0000',
+ io1 => '0x0000',
+ card => 'isa',
+ },
+ {description => "NETjet card (PCI)", #20 no parameter
+ type => '20',
+ card => 'pci',
+ },
+ {description => "Dr. Neuhaus Niccy (ISA PnP)", #24 irq, io0, io1 (from isapnp setup)
+ type => '24',
+ irq => '5',
+ io0 => '0x0000',
+ io1 => '0x0000',
+ card => 'isa',
+ },
+ {description => "Dr. Neuhaus Niccy (PCI)", ##24 no parameter
+ type => '24',
+ card => 'pci',
+ },
+ {description => "AVM A1 (Fritz!) (ISA non PnP)", #5 irq, io
+ type => '5',
+ irq => '10',
+ io => '0x300',
+ card => 'isa',
+ },
+ {description => "AVM (Fritz!) (ISA Pnp)", #27 irq, io (from isapnp setup)
+ type => '27',
+ irq => '5',
+ io => '0x300',
+ card => 'isa',
+ },
+ {description => "AVM A1 (Fritz!) (PCMCIA)", #26 irq, io (set with card manager)
+ type => '26',
+ irq => '',
+ card => 'isa',
+ },
+ {description => "AVM PCI (Fritz!) (PCI)", #27 no parameter
+ type => '27',
+ card => 'pci',
+ },
+ {description => "Siemens I-Surf 1.0 (ISA Pnp)", #29 irq, io, memory (from isapnp setup)
+ type => '29',
+ irq => '9',
+ io => '0xd80',
+ mem => '0xd000',
+ card => 'isa',
+ },
+ {description => "ACER P10 (ISA Pnp)", #30 irq, io (from isapnp setup)
+ type => '30',
+ irq => '5',
+ io => '0x300',
+ card => 'isa',
+ },
+ {description => "HST Saphir (ISA Pnp)", #31 irq, io
+ type => '31',
+ irq => '5',
+ io => '0x300',
+ card => 'isa',
+ },
+ {description => "Telekom A4T (PCI)", #32 none
+ type => '32',
+ card => 'pci',
+ },
+ {description => "Scitel Quadro (PCI)", #33 subcontroller (4*S0, subctrl 1...4)
+ type => '33',
+ card => 'pci',
+ },
+ {description => "Gazel ISDN cards (ISA)", #34 irq,io
+ type => '34',
+ irq => '5',
+ io => '0x300',
+ card => 'isa',
+ },
+ {description => "Gazel ISDN cards (PCI)", #34 none
+ type => '34',
+ card => 'pci',
+ },
+ {description => "W6692 and Winbond based cards (PCI)", #36 none
+ type => '36',
+ card => 'pci',
+ }
+ );
+
+1;
diff --git a/perl-install/network/netconnect.pm b/perl-install/network/netconnect.pm
index 7e5e2a673..47f4029ab 100644
--- a/perl-install/network/netconnect.pm
+++ b/perl-install/network/netconnect.pm
@@ -3,7 +3,7 @@ package network::netconnect;
use diagnostics;
use strict;
-use vars qw($isdn_init @isdndata %isdnid2type);
+use vars qw($isdn_init @isdndata);
use common qw(:common :file :functional :system);
use log;