Age | Commit message (Collapse) | Author |
|
Part of preparation for adding additional callbacks to allow board
drivers to advertise and support gathering pre-echocan data from hardware
echocans.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8985 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
The vast majority of board drivers already keep the dahdi_span structure
in a driver specific structure. The others were easily converted. This
way board drivers can use the container_of macro to find what was
previously pointed to by the "pvt" member of the span. One less thing
to think about in the span structure.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8984 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
The echo canceler will now monitor if the receive signal goes over a
certain threshold, and if so, freezes its adaptation to prevent loss of
convergence. I.e. Fixes conditions where blowing into your handset
could result in echo. Additionally, 1.25 includes improvements for
handling when line conditions change from echo free to containing echo.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8983 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
In revision 8095, I had moved most of the buffer processing out of the
interrupt handler and into a tasklet. The intended result was to enable
multiple cards to interleave with one another. But once again I was
bitten by the fact that there are some systems that for one reason or
another do not process their tasklets in a timely enough manner for the
real-time nature of TDM processing. This commit moves this processing
back into the interrupt handler by default. It also limits the number
of frames that the interrupt handler will process at any given time
which appears to achieve the same intended result.
(closes issue #17289)
Tested by: alecdavis
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8982 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Will add an option to allow calling the deferred processing callback directly
in the interrupt handler. It appears there are some systems which still are
unable to process their tasklets in a timely fashion, especially if they get
pushed out to the ksoftirqd daemon.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8981 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8980 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Make the drivers a little more kexec friendly.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8979 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8975 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
disabled.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8969 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
required latency for the board in question.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8968 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* If we have vmwi_ioctl=N, we should initialize the vmwi_type
of all channels. We initialize it to HVAC
* Fix a regression, where curly braces around empty if()'s were removed.
* Also fix the VMWI_TYPE() macro, so it actually uses the 3'rd parameter.
(this didn't cause damage yet, as we only used HVAC so far)
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8943 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
mode.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8939 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8935 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
This is the second part of the partial fix in r8872, though each of the
two should work independently.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8931 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Fixes reading capabilities when the watchdog is set. In that case most
of the data, as seen, e.g. in output of 'astribank_allow', was 0xFF.
Xorcom rev: 7809
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8930 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
This avoids most cases of sending garbage at startup by setting each port
to tristate mode at init time (in the init script) and enable it back at
DAHDI_STARTUO (end of dahdi_cfg).
Upgrade note: if you have upgraded the files (including init script) but old
module is still loaded, you may end up with the port not getting ever
enabled and the line practically dead. In such a case, reload the new module.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8922 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Now get_xbus() receive and xbus number (not poiner) and uses xbus_num()
internally to map it to an xbus pointer + refcount increment. (this is
atomic)
* Migrate all obvious places that used xbus_num() to map bus number into a
pointer, so now they use get_xbus() + put_xbus() to aquire and release an
xbus.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8913 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* PRI devices always get SYNC-AB (never PLL, not even for NT)
* Fix Timing priority calculation accordingly.
* On PRI layer1 changes, elect_syncer() is called, so we have
re-election.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8909 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Don't let AB which are unplugged/replugged create duplicate XBUS's (if
asterisk don't close the original channels).
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8905 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Astribank devices now reside under their own top-level device.
* The USB device is still used as the 'transport'.
* This means the astribanks parents are NOT the USB devices.
* As a result, even after a USB disconnect, we have valid sysfs representation.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8904 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
When the USB device disconnects, we keep references to them to make sure
they don't disappear.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8900 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Don't attempt to reset the span flag DAHDI_FLAG_RBS.
At pre-registration we don't yet know if we're CAS or not.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8896 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Make sure we only consider T1-s to be potentially D4 (which requires
sending the bits twice). This fixes occasional command-queue floods in
E1 CAS.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8892 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8888 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Supports only our current NEON notification.
* No more global 'vmwineon' parameter:
- We expect asterisk to tell us by channel.
- If 'vmwi_ioctl' is not set (it is by default), that we revert
to FSK searching (expensive) and call directly our NEON code
(as before).
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8887 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Fixes a crash resulting from a race between disconnecting and connecting
Astribanks (on multi-core systems)
* Use get_xbus()/put_xbus() arround xbus_populate(), so a disconnect
in the middle won't release the xbus too early.
* Aquire all XPDs before starting initialization and release them
after it finishes (so we don't have up/down races among XPDs)
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8886 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* The worker member of 'struct xbus' is now an embedded struct xbus_workqueue.
* Replace wake_up() to wake_up_interruptible_all().
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8882 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Change refcount_xpd(): instead of returning a pointer to the atomic
counter, return directly its value (just like refcount_xbus())
* Add a refcount_xbus and refcount_xpd attributes to sysfs (for debugging)
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8878 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
This changeset should have no functional changes.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8877 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
When initializing registers for the "PRI" (E1/T1) module, in the case the
user has not explicitly asked for E1/T1 settings in xpp.conf (pri_protocol)
fall back to the current value, which is the build-time fall-back.
The value is read from sysfs.
Previously we implicitly assumed this value is E1.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8873 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8872 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
As best as I can tell, when CONFIG_NO_HZ is set along with CONFIG_HZ < 250, it
is possible for the system timer to exceed MAX_SOFTIRQ_RESTART. Tony
Mountifield alluded that this might be a problem in the below mailing list
posting, but when I was originally testing, I wasn't using CONFIG_NO_HZ and HZ
< 250.
http://www.mail-archive.com/asterisk-dev@lists.digium.com/msg37384.html
(closes issue #17620)
Reported by: seanbright
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8868 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8853 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8849 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8841 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
gcc 4.5.0 generates a warning on the changed lines and
http://gcc.gnu.org/ml/gcc/2004-10/msg00032.html explains why.
Essentially, the only thing guaranteed with the preincrement operator is that
the value will be incremented before the assignment. It's undefined where in
the sequence the mask will be applied.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8832 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
gcc 4.5.0 was generating a warning on the changed line, and the
discussion at http://gcc.gnu.org/ml/gcc/2004-10/msg00024.html explains
why.
Essentially, the only thing guaranteed with the preincrement operator is
that the value will be incremented before the assignment. It's
undefined where in the sequence the mask will be applied.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8831 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
suggestion)
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8805 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
RBS modes to be broken when using AMI coding. DAHDI-647.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8801 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
latency - the default number of ms of buffering to start off with
ms_per_irq - how often the card interrupts
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8768 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
usb_buffer_alloc has been replaced with usb_alloc_coherent , and likewise
usb_buffer_free has been replaced with usb_free_coherent. in kernels 2.6.34
the older names are proxies for the new ones, and in 2.6.35 the older names are gone.
This patch defines the new names for the old ones, for older kernel versions.
(closes issue #17383)
Reported by: Chainsaw
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8762 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
With kernel version >= 2.6.35-rc1, building failed with:
drivers/dahdi/voicebus/GpakCust.h:114: error: field ‘sem’ has incomplete type
(closes issue #17382)
Reported by: Chainsaw
Patches:
07-semaphore-include-not-optional.diff uploaded by Chainsaw (license 723)
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8758 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8689 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Fix the same issue as in r8550 , for dahdi_echocan_hpec.c:
With kernel 2.6.34 an explicit '#include <slab.h>' is required for
using kzalloc() and friends.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8680 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Fix the same issue as in r8550 , for dahdi_echocan_oslec.c:
With kernel 2.6.34-rc5 an explicit '#include <slab.h>' is required for using
kzalloc() and friends.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8674 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8673 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8653 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Modules that aren't installed should show at the same level as
modules that are installed. It could be confusing if the console
log level is set to 3 and only messages about which ports do not
have any modules installed show up on the console.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8642 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
CentOS4 has this backported in their 2.6.9 kernel.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8641 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Over-verbose instrumentation snuck in, on commit r8594
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8600 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|