diff options
author | tzafrir <tzafrir@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2009-03-19 20:08:29 +0000 |
---|---|---|
committer | tzafrir <tzafrir@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2009-03-19 20:08:29 +0000 |
commit | d8562c778088ff6ab3383df5ceead41eff4bf124 (patch) | |
tree | 43e394ae225fd7183018c2ae08d3fb1e5bcb12cb /kernel/xpp/utils/xpp_sync | |
parent | b6b3226735f5e3b3fb000fa92daa7a574265c817 (diff) |
xpp: a massive backport from DAHDI. From Xorcom branch-rel-6839-r6908 .
Sun Mar 1 2009 Oron Peled <oron@actcom.co.il> - xpp.r6795
* Fix cases where the command_queue overflowed during initialization.
- Also add a 'command_queue_length' parameter to xpp.ko
* More migrations to sysfs:
- Add a 'transport' attribute to our astribank devices which
points to the usb device we use. E.g:
/sys/bus/astribanks/devices/xbus-00/transport is symlinked to
../../../../../../devices/pci0000:00/0000:00:10.4/usb5/5-4
- Move /proc/xpp/XBUS-??/XPD-??/span to
/sys/bus/xpds/devices/??:?:?/span
- Migrate from /proc/xpp/sync to:
/sys/bus/astribanks/drivers/xppdrv/sync
- New 'offhook' attribute in:
/sys/bus/xpds/devices/??:?:?/offhook
* PRI: change the "timing" priority to match the convention used by
other PRI cards -- I.e: lower numbers (not 0) have higher
priority.
* FXO:
- Power denial: create two module parameters instead of hard-coded
constants (power_denial_safezone, power_denial_minlen).
For sites that get non-standard power-denial signals from central
office on offhook.
- Don't hangup on power-denial, just notify Dahdi and wait for
- Fix caller-id detection for the case central office sends it before
first ring without any indication before.
Asterisk's desicion.
Mon, Dec 8 2008 Oron Peled <oron@actcom.co.il> - xpp.r6430
* PRI:
- Match our span clocking priorities (in system.conf)
to Digium -- this is a reversal of the previous state.
Now lower numbers (greater than 0) are better.
- Synchronization fixes for PRI ports other than 0.
- Fix T1 CRC for some countries (e.g: China).
* FXS: fix bug in VMWI detection if using old asterisk
which does not provide ZT_VMWI ioctl().
* FXO:
- Improve caller_id_style module parameter. This provide a workaround
for countries that send this information without any notification
(reverse polarity, ring, etc.)
- Don't force on-hook upon power-denial. So, loopstart devices
would ignore these as expected.
* Implement a flow-control to prevent user space (init_card_* scripts)
from pressuring our command queue.
git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.4@4631 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'kernel/xpp/utils/xpp_sync')
-rwxr-xr-x | kernel/xpp/utils/xpp_sync | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/kernel/xpp/utils/xpp_sync b/kernel/xpp/utils/xpp_sync index d5b340a..2840271 100755 --- a/kernel/xpp/utils/xpp_sync +++ b/kernel/xpp/utils/xpp_sync @@ -51,21 +51,9 @@ sub get_sorted_xpds() { push(@good_xpds, $xpd); } } - my @pri_nt_xpds = grep { $_->type =~ /(E1|T1|J1)_NT/; } @good_xpds; - my @pri_te_xpds = grep { $_->type =~ /(E1|T1|J1)_TE/; } @good_xpds; - my @bri_nt_xpds = grep { $_->type eq 'BRI_NT'; } @good_xpds; - my @bri_te_xpds = grep { $_->type eq 'BRI_TE'; } @good_xpds; - my @fxo_xpds = grep { $_->type eq 'FXO'; } @good_xpds; - my @fxs_xpds = grep { $_->type eq 'FXS'; } @good_xpds; - - # Sync Priority - return - @pri_te_xpds, - @bri_te_xpds, - @fxo_xpds, - @pri_nt_xpds, - @bri_nt_xpds, - @fxs_xpds; + my @xpd_prio = Zaptel::Xpp::Xpd::xpds_by_rank(@good_xpds); + #Zaptel::Xpp::Xpd::show_xpd_rank(@xpd_prio); + return @xpd_prio; } sub do_select(@) { @@ -108,7 +96,7 @@ sub show_sync() { my $xpdstr = '[ ' . $xbus->pretty_xpds . ' ]'; my $label = '[' . $xbus->label() . ']'; my $connector = '(' . $xbus->connector . ')'; - my $mark = ($curr_sync =~ /\d+/ and $xbus->num == $curr_sync)?"+":""; + my $mark = ($curr_sync =~ /^\d+$/ and $xbus->num == $curr_sync)?"+":""; my $padding = ' ' x (40 - length $xpdstr); printf " %1s %s %-25s %-14s %s\n", $mark, $xbus->name, $connector, $label, $xpdstr; } @@ -131,7 +119,7 @@ END } } -if($sync) { +if(defined $sync) { if($autoselect) { do_select(@sync_xpds); } else { @@ -207,8 +195,8 @@ In this example we see that the recommended xpp sync master is XBUS-02 - it is the first on the list. It is also the actual syncer, as we can see from the '+' beside it. -xpp_sync is normally called from both the zaptel init.d script and the -the Astribank udev script. The parameter it is called with defaults to +xpp_sync is normally called from the zaptel init.d script. +The parameter it is called with defaults to I<auto>, but it is possible to override that parameter (e.g: set it to I<zaptel>) through the value of XPP_SYNC in either /etc/defualt/zaptel or /etc/sysconfig/zaptel . |