Age | Commit message (Collapse) | Author |
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8120 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8119 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
This interface is only used to facilitate debugging.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8118 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
I intend to use the bool definition in the wctdm24xxp driver and don't want to
duplicate the definition.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8117 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Request_module_nowait is only useful when asynchronous initialization is used
(committed to trunk in r8094), and that can only happen in kernel version after
2.6.30. Some earlier kernels do not have the request_module_nowait interface.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8111 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8110 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Just removing the errors only. I left the warnings for now.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8104 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Add TDMoE Multi-Frame support as described in the article at the following URL:
http://www.thrallingpenguin.com/articles/tdmoe-mf.htm
TDMoE-MF is known to be implemented in hardware solutions from Redfone
Communications.
This patch additionally implements RCU within dahdi_dynamic to decrease lock
contention, latency, and context switching. Because of the use of RCU locking,
all prior known issues with loading and unloading of the modules are resolved,
providing the spans are shutdown with "dahdi_cfg -s".
It also contains an attempt, which works, at fixing a kernel change with
skb_linearize(). The use of kernel version number does not work with SuSE SLES
10, as it appears they have backported the 2.6.18 change in to their 2.6.16
version.
This merges in the work Jbenden did at:
http://svn.digium.com/svn/dahdi/team/jbenden/tdmoe-mf@8102
(issue #13483)
Patch by: JBenden
Reported by: JBenden
Tested by: JBenden
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8103 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Saves about 10us each interrupt on 3.06 GHz Xeon.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8097 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
On a 2.6.32.7 debug kernel with a TDM2400, this can save up to 30ms every second
of processing time without any appreciable impact on runtime performance since
most of the commands to the modules during normal operation are reads, and
therefore only one would be in each SFRAME anyway. The impact of this change is
less for TDM410 and TDM800 since they already limit the number of modules that
they look for queued commands for.
There is still more room for optimizing module command handling.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8096 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
This patch moves the majority of the buffer processing for the voicebus based
cards out of the interrupt handler and into a tasklet. When multiple cards are
running on the same CPU, and there was a latency condition that would cause them
to get behind, this now allows the tasklet to limit how many buffers are
processed on each card before giving the other card a chance to start working on
it's backlog.
Additionally, when the card detects a hard under run, instead of trying to fix
it up in the handling routine, it will now reschedule a work item that will
completely reset the descriptor rings.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8095 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
The 2.6.30 kernel provides support for asynchronous initialization. If running
on a kernel that supports this feature, let's add an option to use it in order
to speed up driver load times. Keep it off by default.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8094 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Revision 8003 added timeouts when loading the firmware, but there was an error
in the timeout logic and also the timeout wasn't waiting long enough.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8093 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8087 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
If the reset bit never clears, then just assume we cannot talk to the board and
error on the attach. DAHDI-515.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8080 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Added logic for both the single and dual/quad span cards for supporting
local loopback (virtual loopback plug), network loopback, network payload
loopback, loopup, and loopback transmitting.
* Added logic for the dual/quad span driver to support exporting the
performance and error counters including :
- errored seconds
- framing errors
- coding violations
- bipolar violations
- crc4 errors
- ebit errors
- fas errors
* Moved the error and performance counters into a substructure for all drivers
taking advantage of dahdi_span bpvcount.
* Modified the DAHDI_SPANSTAT ioctl interface, so I moved the old interface
to DAHDI_SPANSTAT_V1. The new interface comes with a nice, new shiny packed
struct dahdi_spaninfo.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8061 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Enable the internal timing of DAHDI.
* Disable building dahdi_dummy.
* Have dahdi provide the alias 'dahdi_dummy', to allow 'modprobe
dahdi_dummy' to still work.
The code of dahdi_dummy is still kept, as some people may need the extra
flexibility it provides. Those people are advised, though, to let us
know what features are missing from the core module.
Running 'modprobe dahdi_dummy' explicitly in a script or having
'dahdi_dummy' in /etc/dahdi/modules is thus also discourged.
This patch is intentionally small (stripped of documentation) to
simplify backporting. Documentation will follow.
Review: https://reviewboard.asterisk.org/r/518/
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8053 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Later versions of udev prefer installing (packaged) udev rules under
/lib/udev/rules.d . Let's make our path easier to override by packagers.
No functional change.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8040 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
* Most users use udev anyway
* Don't attempt to create any device files in the 'install' target.
* Setting DYNFS at build time should no longer be needed
- Though remains harmless.
* In order to create the static device files, use the script:
build_tools/make_static_devs
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8034 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8033 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
When there is a hard underrun, or in other words interrupts are held off for so
long that the board completely runs out of transmit descriptors, it was too easy
for the driver to be in a 'confused' state about the descriptors. This change
has the driver cleanup and reset the descriptor ring in this case so that we're
not racing against the interface while we resume normal operation.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8026 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Another commit that has formatting problems (mainly lines over 80 characters)
that I will fix in a later commit.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8025 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
NOTE: This change has formatting problems that I'll fix in a later commit, I
do not want to cause myself too much merge pain right here.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8024 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
This symbol first shows up in kernel version 2.6.25, but some distros have it
back ported into their tree.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8018 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
The error message will be printed higher up anyway and dev_err doesn't work
on < 2.6.18 in this module since this module isn't GPL. Building against a
2.6.18 tree that was prepared with "make modules_prepare" wasn't enough to catch
this problem since modpost can't run against the tree like that.
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=310a922d4307ed38b37982a6f93b11fdf3b8dcb1
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8017 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
If a combination of softunderun results in descriptors that aren't owned being
skipped in the vb_recover_tx_descriptor_list, it's possible for processing to
stop on a descriptor that isn't owned.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8010 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8008 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
If the user kills the modprobe process that is initializing the modules, exit as
soon as possible and do not look for any other modules.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8007 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Drops all users of module_printk in order to use 't1_info', which is a wrapper
for dev_info. Also updates debug_printk to also print the bus location
information.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8006 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8005 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Mostly making sure __user flag is caried through appropriately on user mode
access, but also two cases of removing dynamically sized arrays (which unduly
complicate using the kernel backtrace when you don't have a debugger attached
since you do not know how much data is really on the stack), and editing
dahdi_chan_register so that the lock/unlock context is clear.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8004 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
It is possible for poorly behaving hardware (and driver bugs) to lockup the
modprobe process by having it wait indefinitely for a command to complete that
never will. DAHDI-451.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8003 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Function is no longer needed since the 'struct voicebus' is now embedded in the
client contexts. This commit also contains a few trivial formatting changes for
sparse's sake.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8002 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
Acidentally removed...
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7985 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7984 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
The drv_data attached to the pci_dev is no longer the 'struct voicebus' pointer,
but is instead the 'struct wctdm' (or 'struct t1'), so the clients need to
manage the sysfs files themselves.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7983 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7982 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7981 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7980 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7979 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
(not intended to be installed)
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7964 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
the merge commits.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7941 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7934 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
irqmisses if we have to do a latency bump
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7933 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
clear bridges and such
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7932 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7931 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7930 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7929 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
ms_per_irq variable
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7928 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|
|
events such as firmware load
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7927 a0bf4364-ded3-4de4-8d8a-66a801d63aff
|