diff options
Diffstat (limited to 'kernel/xpp/init_card_4_30')
-rwxr-xr-x | kernel/xpp/init_card_4_30 | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/kernel/xpp/init_card_4_30 b/kernel/xpp/init_card_4_30 index 872c695..25e6ec7 100755 --- a/kernel/xpp/init_card_4_30 +++ b/kernel/xpp/init_card_4_30 @@ -227,7 +227,6 @@ sub port_setup($) { my $LIM1_RL = 0 << 1; # RL (Remote Loopback) my $lim1 = 0xB0 | $LIM1_RL; - main::select_subunit($portno); PRI::gen "$portno WD 26 F6"; # XPM0: Pulse Shape Programming for R1=18Ohms PRI::gen "$portno WD 27 02"; # XPM1: ...3V Pulse Level at the line (Vp-p=6v) PRI::gen "$portno WD 28 00"; # XPM2: ~XLT (transmit line is not in the high impedance state) @@ -356,23 +355,26 @@ sub main() { my @ports; my $subunit; - logit "main(): Initializing chip"; + logit "main(): Initializing chip ($ENV{UNIT_SUBUNITS} ports)"; PRI::init_quad; - for($subunit = 0; $subunit < $ENV{UNIT_SUBUNITS}; $subunit++) { + # Must initialize all 4 ports, regardless how much there are + for($subunit = 0; $subunit < 4; $subunit++) { my $is_nt = 0; - main::select_subunit($subunit); #logit "main(): Initializing subunit $subunit is_nt=$is_nt"; my $p = PRI::Port->new( 'PORT_NUM' => $subunit, - 'PRI_NT' => $is_nt + 'PRI_NT' => $is_nt, + 'EXIST' => ($subunit < $ENV{UNIT_SUBUNITS}) ); $p->port_setup; push(@ports, $p); } PRI::finish_quad; foreach my $p (@ports) { - $p->write_pri_info; + if($p->{EXIST}) { + $p->write_pri_info; + } } } |