summaryrefslogtreecommitdiff
path: root/xpp/utils/zconf/Zaptel/Xpp/Xbus.pm
diff options
context:
space:
mode:
Diffstat (limited to 'xpp/utils/zconf/Zaptel/Xpp/Xbus.pm')
-rw-r--r--xpp/utils/zconf/Zaptel/Xpp/Xbus.pm13
1 files changed, 13 insertions, 0 deletions
diff --git a/xpp/utils/zconf/Zaptel/Xpp/Xbus.pm b/xpp/utils/zconf/Zaptel/Xpp/Xbus.pm
index 772e050..0dd6d84 100644
--- a/xpp/utils/zconf/Zaptel/Xpp/Xbus.pm
+++ b/xpp/utils/zconf/Zaptel/Xpp/Xbus.pm
@@ -64,6 +64,19 @@ sub new($$) {
bless $self, $pack;
$self->{NAME} or die "Missing xbus name";
my $prefix = "$proc_base/" . $self->{NAME};
+ my $usbfile = "$prefix/xpp_usb";
+ if(open(F, "$usbfile")) {
+ my $head = <F>;
+ chomp $head;
+ close F;
+ $head =~ s/^device: +([^, ]+)/$1/i or die;
+ my ($usb_bus, $usb_dev) = split('/', $head);
+ die unless defined($usb_bus) && defined($usb_dev);
+ $usb_bus =~ s/^0*//;
+ $usb_dev =~ s/^0*//;
+ $self->{USB_BUS} = $usb_bus;
+ $self->{USB_DEV} = $usb_dev;
+ }
@{$self->{XPDS}} = ();
foreach my $fqn (glob "$prefix/XPD-??") {
$fqn =~ s:$proc_base/::;