Compare commits

..

9 Commits

Author SHA1 Message Date
Shaun Ruffell
23ae6bc83e Importing release summary for 2.4.1 release.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9818 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 21:42:32 +00:00
Shaun Ruffell
05019fbbbe Importing files for 2.4.1 release.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9817 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 21:42:24 +00:00
Shaun Ruffell
15dc8eb1a8 Creating tag for the release of dahdi-linux-2.4.1
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9816 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 21:41:35 +00:00
Shaun Ruffell
46c3427264 Importing release summary for 2.4.1 release.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9806 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 20:54:29 +00:00
Shaun Ruffell
fd45d2c292 Importing files for 2.4.1 release.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9805 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 20:54:21 +00:00
Shaun Ruffell
bd97911609 Creating tag for the release of dahdi-linux-2.4.1
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9804 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 20:53:36 +00:00
Shaun Ruffell
692c6f24cf Importing release summary for 2.4.1 release.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9786 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 20:05:59 +00:00
Shaun Ruffell
77a2531764 Importing files for 2.4.1 release.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9785 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 20:05:53 +00:00
Shaun Ruffell
1b14c0a2be Creating tag for the release of dahdi-linux-2.4.1
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.4.1@9784 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-03-03 20:04:41 +00:00
30 changed files with 830 additions and 487 deletions

View File

@@ -1 +1 @@
2.4.2
2.4.1

309
ChangeLog
View File

@@ -1,312 +1,3 @@
2012-03-21 Shaun Ruffell <sruffell@digium.com>
* dahdi-linux version 2.4.2 released.
2012-03-16 17:08 +0000 [r10530-10533] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/xpp/xproto.c: xpp: '%d' -> '%lu' when displaying
module_refcount on kernel versions >= 3.3 Upstream commit
bd77c047 "module: struct module_ref should contains long fields"
changed the return of module_refcount from int to unsigned long.
This change eliminates a warning from the string format
specifier. Signed-off-by: Shaun Ruffell <sruffell@digium.com>
Acked-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10485 Conflicts:
drivers/dahdi/xpp/xproto.c
* drivers/dahdi/xpp/xpd.h: xpp: Use 'bool' type for boolean module
parameters on kernel versions >= 2.6.31. Eliminates warnings that
are a result of upstream commit 72db395ffa "module_param: check
that bool parameters really are bool." Signed-off-by: Shaun
Ruffell <sruffell@digium.com> Acked-by: Tzafrir Cohen
<tzafrir.cohen@xorcom.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10484 Conflicts:
drivers/dahdi/xpp/xpd.h
* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Replace
'ndo_set_multicast_list' with 'set_rx_mode' The
ndo_set_multicast_list callback was removed in b81693d9, which
was first released in Linux Kernel 3.2-rc1 Signed-off-by: Shaun
Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10360
* drivers/dahdi/voicebus/GpakCust.h, include/dahdi/kernel.h: dahdi:
#include <linux/module.h> in dahdi/kernel.h and GpakCust.h Commit
de47725, first released in 3.2-rc1 removed module.h from some
kernel headers. Include it explicitly now. Resolves compilation
errors like: error: implicit declaration of function
'try_module_get' error: 'THIS_MODULE' undeclared (first use in
this function) error: implicit declaration of function
'module_put' Signed-off-by: Shaun Ruffell <sruffell@digium.com>
Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=10361
Conflicts: include/dahdi/kernel.h
2011-10-12 16:32 +0000 [r10222-10224] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/wct4xxp/base.c: wct4xxp: Fix condition where
hardware echo canceler erroneously mutes DTMF. Commit r9750
"wct4xxp: Reduce the memory footprint of the hardware
echocanceler.", as part of reducing the non-pageable memory
required to support the VPMOCT064 and VPMOCT128, disabled caching
of some hardware echocan registers. This resulted in more
physical reads to the echo canceler. These new read transactions
exposed an existing issue where sometimes reads could be turned
into writes which put a channel into an unintended state
preventing Asterisk from detecting any DTMF. This issue is
resolved by ensuring that the write signal to the Octasic part is
explicitly cleared between when the address is presented on the
bus and when the read and chip select signals are asserted. The
cost is an increase in the average time to enable / disable echo
cancellation by about 5 us on one Intel Xeon X3220 test machine
(~250ns increase per read from the Octasic part and 20 reads to
enable / disable a channel). This commit resolves a behavioral
regression first introduced in 2.5.0 and 2.4.1 which could take
many calls before revealing itself. This change only affects
cards with a VPMOCT128 or VPMOCT064 installed. Signed-off-by:
Shaun Ruffell <sruffell@digium.com> Acked-by: Doug Bailey
<dbailey@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10220
* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Allow G723 SID frames to
pass to the hardware decoder. The driver has, until now, dropped
G723 SID frames even though the firmware on the TC400/TCE400 can
handle them. Now let them on through. Reported-and-Tested-by:
Angel Carhuas <acarhuas@colinanet.com> Signed-off-by: Shaun
Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10218
* drivers/dahdi/wct4xxp/base.c: wct4xxp: Bug in timing cable with
different span density cards The logic loops through the static
cards[] array to determine timing, but the subloop was based off
the current card's numspans member. This could cause a null
dereference in the case where two cards of different span
densities were connected via timing cables. Reported-by: Doug
Bailey <dbailey@digium.com> Signed-off-by: Russ Meyerriecks
<rmeyerriecks@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10140
2011-08-28 09:42 +0000 [r10156] Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* drivers/dahdi/xpp/card_fxs.c: xpp: FXS: new 2+6 module has no
digital I/O ports This module is recognized via subtype==4
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
2011-08-11 19:54 +0000 [r10111-10114] Shaun Ruffell <sruffell@digium.com>
* include/dahdi/kernel.h: dahdi: Define HAVE_NET_DEVICE_OPS on
kernels > 2.6.29 HAVE_NET_DEVICE_OPS was defined in the mainline
kernel in commit 47fd5b83 which was first released in 2.6.29. Any
kernels after that will have those fields defined. Mainline
commit e2270ea62ae4d7a removed the feature test macros, so the
easiest thing to do is define HAVE_NET_DEVICE_OPS ourselves on
the kernels since it was committed. This change is needed to
compile against the 3.1 kernel. Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10109
* drivers/dahdi/dahdi_dynamic.c: dahdi_dynamic: Call dahdi_receive
in rx packet handler. Currently dahdi_receive is called on all
channels in the context of the master dynamic span. If one span
(not the master) receive two packets before the master span
received a packet, the older packet on the dynamic span would end
up lost because the "readchunk" for the channels would be
overwritten by the new packet. DAHLIN-245 Signed-off-by: Wagner
Gegler <wagner@aligera.com.br> (License #6268) Changed
dahdi_ec_chunk to dahdi_ec_span. Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10110 Conflicts:
drivers/dahdi/dahdi_dynamic.c
* drivers/dahdi/voicebus/voicebus_net.c,
drivers/dahdi/wctc4xxp/base.c: wctc4xxp, wcte12xp, wctdm24xxp:
Remove check for HAVE_NETDEV_PRIV DAHDI currently supports
kernels >= 2.6.9. netdev_priv() has been in the mainline kernel
since versions 2.6.6 so it's available in all the supported
kernels. This change is needed to compile against the 3.1 kernel.
Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10096
* drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h:
oct612x: Increase the size of some of the instance variables.
Revision 9750 "wct4xxp: Reduce the memory footprint of the
hardware echocanceler" reduced the number of bits used to store
some structure members. Some of the new field lengths were unable
to store all the possible values the API as used assigned to the
fields, resulting in channels never entering power down mode when
they were disabled like they were previously. The change for
byEchoOperationMode was found in testing the operation of the
VPMOCT032 which currently uses the same code. The others were
done via a review of the API doc. This change represents
negligable risk and contains no logic changes. It only increases
the memory footprint of the API instance in the kernel.
Signed-off-by: Doug Bailey <dbailey@digium.com> Acked-by: Shaun
Ruffell <sruffell@digium.com> Acked-by: Tzafrir Cohen
<tzafrir.cohen@xorcom.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10060
2011-07-27 16:27 +0000 [r10084] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Cleanup in-flight
commands when halting due to hardware error. On one system I was
seeing the board reset in the middle of a transaction. Any
commands that were on the response list when this would happen
would never be completed and the process would then be stuck in
an uninterruptible sleep. This change also prevents the driver
from sleeping in timer context, which would result in a kernel
panic. This change at least lets an error message propogate back
to the user. DAHDI-880 Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10082 Conflicts:
drivers/dahdi/wctc4xxp/base.c
2011-07-22 18:03 +0000 [r10080] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Prevent null pointer
dereference on spanconfig In the rare case where spanconfig is
called while there is pending data on the hdlc channel, the
hdlc_getbuf interrupt could try to read from the hdlc buffer
before the channel was fully setup. This could potentially result
in a null pointer dereference. This condition has existed since
the creation of the wcb4xxp driver. Signed-off-by: Russ
Meyerriecks <rmeyerriecks@digium.com> Signed-off-by: Shaun
Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10079
2011-07-19 19:45 +0000 [r10049] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/wcte12xp/base.c: wcte12xp: Close a potential race
on driver unload. The shutdown logic requires that all CPUs see
that the INITIALIZED bit has been cleared. Otherwise it may be
possible for the workqueue to run after the hardware resources
have been released. Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Acked-by: Russ Meyerriecks
<rmeyerriecks@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10047
2011-06-29 18:36 +0000 [r10004-10005] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Ensure battery drops
on FXS hangups honor the channel otimer. If an FXS port is
configured to use kewl start signalling, when the FXS port is
"hungup" it should drop battery for 500ms so that any attached
devices can detect that the remote side has disconnected. The
wctdm24xxp driver since version 2.4.0 was only dropping battery
for ~5-10 ms because it would set "open" on the line, but then
the next time it read the line feed register state, it was
setting the LINE feed register to the idle state. This change
checks if the line is forced open before setting the FXS port
back "onhook" so as to not turn on battery prematurely. This
fixes a regression introduced in r9070 "wctdm24xxp: Prevent FXS
Proslic staying in "Forward/Reverse OnHookTransfer...".
DAHDI-849. Checking for open on the line feed registered was
originally suggested by Alec Davis. Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=10002
* drivers/dahdi/dahdi-base.c: dahdi: Fix compilation on Linux
2.6.26 w/CONFIG_DAHDI_NET. The hdlc_stats function was removed
from the mainline kernel in commit
198191c4a7ce4daba379608fb38b9bc5a4eedc61 [1] which was first
released in linux 2.6.27. [1]
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=198191c4a7ce4
(closes issue #19354) Reported by: biohumanoid Signed-off-by:
Shaun Ruffell <sruffell@digium.com> Acked-by: Tzafrir Cohen
<tzafrir.cohen@xorcom.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9934
2011-05-31 13:16 +0000 [r9926] Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* drivers/dahdi/xpp/xbus-core.c: xpp: empty labels are not
duplicate Some older Asttribanks had an empty label string. They
should be ignored when testing for a duplicate label at device
probe time. While we're at it, reduce panic level in the notice.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
2011-05-27 16:48 +0000 [r9922-9924] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/xpp/parport_debug.c, drivers/dahdi/xpp/xbus-pcm.c,
drivers/dahdi/dahdi_dynamic_loc.c,
drivers/dahdi/dahdi_transcode.c, drivers/dahdi/dahdi_dynamic.c,
drivers/dahdi/dahdi_dynamic_eth.c, drivers/dahdi/xpp/mmapdrv.c,
drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/dahdi-base.c,
drivers/dahdi/tor2.c, drivers/dahdi/wcte12xp/base.c,
drivers/dahdi/xpp/xpp_usb.c, include/dahdi/kernel.h,
drivers/dahdi/wct4xxp/base.c, drivers/dahdi/wcte12xp/wcte12xp.h,
drivers/dahdi/dahdi_dynamic_ethmf.c: Move test for
DEFINE_SPINLOCK into include/dahdi/kernel.h The check for
DEFINE_SPINLOCK was spread throughout the source tree. If not
defined we can just define it in inlucde/dahdi/kernel.h. Now
include/dahdi/kernel.h is the only place that references
SPIN_LOCK_UNLOCKED (which breaks lockdep checking if
DEFINE_SPINLOCK is otherwise defined in the kernel).
Signed-off-by: Shaun Ruffell <sruffell@digium.com> Acked-by:
Kinsey Moore <kmoore@digium.com> Acked-by: Russ Meyerriecks
<rmeyerriecks@digium.com> Acked-by: Tzafrir Cohen
<tzafrir.cohen@xorcom.com> Review:
https://reviewboard.asterisk.org/r/940/ Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9411
* drivers/dahdi/dahdi-base.c: dahdi: Enable DTMF A,B,C, and D
digits. This appears to be an old regression from zaptel r4063
[1] that would prevent DAHDI from generating the A,B,C, and D
digits due to unintentional drop through on a case statement. [1]
http://svn.asterisk.org/view/zaptel?view=revision&revision=4063
Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9912
* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Updating copyright. The
wcb4xxp driver was edited this year. Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9911
2011-04-14 20:32 +0000 [r9904] Shaun Ruffell <sruffell@digium.com>
* drivers/dahdi/wcte12xp/base.c: wcte12xp: If we cannot read the
mode selection pins fail the module load. Alexandre reported that
on a particular server he would get a server crash when loading
the wcte12xp driver after receiving a line about a timeout when
trying to read the mode selection jumpers. If the driver times
out when trying to read the mode selection bits there is a
serious problem and it should not try to continue on with
configuration / registration. Reported-and-Tested-by: Alexandre
Abreu <alexandre.abreu@redt.com.br> Signed-off-by: Shaun Ruffell
<sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9902
2011-04-11 18:45 +0000 [r9895] Shaun Ruffell <sruffell@digium.com>
* include/dahdi/kernel.h: dahdi: Do not define dev_name if already
backported. RHEL 5.6 has backported dev_name in
include/dahdi/devices.h. We now need to check for a back ported
definition before defining our own version on pre 2.6.26 kernels.
(closes issue #18992) Reported by: ndupeux, AlexCeli Tested by:
elguero Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
Acked-by: Shaun Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9894
2011-04-11 Shaun Ruffell <sruffell@digium.com>
* dahdi-linux version 2.4.1.2 released.
2011-04-11 18:45 +0000 [r9895] Shaun Ruffell <sruffell@digium.com>
* include/dahdi/kernel.h: dahdi: Do not define dev_name if already
backported. RHEL 5.6 has backported dev_name in
include/dahdi/devices.h. We now need to check for a back ported
definition before defining our own version on pre 2.6.26 kernels.
(closes issue #18992) Reported by: ndupeux, AlexCeli Tested by:
elguero Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
Acked-by: Shaun Ruffell <sruffell@digium.com> Origin:
http://svnview.digium.com/svn/dahdi?view=rev&rev=9894
2011-03-31 Shaun Ruffell <sruffell@digium.com>
* dahdi-linux version 2.4.1.1 released.
2011-03-15 19:15 +0000 [r9828] Shaun Ruffell <sruffell@digium.com>
* wctdm24xxp: Fix regression with LEDS on TDM410.
2011-03-03 Shaun Ruffell <sruffell@digium.com>
* dahdi-linux version 2.4.1 released.

View File

@@ -0,0 +1,237 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Release Summary - dahdi-linux-2.4.1</title></head>
<body>
<h1 align="center"><a name="top">Release Summary</a></h1>
<h3 align="center">dahdi-linux-2.4.1</h3>
<h3 align="center">Date: 2011-03-03</h3>
<h3 align="center">&lt;asteriskteam@digium.com&gt;</h3>
<hr/>
<h2 align="center">Table of Contents</h2>
<ol>
<li><a href="#summary">Summary</a></li>
<li><a href="#contributors">Contributors</a></li>
<li><a href="#issues">Closed Issues</a></li>
<li><a href="#commits">Other Changes</a></li>
<li><a href="#diffstat">Diffstat</a></li>
</ol>
<hr/>
<a name="summary"><h2 align="center">Summary</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This release includes only bug fixes. The changes included were made only to address problems that have been identified in this release series. Users should be able to safely upgrade to this version if this release series is already in use. Users considering upgrading from a previous release series are strongly encouraged to review the UPGRADE.txt document as well as the CHANGES document for information about upgrading to this release series.</p>
<p>The data in this summary reflects changes that have been made since the previous release, dahdi-linux-2.4.0.</p>
<hr/>
<a name="contributors"><h2 align="center">Contributors</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This table lists the people who have submitted code, those that have tested patches, as well as those that reported issues on the issue tracker that were resolved in this release. For coders, the number is how many of their patches (of any size) were committed into this release. For testers, the number is the number of times their name was listed as assisting with testing a patch. Finally, for reporters, the number is the number of issues that they reported that were closed by commits that went into this release.</p>
<table width="100%" border="0">
<tr>
<td width="33%"><h3>Coders</h3></td>
<td width="33%"><h3>Testers</h3></td>
<td width="33%"><h3>Reporters</h3></td>
</tr>
<tr valign="top">
<td>
51 sruffell<br/>
1 bsexton<br/>
1 jkroon<br/>
1 mattf<br/>
1 Max<br/>
1 msink<br/>
1 tzafrir<br/>
1 vvv<br/>
1 ys<br/>
</td>
<td>
1 foxfire<br/>
</td>
<td>
2 Max Khon<br/>
1 avarvit<br/>
1 bsexton<br/>
1 foxfire<br/>
1 glen201<br/>
1 jkroon<br/>
1 msink<br/>
1 rde42<br/>
1 tzafrir<br/>
1 vvv<br/>
1 ys<br/>
</td>
</tr>
</table>
<hr/>
<a name="issues"><h2 align="center">Closed Issues</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a list of all issues from the issue tracker that were closed by changes that went into this release.</p>
<h3>Category: General</h3><br/>
<a href="https://issues.asterisk.org/view.php?id=16063">#16063</a>: [patch] tar fails to chown in centos 4.3<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9673">9673</a><br/>
Reporter: tzafrir<br/>
Coders: sruffell<br/>
<br/>
<h3>Category: dahdi (the module)</h3><br/>
<a href="https://issues.asterisk.org/view.php?id=15908">#15908</a>: [patch] dahdi_echocan_events: anonymous member in dahdi_echocan_events union<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9665">9665</a><br/>
Reporter: ys<br/>
Coders: ys<br/>
<br/>
<a href="https://issues.asterisk.org/view.php?id=15927">#15927</a>: [patch] Fix 'void *' pointer arithmetic warnings in echo cancellation drivers<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9664">9664</a><br/>
Reporter: Max Khon<br/>
Coders: Max<br/>
<br/>
<a href="https://issues.asterisk.org/view.php?id=16143">#16143</a>: [patch] make_version scripts detects svn incorrectly<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9759">9759</a><br/>
Reporter: Max Khon<br/>
Coders: sruffell<br/>
<br/>
<a href="https://issues.asterisk.org/view.php?id=17857">#17857</a>: [patch] CONFIG_DAHDI_NET compiling error<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9655">9655</a><br/>
Reporter: msink<br/>
Coders: msink<br/>
<br/>
<a href="https://issues.asterisk.org/view.php?id=17990">#17990</a>: [patch] dahdi-linux fails to compile in ppp support if kernel ppp support compiled as a module<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9669">9669</a><br/>
Reporter: jkroon<br/>
Coders: jkroon<br/>
<br/>
<a href="https://issues.asterisk.org/view.php?id=18422">#18422</a>: [patch] dahdi-base locks channel-exporting module in kernel if channel open fails<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9682">9682</a><br/>
Reporter: avarvit<br/>
Coders: sruffell<br/>
<br/>
<h3>Category: dahdi_dummy</h3><br/>
<a href="https://issues.asterisk.org/view.php?id=17959">#17959</a>: dahdi_dummy fails compile on Fedora 13 64-bit with kzalloc implicit declaration error<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9658">9658</a><br/>
Reporter: glen201<br/>
Coders: sruffell<br/>
<br/>
<h3>Category: wcb4xxp</h3><br/>
<a href="https://issues.asterisk.org/view.php?id=14834">#14834</a>: [patch] HDLC packets doesn't pass over D-channel (driver wcb4xxp, card B410)<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9689">9689</a><br/>
Reporter: vvv<br/>
Coders: vvv<br/>
<br/>
<h3>Category: wctdm24xxp</h3><br/>
<a href="https://issues.asterisk.org/view.php?id=16894">#16894</a>: fwringdetect option is ineffective<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9674">9674</a><br/>
Reporter: rde42<br/>
Coders: sruffell<br/>
<br/>
<a href="https://issues.asterisk.org/view.php?id=18184">#18184</a>: [patch] FXS Module detection fails<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9675">9675</a><br/>
Reporter: bsexton<br/>
Coders: bsexton<br/>
<br/>
<h3>Category: wcte12xp</h3><br/>
<a href="https://issues.asterisk.org/view.php?id=18142">#18142</a>: [patch] The TE122 and dadi produces an unusual high load<br/>
Revision: <a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9683">9683</a><br/>
Reporter: foxfire<br/>
Testers: foxfire<br/>
Coders: sruffell<br/>
<br/>
<hr/>
<a name="commits"><h2 align="center">Commits Not Associated with an Issue</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a list of all changes that went into this release that did not directly close an issue from the issue tracker. The commits may have been marked as being related to an issue. If that is the case, the issue numbers are listed here, as well.</p>
<table width="100%" border="1">
<tr><td><b>Revision</b></td><td><b>Author</b></td><td><b>Summary</b></td><td><b>Issues Referenced</b></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9652">9652</a></td><td>sruffell</td><td>Creating 2.4 branch.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9653">9653</a></td><td>sruffell</td><td>Turning on merge tracking.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9654">9654</a></td><td>sruffell</td><td>wct4xxp: Update span-local struct with timing info</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9656">9656</a></td><td>sruffell</td><td>README: Remove references to dahdi_dummy.</td>
<td><a href="https://issues.asterisk.org/view.php?id=17959">#17959</a></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9657">9657</a></td><td>sruffell</td><td>wcte11xp, wcte12xp: Fix a long-standing issue with shutdown</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9659">9659</a></td><td>sruffell</td><td>dahdi-base: All channels for a span are now unconfigured on shutdown</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9660">9660</a></td><td>sruffell</td><td>wcte12xp, wctdm24xxp: Remove redundant vb_enable_io_access.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9661">9661</a></td><td>sruffell</td><td>wcte12xp, wctdm24xxp: Add call to 'pci_set_mwi' on initialization.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9662">9662</a></td><td>sruffell</td><td>dahdi: Be more tolerant of surprise removal of channels.</td>
<td><a href="https://issues.asterisk.org/view.php?id=17669">#17669</a></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9663">9663</a></td><td>sruffell</td><td>wctdm24xxp: Add optional FXO digital loopback if DEBUG is defined.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9666">9666</a></td><td>sruffell</td><td>xpp: Fixes init error for PRI devices with < 4 ports</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9667">9667</a></td><td>sruffell</td><td>vpmadt032: Honor the CONFIG_DAHDI_NO_ECHOCAN_DISABLE flag.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9668">9668</a></td><td>sruffell</td><td>vpmadt032: Remove potential endless waits when resetting.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9670">9670</a></td><td>sruffell</td><td>dahdi: Make CONFIG_DAHDI_PPP off by default.</td>
<td><a href="https://issues.asterisk.org/view.php?id=17990">#17990</a></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9671">9671</a></td><td>sruffell</td><td>wct4xxp: Drop usage of 'volatile' qualifier.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9672">9672</a></td><td>sruffell</td><td>wcte12xp, wctdm24xxp: Do not rely on polling main memory.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9676">9676</a></td><td>sruffell</td><td>Remove mutex emulation</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9677">9677</a></td><td>sruffell</td><td>live_dahdi: only check for TOOLS_DIR when used</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9678">9678</a></td><td>sruffell</td><td>wctdm24xxp, wcte12xp: Close a few potential resource assignment leaks.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9679">9679</a></td><td>sruffell</td><td>xpd_pri: ignore DAHDI_VMWI and DAHDIVMWI_CONFIG</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9680">9680</a></td><td>sruffell</td><td>xpd_pri: Remove pointless hooksig span op</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9681">9681</a></td><td>sruffell</td><td>live_dahdi: fix usage of xpp.conf</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9684">9684</a></td><td>sruffell</td><td>wctdm24xxp, wcte12xp: Add more descriptive message on a failed reset.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9685">9685</a></td><td>sruffell</td><td>wctdm24xxp, wcte12xp: Lock interrupts when recovering from an underrun.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9686">9686</a></td><td>sruffell</td><td>wct4xxp: Close a memory leak in the VPM450 error path.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9687">9687</a></td><td>sruffell</td><td>wctdm24xxp, wcte12xp: Disable PCI read-line multiple command.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9688">9688</a></td><td>sruffell</td><td>wcte12xp, wctdm24xxp: Do not call pci_set_drvdata after device initialization.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9690">9690</a></td><td>sruffell</td><td>dahdi: If mutexes are not available use semaphores instead.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9691">9691</a></td><td>sruffell</td><td>"struct pci_device_id[]" -> "DEFINE_PCI_DEVICE_TABLE"</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9692">9692</a></td><td>sruffell</td><td>wcte12xp: Remove unused functions from t1_span_ops.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9693">9693</a></td><td>sruffell</td><td>dahdi: Add error if CONFIG_BKL is not defined</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9694">9694</a></td><td>sruffell</td><td>README: clarify required kernel configuration</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9695">9695</a></td><td>sruffell</td><td>wct4xxp: Perform an extended reset on PCI-Express cards by default.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9696">9696</a></td><td>sruffell</td><td>Updating the svnmerge-integrated information.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9702">9702</a></td><td>mattf</td><td>Fix for bugs in timing selection when B410P card is not the first configured card in system.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9723">9723</a></td><td>sruffell</td><td>dahdi: Add '+' on KMAKE definition to enable parallel make.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9724">9724</a></td><td>sruffell</td><td>wctdm24xxp: Remove code for unsupported modules.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9725">9725</a></td><td>sruffell</td><td>dahdi: Experimentally remove dependency on the Big Kernel Lock.</td>
<td><a href="https://issues.asterisk.org/view.php?id=18604">#18604</a></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9726">9726</a></td><td>sruffell</td><td>syncing svnmerge-integrated.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9745">9745</a></td><td>tzafrir</td><td>live_dahdi: Fix regression from r9508</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9746">9746</a></td><td>sruffell</td><td>dahdi: Add '#include <linux/kobject.h>' in dahdi/kernel.h</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9753">9753</a></td><td>sruffell</td><td>wct4xxp: Reduce the memory footprint of the hardware echocanceler.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9754">9754</a></td><td>sruffell</td><td>wct4xxp: Reduce stack usage in oct612x API.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9755">9755</a></td><td>sruffell</td><td>wct4xxp: Do not lock interrupts while loading the VPM firmware.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9757">9757</a></td><td>sruffell</td><td>dahdi: Generate include/dahdi/version.h when building in a git repository.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9758">9758</a></td><td>sruffell</td><td>make_version: '[[' -> '[' since it's not a bash script.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9760">9760</a></td><td>sruffell</td><td>make_version: Use 'git rev-parse' if only looking for a sha5.</td>
<td></td></tr></table>
<hr/>
<a name="diffstat"><h2 align="center">Diffstat Results</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a summary of the changes to the source code that went into this release that was generated using the diffstat utility.</p>
<pre>
Makefile | 6
README | 37
build_tools/live_dahdi | 17
build_tools/make_version | 64 +
drivers/dahdi/dahdi-base.c | 213 +++-
drivers/dahdi/dahdi_dummy.c | 1
drivers/dahdi/dahdi_echocan_kb1.c | 6
drivers/dahdi/dahdi_echocan_mg2.c | 12
drivers/dahdi/firmware/Makefile | 4
drivers/dahdi/hpec/dahdi_echocan_hpec.c | 2
drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h | 233 ++---
drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_open_inst.h | 2
drivers/dahdi/oct612x/include/oct6100api/oct6100_defines.h | 19
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c | 453 ++++------
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_open.c | 13
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_stats.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_conf_bridge.c | 20
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_events.c | 5
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_interrupts.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_phasing_tsst.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_playout_buf.c | 69 -
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tlv.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_miscellaneous_priv.h | 172 ---
drivers/dahdi/pciradio.c | 2
drivers/dahdi/tor2-hw.h | 2
drivers/dahdi/voicebus/GpakCust.c | 75 +
drivers/dahdi/voicebus/voicebus.c | 98 +-
drivers/dahdi/vpmadt032_loader/dahdi_vpmadt032_loader.c | 28
drivers/dahdi/wcb4xxp/base.c | 38
drivers/dahdi/wcfxo.c | 2
drivers/dahdi/wct1xxp.c | 2
drivers/dahdi/wct4xxp/base.c | 70 -
drivers/dahdi/wct4xxp/vpm450m.c | 36
drivers/dahdi/wctc4xxp/base.c | 4
drivers/dahdi/wctdm.c | 2
drivers/dahdi/wctdm24xxp/base.c | 364 +-------
drivers/dahdi/wctdm24xxp/wctdm24xxp.h | 29
drivers/dahdi/wctdm24xxp/xhfc.c | 4
drivers/dahdi/wcte11xp.c | 3
drivers/dahdi/wcte12xp/base.c | 53 -
drivers/dahdi/xpp/card_pri.c | 7
drivers/dahdi/xpp/init_card_4_30 | 2
drivers/dahdi/xpp/xbus-core.c | 2
drivers/dahdi/xpp/xpp_usb.c | 4
include/dahdi/dahdi_config.h | 8
include/dahdi/kernel.h | 24
46 files changed, 996 insertions(+), 1215 deletions(-)
</pre><br/>
<hr/>
</body>
</html>

View File

@@ -0,0 +1,459 @@
Release Summary
dahdi-linux-2.4.1
Date: 2011-03-03
<asteriskteam@digium.com>
--------------------------------------------------------------------------
Table of Contents
 1. [1]Summary
 2. [2]Contributors
 3. [3]Closed Issues
 4. [4]Other Changes
 5. [5]Diffstat
--------------------------------------------------------------------------
Summary
[6][Back to Top]
This release includes only bug fixes. The changes included were made only
to address problems that have been identified in this release series.
Users should be able to safely upgrade to this version if this release
series is already in use. Users considering upgrading from a previous
release series are strongly encouraged to review the UPGRADE.txt document
as well as the CHANGES document for information about upgrading to this
release series.
The data in this summary reflects changes that have been made since the
previous release, dahdi-linux-2.4.0.
--------------------------------------------------------------------------
Contributors
[7][Back to Top]
This table lists the people who have submitted code, those that have
tested patches, as well as those that reported issues on the issue tracker
that were resolved in this release. For coders, the number is how many of
their patches (of any size) were committed into this release. For testers,
the number is the number of times their name was listed as assisting with
testing a patch. Finally, for reporters, the number is the number of
issues that they reported that were closed by commits that went into this
release.
Coders Testers Reporters
51 sruffell 1 foxfire 2 Max Khon
1 bsexton 1 avarvit
1 jkroon 1 bsexton
1 mattf 1 foxfire
1 Max 1 glen201
1 msink 1 jkroon
1 tzafrir 1 msink
1 vvv 1 rde42
1 ys 1 tzafrir
1 vvv
1 ys
--------------------------------------------------------------------------
Closed Issues
[8][Back to Top]
This is a list of all issues from the issue tracker that were closed by
changes that went into this release.
Category: General
[9]#16063: [patch] tar fails to chown in centos 4.3
Revision: [10]9673
Reporter: tzafrir
Coders: sruffell
Category: dahdi (the module)
[11]#15908: [patch] dahdi_echocan_events: anonymous member in
dahdi_echocan_events union
Revision: [12]9665
Reporter: ys
Coders: ys
[13]#15927: [patch] Fix 'void *' pointer arithmetic warnings in echo
cancellation drivers
Revision: [14]9664
Reporter: Max Khon
Coders: Max
[15]#16143: [patch] make_version scripts detects svn incorrectly
Revision: [16]9759
Reporter: Max Khon
Coders: sruffell
[17]#17857: [patch] CONFIG_DAHDI_NET compiling error
Revision: [18]9655
Reporter: msink
Coders: msink
[19]#17990: [patch] dahdi-linux fails to compile in ppp support if kernel
ppp support compiled as a module
Revision: [20]9669
Reporter: jkroon
Coders: jkroon
[21]#18422: [patch] dahdi-base locks channel-exporting module in kernel if
channel open fails
Revision: [22]9682
Reporter: avarvit
Coders: sruffell
Category: dahdi_dummy
[23]#17959: dahdi_dummy fails compile on Fedora 13 64-bit with kzalloc
implicit declaration error
Revision: [24]9658
Reporter: glen201
Coders: sruffell
Category: wcb4xxp
[25]#14834: [patch] HDLC packets doesn't pass over D-channel (driver
wcb4xxp, card B410)
Revision: [26]9689
Reporter: vvv
Coders: vvv
Category: wctdm24xxp
[27]#16894: fwringdetect option is ineffective
Revision: [28]9674
Reporter: rde42
Coders: sruffell
[29]#18184: [patch] FXS Module detection fails
Revision: [30]9675
Reporter: bsexton
Coders: bsexton
Category: wcte12xp
[31]#18142: [patch] The TE122 and dadi produces an unusual high load
Revision: [32]9683
Reporter: foxfire
Testers: foxfire
Coders: sruffell
--------------------------------------------------------------------------
Commits Not Associated with an Issue
[33][Back to Top]
This is a list of all changes that went into this release that did not
directly close an issue from the issue tracker. The commits may have been
marked as being related to an issue. If that is the case, the issue
numbers are listed here, as well.
+------------------------------------------------------------------------+
| Revision | Author | Summary | Issues |
| | | | Referenced |
|----------+----------+-------------------------------------+------------|
| [34]9652 | sruffell | Creating 2.4 branch. | |
|----------+----------+-------------------------------------+------------|
| [35]9653 | sruffell | Turning on merge tracking. | |
|----------+----------+-------------------------------------+------------|
| [36]9654 | sruffell | wct4xxp: Update span-local struct | |
| | | with timing info | |
|----------+----------+-------------------------------------+------------|
| [37]9656 | sruffell | README: Remove references to | [38]#17959 |
| | | dahdi_dummy. | |
|----------+----------+-------------------------------------+------------|
| [39]9657 | sruffell | wcte11xp, wcte12xp: Fix a | |
| | | long-standing issue with shutdown | |
|----------+----------+-------------------------------------+------------|
| [40]9659 | sruffell | dahdi-base: All channels for a span | |
| | | are now unconfigured on shutdown | |
|----------+----------+-------------------------------------+------------|
| [41]9660 | sruffell | wcte12xp, wctdm24xxp: Remove | |
| | | redundant vb_enable_io_access. | |
|----------+----------+-------------------------------------+------------|
| [42]9661 | sruffell | wcte12xp, wctdm24xxp: Add call to | |
| | | 'pci_set_mwi' on initialization. | |
|----------+----------+-------------------------------------+------------|
| [43]9662 | sruffell | dahdi: Be more tolerant of surprise | [44]#17669 |
| | | removal of channels. | |
|----------+----------+-------------------------------------+------------|
| | | wctdm24xxp: Add optional FXO | |
| [45]9663 | sruffell | digital loopback if DEBUG is | |
| | | defined. | |
|----------+----------+-------------------------------------+------------|
| [46]9666 | sruffell | xpp: Fixes init error for PRI | |
| | | devices with < 4 ports | |
|----------+----------+-------------------------------------+------------|
| | | vpmadt032: Honor the | |
| [47]9667 | sruffell | CONFIG_DAHDI_NO_ECHOCAN_DISABLE | |
| | | flag. | |
|----------+----------+-------------------------------------+------------|
| [48]9668 | sruffell | vpmadt032: Remove potential endless | |
| | | waits when resetting. | |
|----------+----------+-------------------------------------+------------|
| [49]9670 | sruffell | dahdi: Make CONFIG_DAHDI_PPP off by | [50]#17990 |
| | | default. | |
|----------+----------+-------------------------------------+------------|
| [51]9671 | sruffell | wct4xxp: Drop usage of 'volatile' | |
| | | qualifier. | |
|----------+----------+-------------------------------------+------------|
| [52]9672 | sruffell | wcte12xp, wctdm24xxp: Do not rely | |
| | | on polling main memory. | |
|----------+----------+-------------------------------------+------------|
| [53]9676 | sruffell | Remove mutex emulation | |
|----------+----------+-------------------------------------+------------|
| [54]9677 | sruffell | live_dahdi: only check for | |
| | | TOOLS_DIR when used | |
|----------+----------+-------------------------------------+------------|
| | | wctdm24xxp, wcte12xp: Close a few | |
| [55]9678 | sruffell | potential resource assignment | |
| | | leaks. | |
|----------+----------+-------------------------------------+------------|
| [56]9679 | sruffell | xpd_pri: ignore DAHDI_VMWI and | |
| | | DAHDIVMWI_CONFIG | |
|----------+----------+-------------------------------------+------------|
| [57]9680 | sruffell | xpd_pri: Remove pointless hooksig | |
| | | span op | |
|----------+----------+-------------------------------------+------------|
| [58]9681 | sruffell | live_dahdi: fix usage of xpp.conf | |
|----------+----------+-------------------------------------+------------|
| | | wctdm24xxp, wcte12xp: Add more | |
| [59]9684 | sruffell | descriptive message on a failed | |
| | | reset. | |
|----------+----------+-------------------------------------+------------|
| | | wctdm24xxp, wcte12xp: Lock | |
| [60]9685 | sruffell | interrupts when recovering from an | |
| | | underrun. | |
|----------+----------+-------------------------------------+------------|
| [61]9686 | sruffell | wct4xxp: Close a memory leak in the | |
| | | VPM450 error path. | |
|----------+----------+-------------------------------------+------------|
| [62]9687 | sruffell | wctdm24xxp, wcte12xp: Disable PCI | |
| | | read-line multiple command. | |
|----------+----------+-------------------------------------+------------|
| | | wcte12xp, wctdm24xxp: Do not call | |
| [63]9688 | sruffell | pci_set_drvdata after device | |
| | | initialization. | |
|----------+----------+-------------------------------------+------------|
| [64]9690 | sruffell | dahdi: If mutexes are not available | |
| | | use semaphores instead. | |
|----------+----------+-------------------------------------+------------|
| [65]9691 | sruffell | "struct pci_device_id[]" -> | |
| | | "DEFINE_PCI_DEVICE_TABLE" | |
|----------+----------+-------------------------------------+------------|
| [66]9692 | sruffell | wcte12xp: Remove unused functions | |
| | | from t1_span_ops. | |
|----------+----------+-------------------------------------+------------|
| [67]9693 | sruffell | dahdi: Add error if CONFIG_BKL is | |
| | | not defined | |
|----------+----------+-------------------------------------+------------|
| [68]9694 | sruffell | README: clarify required kernel | |
| | | configuration | |
|----------+----------+-------------------------------------+------------|
| [69]9695 | sruffell | wct4xxp: Perform an extended reset | |
| | | on PCI-Express cards by default. | |
|----------+----------+-------------------------------------+------------|
| [70]9696 | sruffell | Updating the svnmerge-integrated | |
| | | information. | |
|----------+----------+-------------------------------------+------------|
| | | Fix for bugs in timing selection | |
| [71]9702 | mattf | when B410P card is not the first | |
| | | configured card in system. | |
|----------+----------+-------------------------------------+------------|
| [72]9723 | sruffell | dahdi: Add '+' on KMAKE definition | |
| | | to enable parallel make. | |
|----------+----------+-------------------------------------+------------|
| [73]9724 | sruffell | wctdm24xxp: Remove code for | |
| | | unsupported modules. | |
|----------+----------+-------------------------------------+------------|
| [74]9725 | sruffell | dahdi: Experimentally remove | [75]#18604 |
| | | dependency on the Big Kernel Lock. | |
|----------+----------+-------------------------------------+------------|
| [76]9726 | sruffell | syncing svnmerge-integrated. | |
|----------+----------+-------------------------------------+------------|
| [77]9745 | tzafrir | live_dahdi: Fix regression from | |
| | | r9508 | |
|----------+----------+-------------------------------------+------------|
| [78]9746 | sruffell | dahdi: Add '#include ' in | |
| | | dahdi/kernel.h | |
|----------+----------+-------------------------------------+------------|
| | | wct4xxp: Reduce the memory | |
| [79]9753 | sruffell | footprint of the hardware | |
| | | echocanceler. | |
|----------+----------+-------------------------------------+------------|
| [80]9754 | sruffell | wct4xxp: Reduce stack usage in | |
| | | oct612x API. | |
|----------+----------+-------------------------------------+------------|
| [81]9755 | sruffell | wct4xxp: Do not lock interrupts | |
| | | while loading the VPM firmware. | |
|----------+----------+-------------------------------------+------------|
| | | dahdi: Generate | |
| [82]9757 | sruffell | include/dahdi/version.h when | |
| | | building in a git repository. | |
|----------+----------+-------------------------------------+------------|
| [83]9758 | sruffell | make_version: '[[' -> '[' since | |
| | | it's not a bash script. | |
|----------+----------+-------------------------------------+------------|
| [84]9760 | sruffell | make_version: Use 'git rev-parse' | |
| | | if only looking for a sha5. | |
+------------------------------------------------------------------------+
--------------------------------------------------------------------------
Diffstat Results
[85][Back to Top]
This is a summary of the changes to the source code that went into this
release that was generated using the diffstat utility.
Makefile | 6
README | 37
build_tools/live_dahdi | 17
build_tools/make_version | 64 +
drivers/dahdi/dahdi-base.c | 213 +++-
drivers/dahdi/dahdi_dummy.c | 1
drivers/dahdi/dahdi_echocan_kb1.c | 6
drivers/dahdi/dahdi_echocan_mg2.c | 12
drivers/dahdi/firmware/Makefile | 4
drivers/dahdi/hpec/dahdi_echocan_hpec.c | 2
drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h | 233 ++---
drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_open_inst.h | 2
drivers/dahdi/oct612x/include/oct6100api/oct6100_defines.h | 19
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c | 453 ++++------
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_open.c | 13
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_stats.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_conf_bridge.c | 20
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_events.c | 5
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_interrupts.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_phasing_tsst.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_playout_buf.c | 69 -
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tlv.c | 1
drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_miscellaneous_priv.h | 172 ---
drivers/dahdi/pciradio.c | 2
drivers/dahdi/tor2-hw.h | 2
drivers/dahdi/voicebus/GpakCust.c | 75 +
drivers/dahdi/voicebus/voicebus.c | 98 +-
drivers/dahdi/vpmadt032_loader/dahdi_vpmadt032_loader.c | 28
drivers/dahdi/wcb4xxp/base.c | 38
drivers/dahdi/wcfxo.c | 2
drivers/dahdi/wct1xxp.c | 2
drivers/dahdi/wct4xxp/base.c | 70 -
drivers/dahdi/wct4xxp/vpm450m.c | 36
drivers/dahdi/wctc4xxp/base.c | 4
drivers/dahdi/wctdm.c | 2
drivers/dahdi/wctdm24xxp/base.c | 364 +-------
drivers/dahdi/wctdm24xxp/wctdm24xxp.h | 29
drivers/dahdi/wctdm24xxp/xhfc.c | 4
drivers/dahdi/wcte11xp.c | 3
drivers/dahdi/wcte12xp/base.c | 53 -
drivers/dahdi/xpp/card_pri.c | 7
drivers/dahdi/xpp/init_card_4_30 | 2
drivers/dahdi/xpp/xbus-core.c | 2
drivers/dahdi/xpp/xpp_usb.c | 4
include/dahdi/dahdi_config.h | 8
include/dahdi/kernel.h | 24
46 files changed, 996 insertions(+), 1215 deletions(-)
--------------------------------------------------------------------------
References
Visible links
1. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#summary
2. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#contributors
3. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#issues
4. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#commits
5. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#diffstat
6. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#top
7. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#top
8. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#top
9. https://issues.asterisk.org/view.php?id=16063
10. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9673
11. https://issues.asterisk.org/view.php?id=15908
12. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9665
13. https://issues.asterisk.org/view.php?id=15927
14. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9664
15. https://issues.asterisk.org/view.php?id=16143
16. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9759
17. https://issues.asterisk.org/view.php?id=17857
18. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9655
19. https://issues.asterisk.org/view.php?id=17990
20. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9669
21. https://issues.asterisk.org/view.php?id=18422
22. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9682
23. https://issues.asterisk.org/view.php?id=17959
24. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9658
25. https://issues.asterisk.org/view.php?id=14834
26. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9689
27. https://issues.asterisk.org/view.php?id=16894
28. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9674
29. https://issues.asterisk.org/view.php?id=18184
30. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9675
31. https://issues.asterisk.org/view.php?id=18142
32. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9683
33. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#top
34. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9652
35. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9653
36. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9654
37. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9656
38. https://issues.asterisk.org/view.php?id=17959
39. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9657
40. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9659
41. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9660
42. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9661
43. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9662
44. https://issues.asterisk.org/view.php?id=17669
45. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9663
46. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9666
47. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9667
48. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9668
49. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9670
50. https://issues.asterisk.org/view.php?id=17990
51. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9671
52. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9672
53. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9676
54. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9677
55. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9678
56. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9679
57. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9680
58. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9681
59. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9684
60. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9685
61. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9686
62. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9687
63. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9688
64. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9690
65. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9691
66. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9692
67. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9693
68. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9694
69. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9695
70. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9696
71. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9702
72. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9723
73. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9724
74. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9725
75. https://issues.asterisk.org/view.php?id=18604
76. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9726
77. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9745
78. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9746
79. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9753
80. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9754
81. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9755
82. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9757
83. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9758
84. http://svn.digium.com/view/dahdi/linux/branches/2.4?view=revision&revision=9760
85. file:///home/sruffell/repotools/dahdi-linux-2.4.1-summary.html#top

View File

@@ -386,8 +386,13 @@ struct dahdi_timer {
static LIST_HEAD(zaptimers);
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(zaptimerlock);
static DEFINE_SPINLOCK(bigzaplock);
#else
static spinlock_t zaptimerlock = SPIN_LOCK_UNLOCKED;
static spinlock_t bigzaplock = SPIN_LOCK_UNLOCKED;
#endif
struct dahdi_zone {
atomic_t refcount;
@@ -1670,7 +1675,7 @@ static inline void print_debug_writebuf(struct dahdi_chan* ss, struct sk_buff *s
#endif
#ifdef CONFIG_DAHDI_NET
#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 26)
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 26)
static inline struct net_device_stats *hdlc_stats(struct net_device *dev)
{
return &dev->stats;
@@ -3325,7 +3330,6 @@ struct dahdi_tone *dahdi_mf_tone(const struct dahdi_chan *chan, char digit, int
case 'C':
case 'D':
tone_index = DAHDI_TONE_DTMF_A + (digit - 'A');
break;
case 'W':
return &tone_pause;
default:

View File

@@ -113,8 +113,13 @@ struct dahdi_dynamic {
struct list_head list;
};
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(dspan_lock);
static DEFINE_SPINLOCK(driver_lock);
#else
static spinlock_t dspan_lock = SPIN_LOCK_UNLOCKED;
static spinlock_t driver_lock = SPIN_LOCK_UNLOCKED;
#endif
static LIST_HEAD(dspan_list);
static LIST_HEAD(driver_list);
@@ -222,10 +227,16 @@ static void __ztdynamic_run(void)
{
struct dahdi_dynamic *z;
struct dahdi_dynamic_driver *drv;
int y;
rcu_read_lock();
list_for_each_entry_rcu(z, &dspan_list, list) {
if (!z->dead) {
for (y=0;y<z->span.channels;y++) {
/* Echo cancel double buffered data */
dahdi_ec_chunk(z->span.chans[y], z->span.chans[y]->readchunk, z->span.chans[y]->writechunk);
}
dahdi_receive(&z->span);
dahdi_transmit(&z->span);
/* Handle all transmissions now */
ztd_sendmessage(z);
@@ -391,9 +402,6 @@ void dahdi_dynamic_receive(struct dahdi_span *span, unsigned char *msg, int msgl
if (unlikely(rxpos != rxcnt))
printk(KERN_NOTICE "Span %s: Expected seq no %d, but received %d instead\n", span->name, rxcnt, rxpos);
dahdi_ec_span(span);
dahdi_receive(span);
/* If this is our master span, then run everything */
if (master)
ztdynamic_run();

View File

@@ -42,7 +42,11 @@ struct ztdeth_header {
/* We take the raw message, put it in an ethernet frame, and add a
two byte addressing header at the top for future use */
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(zlock);
#else
static spinlock_t zlock = SPIN_LOCK_UNLOCKED;
#endif
static struct sk_buff_head skbs;

View File

@@ -129,7 +129,11 @@ struct ztdeth {
/**
* Lock for adding and removing items in ethmf_list
*/
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(ethmf_lock);
#else
static spinlock_t ethmf_lock = SPIN_LOCK_UNLOCKED;
#endif
/**
* The active list of all running spans
@@ -397,7 +401,7 @@ static int ztdethmf_transmit(void *pvt, unsigned char *msg, int msglen)
unsigned char addr[ETH_ALEN];
int spans_ready = 0, index = 0;
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 10)
static DEFINE_SPINLOCK(lock);
static spinlock_t lock = SPIN_LOCK_UNLOCKED;
unsigned long flags;
#endif

View File

@@ -57,7 +57,11 @@
#include <dahdi/kernel.h>
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(zlock);
#else
static spinlock_t zlock = SPIN_LOCK_UNLOCKED;
#endif
static struct ztdlocal {
unsigned short key;

View File

@@ -46,7 +46,7 @@ static LIST_HEAD(registration_list);
* is used as a simplistic way to spread the load amongst the different hardware
* transcoders in the system. */
static LIST_HEAD(active_list);
static DEFINE_SPINLOCK(translock);
static spinlock_t translock = SPIN_LOCK_UNLOCKED;
EXPORT_SYMBOL(dahdi_transcoder_register);
EXPORT_SYMBOL(dahdi_transcoder_unregister);

View File

@@ -48,10 +48,10 @@ typedef struct _OCT6100_API_CHANNEL_TDM_
UINT8 byRoutPcmLaw : 1;
UINT8 bySoutPcmLaw : 1;
UINT8 byRinNumTssts : 2;
UINT8 bySinNumTssts : 2;
UINT8 byRoutNumTssts : 2;
UINT8 bySoutNumTssts : 2;
UINT8 byRinNumTssts : 1;
UINT8 bySinNumTssts : 1;
UINT8 byRoutNumTssts : 1;
UINT8 bySoutNumTssts : 1;
/* RIN port. */
UINT16 usRinTimeslot;
@@ -93,20 +93,19 @@ typedef struct _OCT6100_API_CHANNEL_VQE_
UINT8 fSoutAdaptiveNoiseReduction : 1;
UINT8 fDtmfToneRemoval : 1;
UINT8 fAcousticEcho : 1;
UINT8 byComfortNoiseMode : 2;
UINT8 byComfortNoiseMode : 1;
UINT8 fSoutNaturalListenerEnhancement : 1;
UINT8 fRoutNoiseReduction : 1;
UINT8 fEnableMusicProtection : 1;
UINT8 fIdleCodeDetection : 1;
UINT8 byAnrVoiceNoiseSegregation : 4;
UINT8 byAnrVoiceNoiseSegregation : 1;
UINT8 byDoubleTalkBehavior : 1;
UINT8 fSoutNoiseBleaching : 1;
UINT8 fSoutConferencingNoiseReduction : 1;
UINT8 byNonLinearityBehaviorA : 4;
UINT8 byNonLinearityBehaviorB : 4;
UINT8 bySoutAutomaticListenerEnhancementGainDb;
UINT8 bySoutNaturalListenerEnhancementGainDb;
UINT8 bySoutAutomaticListenerEnhancementGainDb : 1;
UINT8 byNonLinearityBehaviorA : 1;
UINT8 byNonLinearityBehaviorB : 1;
UINT8 bySoutNaturalListenerEnhancementGainDb : 1;
OCT_INT8 chRinAutomaticLevelControlTargetDb;
OCT_INT8 chSoutAutomaticLevelControlTargetDb;
@@ -135,15 +134,15 @@ typedef struct _OCT6100_API_CHANNEL_CODEC_
UINT8 byAdpcmNibblePosition : 1;
UINT8 fEnableSilenceSuppression : 1;
UINT8 byEncoderPort : 4;
UINT8 byDecoderPort : 4;
UINT8 byEncoderPort : 1;
UINT8 byEncodingRate : 1;
UINT8 byPhasingType : 2;
UINT8 byEncodingRate;
UINT8 byDecodingRate;
UINT8 byDecoderPort : 1;
UINT8 byDecodingRate : 1;
UINT16 byPhase;
UINT8 byPhase : 1;
UINT8 byPhasingType : 1;
} tOCT6100_API_CHANNEL_CODEC, *tPOCT6100_API_CHANNEL_CODEC;
typedef struct _OCT6100_API_CHANNEL_
@@ -164,7 +163,7 @@ typedef struct _OCT6100_API_CHANNEL_
UINT8 fEnableToneDisabler : 1;
/* Current echo operation mode. */
UINT8 byEchoOperationMode : 3;
UINT8 byEchoOperationMode : 1;
UINT8 byToneDisablerStatus : 1;
@@ -360,7 +359,7 @@ typedef struct _OCT6100_API_BIDIR_CHANNEL_
/* Flag specifying whether the entry is used or not. */
UINT8 fReserved : 1;
/* Count used to manage entry handles allocated to user. */
UINT8 byEntryOpenCnt;
UINT8 byEntryOpenCnt : 1;
} tOCT6100_API_BIDIR_CHANNEL, *tPOCT6100_API_BIDIR_CHANNEL;

View File

@@ -1129,7 +1129,11 @@ static void tor2_tasklet(unsigned long data)
static int syncsrc = 0;
static int syncnum = 0 /* -1 */;
static int syncspan = 0;
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(synclock);
#else
static spinlock_t synclock = SPIN_LOCK_UNLOCKED;
#endif
static int tor2_findsync(struct tor2 *tor)
{

View File

@@ -36,7 +36,6 @@
#ifndef _GPAKCUST_H /* prevent multiple inclusion */
#define _GPAKCUST_H
#include <linux/module.h>
#include <linux/device.h>
#include <linux/completion.h>
#include <linux/workqueue.h>

View File

@@ -35,16 +35,22 @@
#ifdef VOICEBUS_NET_DEBUG
#ifdef HAVE_NETDEV_PRIV
struct voicebus_netdev_priv {
struct voicebus *vb;
};
#endif
static inline struct voicebus *
voicebus_from_netdev(struct net_device *netdev)
{
#ifdef HAVE_NETDEV_PRIV
struct voicebus_netdev_priv *priv;
priv = netdev_priv(netdev);
return priv->vb;
#else
return netdev->priv;
#endif
}
static void *
@@ -200,14 +206,23 @@ int vb_net_register(struct voicebus *vb, const char *board_name)
{
int res;
struct net_device *netdev;
# ifdef HAVE_NETDEV_PRIV
struct voicebus_netdev_priv *priv;
# endif
const char our_mac[] = { 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff};
# ifdef HAVE_NETDEV_PRIV
netdev = alloc_netdev(sizeof(*priv), board_name, ether_setup);
if (!netdev)
return -ENOMEM;
priv = netdev_priv(netdev);
priv->vb = vb;
# else
netdev = alloc_netdev(0, vb->board_name, ether_setup);
if (!netdev)
return -ENOMEM;
netdev->priv = vb;
# endif
memcpy(netdev->dev_addr, our_mac, sizeof(our_mac));
# ifdef HAVE_NET_DEVICE_OPS
netdev->netdev_ops = &vb_netdev_ops;

View File

@@ -2,7 +2,7 @@
* WCB410P Quad-BRI PCI Driver
* Written by Andrew Kohlsmith <akohlsmith@mixdown.ca>
*
* Copyright (C) 2009-2011 Digium, Inc.
* Copyright (C) 2009 Digium, Inc.
* All rights reserved.
*
*/
@@ -2303,9 +2303,6 @@ static int b4xxp_chanconfig(struct dahdi_chan *chan, int sigtype)
if (alreadyrunning && bspan->sigchan) {
hdlc_stop(b4, fifo);
atomic_set(&bspan->hdlc_pending, 0);
bspan->sigactive = 0;
smp_mb();
bspan->sigchan = NULL;
}

View File

@@ -763,9 +763,11 @@ static inline unsigned int __t4_raw_oct_in(struct t4 *wc, const unsigned int add
__t4_pci_out(wc, WC_LADDR, (WC_LWRITE | WC_LALE));
if (!pedanticpci)
__t4_pci_in(wc, WC_VERSION);
#ifdef PEDANTIC_OCTASIC_CHECKING
__t4_pci_out(wc, WC_LADDR, (WC_LALE));
if (!pedanticpci)
__t4_pci_in(wc, WC_VERSION);
#endif
if (!octopt) {
__t4_gpio_setdir(wc, 0xff, 0x00);
__t4_gpio_set(wc, 0xff, 0x00);
@@ -2229,7 +2231,11 @@ static void t4_serial_setup(struct t4 *wc, int unit)
static int syncsrc = 0;
static int syncnum = 0 /* -1 */;
static int syncspan = 0;
#ifdef DEFINE_SPINLOCK
static DEFINE_SPINLOCK(synclock);
#else
static spinlock_t synclock = SPIN_LOCK_UNLOCKED;
#endif
static void __t4_set_rclk_src(struct t4 *wc, int span)
{
@@ -2351,7 +2357,7 @@ static int __t4_findsync(struct t4 *wc)
while (p < 8) {
nonzero = 0;
for (x=0;cards[x];x++) {
for (i = 0; i < cards[x]->numspans; i++) {
for (i = 0; i < wc->numspans; i++) {
if (cards[x]->tspans[i]->syncpos) {
nonzero = 1;
if ((cards[x]->tspans[i]->syncpos == p) &&

View File

@@ -399,16 +399,22 @@ struct wcdte {
#endif
};
#ifdef HAVE_NETDEV_PRIV
struct wcdte_netdev_priv {
struct wcdte *wc;
};
#endif
static inline struct wcdte *
wcdte_from_netdev(struct net_device *netdev)
{
#ifdef HAVE_NETDEV_PRIV
struct wcdte_netdev_priv *priv;
priv = netdev_priv(netdev);
return priv->wc;
#else
return netdev->priv;
#endif
}
@@ -493,7 +499,6 @@ wctc4xxp_skb_to_cmd(struct wcdte *wc, const struct sk_buff *skb)
return cmd;
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)
static void
wctc4xxp_net_set_multi(struct net_device *netdev)
{
@@ -501,15 +506,6 @@ wctc4xxp_net_set_multi(struct net_device *netdev)
DTE_DEBUG(DTE_DEBUG_GENERAL, "%s promiscuity:%d\n",
__func__, netdev->promiscuity);
}
#else
static void
wctc4xxp_set_rx_mode(struct net_device *netdev)
{
struct wcdte *wc = wcdte_from_netdev(netdev);
DTE_DEBUG(DTE_DEBUG_GENERAL, "%s promiscuity:%d\n",
__func__, netdev->promiscuity);
}
#endif
static int
wctc4xxp_net_up(struct net_device *netdev)
@@ -673,11 +669,7 @@ wctc4xxp_net_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
#ifdef HAVE_NET_DEVICE_OPS
static const struct net_device_ops wctc4xxp_netdev_ops = {
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)
.ndo_set_multicast_list = &wctc4xxp_net_set_multi,
#else
.ndo_set_rx_mode = &wctc4xxp_set_rx_mode,
#endif
.ndo_open = &wctc4xxp_net_up,
.ndo_stop = &wctc4xxp_net_down,
.ndo_start_xmit = &wctc4xxp_net_hard_start_xmit,
@@ -699,14 +691,23 @@ wctc4xxp_net_register(struct wcdte *wc)
{
int res;
struct net_device *netdev;
# ifdef HAVE_NETDEV_PRIV
struct wcdte_netdev_priv *priv;
# endif
const char our_mac[] = { 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff};
# ifdef HAVE_NETDEV_PRIV
netdev = alloc_netdev(sizeof(*priv), wc->board_name, ether_setup);
if (!netdev)
return -ENOMEM;
priv = netdev_priv(netdev);
priv->wc = wc;
# else
netdev = alloc_netdev(0, wc->board_name, ether_setup);
if (!netdev)
return -ENOMEM;
netdev->priv = wc;
# endif
memcpy(netdev->dev_addr, our_mac, sizeof(our_mac));
# ifdef HAVE_NET_DEVICE_OPS
@@ -1614,20 +1615,6 @@ wctc4xxp_transmit_cmd(struct wcdte *wc, struct tcb *cmd)
{
int res;
/* If we're shutdown all commands will timeout. Just complete the
* command here with the timeout flag */
if (unlikely(test_bit(DTE_SHUTDOWN, &wc->flags))) {
if (cmd->flags & DO_NOT_AUTO_FREE) {
cmd->flags |= DTE_CMD_TIMEOUT;
list_del_init(&cmd->node);
complete(&cmd->complete);
} else {
list_del(&cmd->node);
free_cmd(cmd);
}
return;
}
if (cmd->data_len < MIN_PACKET_LEN) {
memset((u8 *)(cmd->data) + cmd->data_len, 0,
MIN_PACKET_LEN-cmd->data_len);
@@ -2172,13 +2159,12 @@ wctc4xxp_write(struct file *file, const char __user *frame,
}
if (DAHDI_FORMAT_G723_1 == dtc->srcfmt) {
if ((G723_5K_BYTES != count) && (G723_6K_BYTES != count) &&
(G723_SID_BYTES != count)) {
if ((G723_5K_BYTES != count) && (G723_6K_BYTES != count)) {
DTE_DEBUG(DTE_DEBUG_GENERAL,
"Trying to transcode packet into G723 format " \
"that is %Zu bytes instead of the expected " \
"%d/%d/%d bytes.\n", count, G723_5K_BYTES,
G723_6K_BYTES, G723_SID_BYTES);
"%d/%d bytes.\n", count, G723_5K_BYTES,
G723_6K_BYTES);
return -EINVAL;
}
cpvt->timestamp += G723_SAMPLES;
@@ -2755,10 +2741,11 @@ wctc4xxp_start_dma(struct wcdte *wc)
}
static void
_wctc4xxp_stop_dma(struct wcdte *wc)
wctc4xxp_stop_dma(struct wcdte *wc)
{
/* Disable interrupts and reset */
unsigned int reg;
unsigned long newjiffies;
/* Disable interrupts */
wctc4xxp_setintmask(wc, 0x00000000);
wctc4xxp_setctl(wc, 0x0084, 0x00000000);
@@ -2767,14 +2754,7 @@ _wctc4xxp_stop_dma(struct wcdte *wc)
reg = wctc4xxp_getctl(wc, 0x0000);
reg |= 0x00000001;
wctc4xxp_setctl(wc, 0x0000, reg);
}
static void
wctc4xxp_stop_dma(struct wcdte *wc)
{
unsigned long newjiffies;
_wctc4xxp_stop_dma(wc);
newjiffies = jiffies + HZ; /* One second timeout */
/* We'll wait here for the part to come out of reset */
while (((wctc4xxp_getctl(wc, 0x0000)) & 0x00000001) &&
@@ -2782,6 +2762,7 @@ wctc4xxp_stop_dma(struct wcdte *wc)
msleep(1);
}
#define MDIO_SHIFT_CLK 0x10000
#define MDIO_DATA_WRITE1 0x20000
#define MDIO_ENB 0x00000
@@ -3326,19 +3307,13 @@ wctc4xxp_watchdog(unsigned long data)
if (time_after(jiffies, cmd->timeout)) {
if (++cmd->retries > MAX_RETRIES) {
if (!(cmd->flags & TX_COMPLETE)) {
cmd->flags |= DTE_CMD_TIMEOUT;
list_del_init(&cmd->node);
complete(&cmd->complete);
set_bit(DTE_SHUTDOWN, &wc->flags);
spin_unlock(&wc->cmd_list_lock);
_wctc4xxp_stop_dma(wc);
wctc4xxp_stop_dma(wc);
DTE_PRINTK(ERR,
"Board malfunctioning. " \
"Halting operation.\n");
reschedule_timer = 0;
break;
return;
}
/* ERROR: We've retried the command and
* haven't received the ACK or the response.

View File

@@ -921,8 +921,12 @@ static inline void wctdm_transmitprep(struct wctdm *wc, unsigned char *writechun
if (x < DAHDI_CHUNKSIZE - 1) {
writechunk[EFRAME_SIZE] = wc->ctlreg;
writechunk[EFRAME_SIZE + 1] = wc->txident++;
if (4 == wc->desc->ports)
writechunk[EFRAME_SIZE + 2] = wc->tdm410leds;
if ((wc->desc->ports == 4) && ((wc->ctlreg & 0x10))) {
writechunk[EFRAME_SIZE + 2] = 0;
for (y = 0; y < 4; y++)
writechunk[EFRAME_SIZE + 2] |= (1 << y);
}
}
writechunk += (EFRAME_SIZE + EFRAME_GAP);
}
@@ -1817,8 +1821,7 @@ static void wctdm_fxs_off_hook(struct wctdm *wc, const int card)
SLIC_LF_ACTIVE_FWD;
break;
}
if ((fxs->lasttxhook & SLIC_LF_SETMASK) != SLIC_LF_OPEN)
wctdm_fxs_hooksig(wc, card, DAHDI_TXSIG_OFFHOOK);
wctdm_fxs_hooksig(wc, card, DAHDI_TXSIG_OFFHOOK);
dahdi_hooksig(wc->aspan->span.chans[card], DAHDI_RXSIG_OFFHOOK);
#ifdef DEBUG
@@ -1834,8 +1837,7 @@ static void wctdm_fxs_on_hook(struct wctdm *wc, const int card)
if (debug & DEBUG_CARD)
dev_info(&wc->vb.pdev->dev,
"fxs_on_hook: Card %d Going on hook\n", card);
if ((fxs->lasttxhook & SLIC_LF_SETMASK) != SLIC_LF_OPEN)
wctdm_fxs_hooksig(wc, card, DAHDI_TXSIG_ONHOOK);
wctdm_fxs_hooksig(wc, card, DAHDI_TXSIG_ONHOOK);
dahdi_hooksig(wc->aspan->span.chans[card], DAHDI_RXSIG_ONHOOK);
fxs->oldrxhook = 0;
}
@@ -4590,21 +4592,6 @@ static inline void remove_sysfs_files(struct wctdm *wc) { return; }
#endif /* CONFIG_VOICEBUS_SYSFS */
static void wctdm_set_tdm410_leds(struct wctdm *wc)
{
int i;
if (4 != wc->desc->ports)
return;
wc->tdm410leds = 0; /* all on by default */
for (i = 0; i < wc->desc->ports; ++i) {
/* Turn off the LED for any module that isn't installed. */
if (MOD_TYPE_NONE == wc->modtype[i])
wc->tdm410leds |= (1 << i);
}
}
#ifdef USE_ASYNC_INIT
struct async_data {
struct pci_dev *pdev;
@@ -4747,8 +4734,6 @@ __wctdm_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
/* Now track down what modules are installed */
wctdm_identify_modules(wc);
wctdm_set_tdm410_leds(wc);
if (fatal_signal_pending(current)) {
wctdm_back_out_gracefully(wc);
return -EINTR;

View File

@@ -165,8 +165,7 @@ struct wctdm {
unsigned char rxident;
int flags[NUM_MODULES]; /* bitmap of board-specific + module-specific flags */
u8 ctlreg;
u8 tdm410leds;
unsigned char ctlreg; /* FIXME: something to do with VPM? */
int mods_per_board; /* maximum number of modules for this board */
int digi_mods; /* number of digital modules present */

View File

@@ -88,6 +88,7 @@ static const struct dahdi_echocan_ops vpm150m_ec_ops = {
};
static struct t1 *ifaces[WC_MAX_IFACES];
spinlock_t ifacelock = SPIN_LOCK_UNLOCKED;
struct t1_desc {
const char *name;
@@ -627,22 +628,12 @@ static void t1_setleds(struct t1 *wc, int leds)
submit_cmd(wc, cmd);
}
/**
* t1_getpins - Returns the value of the jumpers on the card.
* @wc: The card to read from.
* @pins: Pointer to u8 character to hold the pins value.
*
* Returns 0 on success, otherwise an error code.
*
*/
static int t1_getpins(struct t1 *wc, u8 *pins)
static inline int t1_getpins(struct t1 *wc, int inisr)
{
struct command *cmd;
unsigned long flags;
unsigned long ret;
*pins = 0;
cmd = get_free_cmd(wc);
BUG_ON(!cmd);
@@ -665,9 +656,9 @@ static int t1_getpins(struct t1 *wc, u8 *pins)
}
return ret;
}
*pins = cmd->data;
ret = cmd->data;
free_cmd(wc, cmd);
return 0;
return ret;
}
static void __t1xxp_set_clear(struct t1 *wc)
@@ -1648,7 +1639,6 @@ static inline unsigned char t1_vpm_out(struct t1 *wc, int unit, const unsigned i
static int t1_hardware_post_init(struct t1 *wc)
{
int res;
unsigned int reg;
int x;
@@ -1659,12 +1649,10 @@ static int t1_hardware_post_init(struct t1 *wc)
else
wc->spantype = TYPE_T1;
} else {
u8 pins;
res = t1_getpins(wc, &pins);
if (res)
return res;
wc->spantype = (pins & 0x01) ? TYPE_T1 : TYPE_E1;
if (t1_getpins(wc,0) & 0x01) /* returns 1 for T1 mode */
wc->spantype = TYPE_T1;
else
wc->spantype = TYPE_E1;
}
debug_printk(wc, 1, "spantype: %s\n", 1 == wc->spantype ? "T1" : "E1");
@@ -2339,13 +2327,7 @@ static int __devinit te12xp_init_one(struct pci_dev *pdev, const struct pci_devi
free_wc(wc);
return -EIO;
}
res = t1_hardware_post_init(wc);
if (res) {
voicebus_release(&wc->vb);
free_wc(wc);
return res;
}
t1_hardware_post_init(wc);
for (x = 0; x < (wc->spantype == TYPE_E1 ? 31 : 24); x++) {
if (!(wc->chans[x] = kmalloc(sizeof(*wc->chans[x]), GFP_KERNEL))) {
@@ -2381,7 +2363,6 @@ static void __devexit te12xp_remove_one(struct pci_dev *pdev)
remove_sysfs_files(wc);
clear_bit(INITIALIZED, &wc->bit_flags);
smp_mb__after_clear_bit();
del_timer_sync(&wc->timer);
flush_workqueue(wc->wq);

View File

@@ -77,6 +77,8 @@
#define TYPE_T1 1
#define TYPE_E1 2
extern spinlock_t ifacelock;
struct command {
struct list_head node;
struct completion complete;

View File

@@ -399,7 +399,7 @@ static xpd_t *FXS_card_new(xbus_t *xbus, int unit, int subunit, const xproto_tab
else
regular_channels = min(8, subunit_ports);
channels = regular_channels;
if(unit == 0 && subtype != 4)
if(unit == 0)
channels += 6; /* 2 DIGITAL OUTPUTS, 4 DIGITAL INPUTS */
xpd = xpd_alloc(xbus, unit, subunit, subtype, subunits, sizeof(struct FXS_priv_data), proto_table, channels);
if(!xpd)

View File

@@ -68,7 +68,7 @@ struct counter {
static xbus_t *global_xbus;
static bool tx_ready = 1;
static DEFINE_SPINLOCK(tx_ready_lock);
static spinlock_t tx_ready_lock = SPIN_LOCK_UNLOCKED;
static struct xframe_queue txpool;
static unsigned int pcm_in_pool_count;
static bool disconnecting;

View File

@@ -36,7 +36,7 @@ static int parport_toggles[8]; /* 8 bit flip-flop */
void flip_parport_bit(unsigned char bitnum)
{
static unsigned char last_value;
DEFINE_SPINLOCK(lock);
spinlock_t lock = SPIN_LOCK_UNLOCKED;
unsigned long flags;
unsigned char mask;
unsigned char value;

View File

@@ -78,7 +78,7 @@ static void transport_init(xbus_t *xbus, struct xbus_ops *ops, ushort max_send_s
static void transport_destroy(xbus_t *xbus);
/* Data structures */
static DEFINE_SPINLOCK(xbuses_lock);
static spinlock_t xbuses_lock = SPIN_LOCK_UNLOCKED;
#ifdef CONFIG_PROC_FS
static struct proc_dir_entry *proc_xbuses = NULL;
#endif
@@ -104,7 +104,7 @@ int xbus_check_unique(xbus_t *xbus)
{
if (!xbus)
return -ENOENT;
if (xbus->label && *(xbus->label)) {
if (xbus->label) {
xbus_t *xbus_old;
XBUS_DBG(DEVICES, xbus, "Checking LABEL='%s'\n", xbus->label);
@@ -118,7 +118,7 @@ int xbus_check_unique(xbus_t *xbus)
return -EBUSY;
}
} else {
XBUS_NOTICE(xbus, "Missing board label (old Astribank?)\n");
XBUS_NOTICE(xbus, "MISSING BOARD LABEL!!!\n");
}
return 0;
}
@@ -405,7 +405,7 @@ xpacket_t *xframe_next_packet(xframe_t *frm, int len)
return (xpacket_t *)(frm->packets + newlen - len);
}
static DEFINE_SPINLOCK(serialize_dump_xframe);
static spinlock_t serialize_dump_xframe = SPIN_LOCK_UNLOCKED;
static void do_hexdump(const char msg[], byte *data, uint16_t len)
{

View File

@@ -55,8 +55,8 @@ static struct xpp_ticker dahdi_ticker;
* I.e: one of our AB or dahdi_ticker
*/
static struct xpp_ticker *ref_ticker = NULL;
static DEFINE_SPINLOCK(ref_ticker_lock);
static DEFINE_SPINLOCK(elect_syncer_lock);
static spinlock_t ref_ticker_lock = SPIN_LOCK_UNLOCKED;
static spinlock_t elect_syncer_lock = SPIN_LOCK_UNLOCKED;
static bool force_dahdi_sync = 0; /* from /sys/bus/astribanks/drivers/xppdrv/sync */
static xbus_t *global_ticker;
static struct xpp_ticker global_ticks_series;

View File

@@ -57,7 +57,6 @@ typedef unsigned gfp_t; /* Added in 2.6.14 */
#endif
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31)
/*
* FIXME: Kludge for 2.6.19
* bool is now defined as a proper boolean type (gcc _Bool)
@@ -67,12 +66,6 @@ typedef unsigned gfp_t; /* Added in 2.6.14 */
int name = init; \
module_param(name, bool, perm); \
MODULE_PARM_DESC(name, desc " [default " #init "]")
#else
#define DEF_PARM_BOOL(name, init, perm, desc) \
bool name = init; \
module_param(name, bool, perm); \
MODULE_PARM_DESC(name, desc " [default " #init "]")
#endif
#define DEF_PARM(type,name,init,perm,desc) \
type name = init; \

View File

@@ -242,7 +242,7 @@ struct xusb {
};
static DEFINE_SPINLOCK(xusb_lock);
static spinlock_t xusb_lock = SPIN_LOCK_UNLOCKED;
static xusb_t *xusb_array[MAX_BUSES] = {};
static unsigned bus_count = 0;

View File

@@ -75,12 +75,6 @@ static const xproto_table_t *xproto_table(xpd_type_t cardtype)
return xprotocol_tables[cardtype];
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 3, 0)
#define MODULE_REFCOUNT_FORMAT "%s refcount was %d\n"
#else
#define MODULE_REFCOUNT_FORMAT "%s refcount was %lu\n"
#endif
const xproto_table_t *xproto_get(xpd_type_t cardtype)
{
const xproto_table_t *xtable;
@@ -100,8 +94,7 @@ const xproto_table_t *xproto_get(xpd_type_t cardtype)
if(xtable) {
BUG_ON(!xtable->owner);
#ifdef CONFIG_MODULE_UNLOAD
DBG(GENERAL, MODULE_REFCOUNT_FORMAT, xtable->name,
module_refcount(xtable->owner));
DBG(GENERAL, "%s refcount was %d\n", xtable->name, module_refcount(xtable->owner));
#endif
if(!try_module_get(xtable->owner)) {
ERR("%s: try_module_get for %s failed.\n", __FUNCTION__, xtable->name);
@@ -115,8 +108,7 @@ void xproto_put(const xproto_table_t *xtable)
{
BUG_ON(!xtable);
#ifdef CONFIG_MODULE_UNLOAD
DBG(GENERAL, MODULE_REFCOUNT_FORMAT, xtable->name,
module_refcount(xtable->owner));
DBG(GENERAL, "%s refcount was %d\n", xtable->name, module_refcount(xtable->owner));
BUG_ON(module_refcount(xtable->owner) <= 0);
#endif
module_put(xtable->owner);

View File

@@ -43,7 +43,6 @@
#endif
#include <linux/fs.h>
#include <linux/kobject.h>
#include <linux/module.h>
#include <linux/ioctl.h>
#ifdef CONFIG_DAHDI_NET
@@ -70,10 +69,6 @@
#define DAHDI_IRQ_HANDLER(a) static irqreturn_t a(int irq, void *dev_id, struct pt_regs *regs)
#endif
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
#define HAVE_NET_DEVICE_OPS
#endif
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
#define DAHDI_IRQ_SHARED IRQF_SHARED
#define DAHDI_IRQ_DISABLED IRQF_DISABLED
@@ -92,13 +87,7 @@
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26)
# ifdef RHEL_RELEASE_VERSION
# if RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(5, 6)
#define dev_name(dev) ((dev)->bus_id)
# endif
# else
#define dev_name(dev) ((dev)->bus_id)
# endif
#define dev_name(dev) (dev)->bus_id
#define dev_set_name(dev, format, ...) \
snprintf((dev)->bus_id, BUS_ID_SIZE, format, ## __VA_ARGS__);
#endif
@@ -1290,10 +1279,6 @@ wait_for_completion_interruptible_timeout(struct completion *x,
const struct pci_device_id _x[] __devinitdata
#endif
#ifndef DEFINE_SPINLOCK
#define DEFINE_SPINLOCK(x) spinlock_t x = SPIN_LOCK_UNLOCKED
#endif
#ifndef DMA_BIT_MASK
#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
#endif