[dahdi-commits] sruffell: tag linux/2.5.0-rc1 r10042 - /linux/tags/2.5.0-rc1/

SVN commits to the DAHDI project dahdi-commits at lists.digium.com
Tue Jul 12 18:08:26 CDT 2011


Author: sruffell
Date: Tue Jul 12 18:08:22 2011
New Revision: 10042

URL: http://svnview.digium.com/svn/dahdi?view=rev&rev=10042
Log:
Importing files for 2.5.0-rc1 release.

Added:
    linux/tags/2.5.0-rc1/.version   (with props)
    linux/tags/2.5.0-rc1/ChangeLog   (with props)

Added: linux/tags/2.5.0-rc1/.version
URL: http://svnview.digium.com/svn/dahdi/linux/tags/2.5.0-rc1/.version?view=auto&rev=10042
==============================================================================
--- linux/tags/2.5.0-rc1/.version (added)
+++ linux/tags/2.5.0-rc1/.version Tue Jul 12 18:08:22 2011
@@ -1,0 +1,1 @@
+2.5.0-rc1

Propchange: linux/tags/2.5.0-rc1/.version
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: linux/tags/2.5.0-rc1/.version
------------------------------------------------------------------------------
    svn:keywords = none

Propchange: linux/tags/2.5.0-rc1/.version
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: linux/tags/2.5.0-rc1/ChangeLog
URL: http://svnview.digium.com/svn/dahdi/linux/tags/2.5.0-rc1/ChangeLog?view=auto&rev=10042
==============================================================================
--- linux/tags/2.5.0-rc1/ChangeLog (added)
+++ linux/tags/2.5.0-rc1/ChangeLog Tue Jul 12 18:08:22 2011
@@ -1,0 +1,4639 @@
+2011-07-12 18:15 +0000 [r10036-10038]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/firmwares/Makefile: xpp: install Octasic
+	  frmware if it's there If the OCT6104E-256D.ima Octasic firmware
+	  was downloaded to the build directory, install it over with the
+	  rest of the firmware files. Signed-off-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/xpp_dahdi.c: xpp: Demote notices for HWEC
+	  create/free to debug Signed-off-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: Add dynamic dahdi parameter
+	  hwec_overrides_swec. If set to true (default) a HWEC, if
+	  available on the channel, takes priority over any software
+	  echocan configured in /etc/dahdi/system.conf. This has
+	  historically been the default behavior in all released versions
+	  of DAHDI that support module echocans. Otherwise,
+	  hwec_overrides_swec is set to false, HWEC is chosen only via the
+	  "echocanceller=hwec" directive. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Signed-off-By: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com> Acked-By: Oron Peled
+	  <oron.peled at xorcom.com>
+
+2011-07-07 13:43 +0000 [r10028]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* build_tools/live_dahdi: live_dahdi: create asterisk in the live
+	  tree Make sure you have etc/asterisk in the live tree before
+	  generating configuration. Signed-off-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+2011-07-05 17:23 +0000 [r10024]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_events.c,
+	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c:
+	  oct612x: Eliminate some compiler warnings. Eliminate "large
+	  integer implicitly truncated to unsigned type" warnings from
+	  r10010. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+	  Acked-by: Doug Bailey <dbailey at digium.com> Acked-by: Tzafrir
+	  Cohen <tzafrir.cohen at xorcom.com>
+
+2011-07-04 14:05 +0000 [r10019-10022]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/card_fxs.c: xpp: xpd_fxs: ring_trapez parameter
+	  This adds module parameter 'ring_trapez'. When set, the wave form
+	  of the ring tone is set to be a trapezoid, rather than sine. Thus
+	  making the ring stronger. This is a boolean parameter of the
+	  module xpd_fxs. Takes effect at the beginning of the next ring.
+	  Signed-off-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_bri.c: A
+	  number of cases of testing for unsigned int < 0 Signed-off-by:
+	  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/card_echo.c: xpp:
+	  Eliminate "set but unused" compiler warnings. gcc 4.6 complains
+	  about variables that are assigned values but then never used.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com> Acked-By:
+	  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xbus-core.c,
+	  drivers/dahdi/xpp/xbus-core.h: xpp: add FXO HWEC quirks handling
+	  In some cases the hardware echo canceller cannot be used. Mostly
+	  related to an FXO module. * FXO module if the first module is BRI
+	  or PRI * FXS module if the Astribank has another FXO, no PRI/BRI,
+	  and is a sync slave. Signed-off-by: Oron Peled
+	  <oron.peled at xorcom.com> Acked-By: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+2011-07-01 15:45 +0000 [r10016-10017]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Return NULL if there is
+	  not a hardware EC on installed. r9943 enabled the presence of
+	  hardware EC to be probed on a card. That change did not account
+	  for wcb4xxp based cards that did not have a hardware echocan on
+	  board. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+	  Acked-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Add module parameter to
+	  ignore rotary switch settings. The dual and quad span cards have
+	  a rotary switch onboard which controls the order that cards
+	  serviced by this driver are registered with the core of DAHDI.
+	  This commit adds a module parameter 'ignore_rotary' which, when
+	  set to 1, causes the driver to ignore the position of the rotary
+	  switch and only consider the physical slot when registering with
+	  DAHDI. Ignoring the rotary switch settings also permits the PCI
+	  device to be bound and unbound from the driver at runtime since
+	  registration with DAHDI no longer only happens when the module is
+	  first initialized. By default, the rotary switch will still be
+	  used to determine registration order. This commit does not change
+	  the default behavior. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+2011-06-30 22:02 +0000 [r10010-10014]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* build_tools/live_dahdi: Also loca xpd_echo in live_dahdi, if
+	  available Signed-off-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/firmwares/FPGA_1161.hex,
+	  drivers/dahdi/xpp/firmwares/USB_FW.hex: xpp: FPGA_1161 rev 9252,
+	  USB_FW rev 8826: HWEC New Astribank II FPGA firmware and USB
+	  firmwares that add support for the hardware echo canceller
+	  module. Note that due to a bug in previous FPGA firmwares, an
+	  Astribank with such older firmware and with a hardware echo
+	  canceller module will not have any functioning audio at all.
+	  Signed-off-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/init_card_5_30 (added),
+	  drivers/dahdi/xpp/firmwares/Makefile: xpp: also install init
+	  (non)script for xpd_echo
+
+	* drivers/dahdi/oct612x/include/oct6100api/oct6100_defines.h,
+	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_open.c,
+	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c,
+	  drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h:
+	  oct612x: Fixes for Octasic user space compilation: * Don't assume
+	  a pointer diff is 16 bits only. * cOCT6100_INVALID_VALUE should
+	  be used against 32 unsigned values * Make 3 constants adjustable
+	  via '-Dmacro=value': - cOCT6100_INTERNAL_SUPER_ARRAY_SIZE -
+	  cOCT6100_MAX_ECHO_CHANNELS - cOCT6100_MAX_MIXER_EVENTS
+	  Signed-off-by: Oron Peled <oron.peled at xorcom.com> Signed-off-by:
+	  Tzafrir Cohen <tzafrir.cohen at xorcom.com> Acked-by: Doug Bailey
+	  <dbailey at digium.com> Acked-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+2011-06-29 22:15 +0000 [r10000-10008]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Fix typo in previous
+	  commit for fastpickup mode. I failed to compile the commit
+	  exactly as it was committed. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Add 'fastpick'
+	  module parameter. When true / 1 the FXO port will use a shorter
+	  off-hook calibration delay. This is sometimes necessary in order
+	  to properly decode Type-II Caller ID information which is sent
+	  shortly after an FXO port goes off hook. Defaults to 0 unless
+	  opermode is "JAPAN" then it will default to 1. This functionality
+	  was ported from the wctdm.c driver. DAHDI-854. Signed-off-by:
+	  Shaun Ruffell <sruffell at 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 at digium.com>
+
+	* include/dahdi/user.h, include/dahdi/kernel.h: Revert "dahdi: Use
+	  enumeration for maintenance modes." This reverts commit r9879.
+	  Asterisk commit r264249 [1], which was committed after the switch
+	  to enumerations, requires the maintenance modes to be Changing
+	  the test in configure.ac from: AST_C_DEFINE_CHECK([DAHDI],
+	  [DAHDI_RESET_COUNTERS], [dahdi/user.h], [230]) to:
+	  AST_C_COMPILE_CHECK([DAHDI], [int foo = DAHDI_RESET_COUNTERS],
+	  [dahdi/user.h]) Would allow the maintenance modes to stand as
+	  enumerations but the potential for users to run incompatible
+	  versions does not seem worth it at this point. [1]
+	  http://svnview.digium.com/svn/asterisk?view=revision&revision=264249
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com> Acked-by: Russ
+	  Meyerriecks <rmeyerriecks at digium.com>
+
+2011-06-28 22:29 +0000 [r9997-9998]  Russ Meyerriecks <rmeyerreicks at digium.com>
+
+	* drivers/dahdi/voicebus/vpmoct.c, drivers/dahdi/wcte12xp/base.c,
+	  drivers/dahdi/voicebus/vpmoct.h, drivers/dahdi/wctdm24xxp/xhfc.c,
+	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c,
+	  drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp, wctdm24xxp: Load
+	  VPMOCT032 firmware in background. The firmware load has been
+	  moved into a workqueue to prevent the module load from blocking
+	  for the duration of the firmware upload. This could be up to 40
+	  seconds. Driver prevents configuration until firmware load is
+	  finished and is_initialized() returns true. Signed-off-by: Russ
+	  Meyerriecks <rmeyerriecks at digium.com> Signed-off-by: Shaun
+	  Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/voicebus/vpmoct.c (added),
+	  drivers/dahdi/wcte12xp/base.c, drivers/dahdi/firmware/Makefile,
+	  drivers/dahdi/voicebus/Kbuild, drivers/dahdi/voicebus/vpmoct.h
+	  (added), drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c,
+	  drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp, wctdm24xxp: Add
+	  support for the VPMOCT032 hardware echocanceler. Support enabled
+	  for the vpmoct032 echo cancellation module for the wctdm24xxp and
+	  wcte12xp drivers. Signed-off-by: Russ Meyerriecks
+	  <rmeyerriecks at digium.com> Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+2011-06-28 21:29 +0000 [r9995]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: Always attach hwec to a
+	  channel if available. In previous releases of DAHDI if dahdi_cfg
+	  attached a software echocan to a channel and a hardware echocan
+	  was available, the hardware echocan would be used instead of the
+	  software echocan. Since the 2.4 branch was created a new feature
+	  was merged into dahdi-linux where it was possible to mix software
+	  echocan and hardware echocan on a channel. This required using
+	  "hwec" as the echocan in the /etc/dahdi/system.conf file so that
+	  what was specified in the configuration file is what was actually
+	  used. This has resulted in users upgrading to the trunk of dahdi
+	  without updating their /etc/dahdi/system.conf file and just
+	  suddenly not using any hardware echocans any longer. The
+	  capability to mix software and hardware echocans on a span will
+	  be revisted when running dahdi_cfg on any preexisting
+	  configuration files doesn't just silently turn off hardware
+	  echocan. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+2011-06-28 18:23 +0000 [r9993]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_fxo.c,
+	  drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/card_fxs.c,
+	  drivers/dahdi/xpp/Kbuild, drivers/dahdi/xpp/xproto.c,
+	  drivers/dahdi/xpp/xpp_debug, drivers/dahdi/xpp/xbus-pcm.c,
+	  drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xpd.h,
+	  drivers/dahdi/xpp/xproto.h, drivers/dahdi/xpp/xbus-pcm.h,
+	  drivers/dahdi/xpp/xpp_dahdi.h, drivers/dahdi/xpp/card_bri.c,
+	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_echo.c
+	  (added), drivers/dahdi/xpp/card_echo.h (added),
+	  drivers/dahdi/xpp/xbus-core.h: xpd_echo: XPP Octasic echo
+	  canceler module * xpd_echo (card_echo.c) - a module to handle an
+	  Astribank hardware echo canceller module. * All other XPDs are
+	  now of type 'telephony_device'. Only a telephony device XPD
+	  provides a span to register. * The EC module will typically show
+	  up as XPD-40 and will always show up as Unregistered in
+	  'dahdi_hardware -v' Signed-off-by: Oron Peled
+	  <oron.peled at xorcom.com> Signed-off-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+2011-06-28 15:55 +0000 [r9989-9991]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/dahdi-base.c: Revert "dahdi: Group dahdi timers
+	  into "rates" for improved CPU utilization." This reverts commit
+	  r9891 and is part of two commits to revert all the timer changes.
+	  Grouping the timer into rates did not allow a timers rate to be
+	  changed after another thread is already blocked on the poll call
+	  The problem that was reported was if a sip call was made to a
+	  DAHDI channel and the sip call was disconnected before answer,
+	  the DAHDI channel would never stop rining. Signed-off-by: Shaun
+	  Ruffell <sruffell at digium.com> Acked-by: Russ Meyerriecks
+	  <rmeyerriecks at digium.com>
+
+	* drivers/dahdi/dahdi-base.c: Revert "dahdi: If a timer is not
+	  configured then we should block indefinitely." This reverts
+	  commit r9937 and is part of two commits to revert all the timer
+	  changes. Grouping the timer into rates did not allow a timers
+	  rate to be changed after another thread is already blocked on the
+	  poll call Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+	  Acked-by: Russ Meyerriecks <rmeyerriecks at digium.com>
+
+	* include/dahdi/kernel.h: kernel.h: Define __packed if not already
+	  defined. Linux kernel v2.6.22 introduced the __packed macro to
+	  allow the gcc specific __attribute__((packed)) extension to be
+	  overridden if required and checkpatch.pl will complain if you
+	  don't use it. For some strange reason gcc doesn't complain when
+	  you use non-existant decorators. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Signed-off-by: Russ Meyerriecks
+	  <rmeyerriecks at digium.com>
+
+2011-06-20 16:01 +0000 [r9981]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Start alarm timer after
+	  marking board initialized. r9946, "wcte12xp: Move the VPMADT032
+	  test/configuration to module load time." introduced a race
+	  condition where it was possible for the timer that initiates the
+	  check for the alarms to fire before the board was marked
+	  initialized. This would result in a board that would never again
+	  check it's alarm state since the first time the timer runs
+	  INITIALIZED may not be set and it will not reschedule a check
+	  since it believes the driver is unloading. This happened because
+	  the check for the VPM was moved between when the timer was first
+	  setup and when INITIALIZED was then set. Now we make sure
+	  INITIALIZED is set before the timer is first setup, and move
+	  those two operations together. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Acked-by: Russ Meyerriecks
+	  <rmeyerriecks at digium.com>
+
+2011-06-11 01:58 +0000 [r9977]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Do not read extra
+	  register when test for FXO module fails. In commit r9968
+	  "wctdm24xxp: Allow more than one outstanding read at a time" I
+	  introduced a regression where the transmit FIFO on the data
+	  channel of a B400M could get locked up. The result would be
+	  constant HDLC overflows when writing to the data channel. This
+	  regression did not make it into any releases and did not exhibit
+	  itself when crossing spans on a single B400M module. This is a
+	  partial revert of commit r9968. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+2011-06-02 20:04 +0000 [r9928-9971]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Do not export board
+	  number in the device description. The board number dupliates the
+	  information that is available in the location field. Exporting it
+	  as part of the description makes the name dependent on the driver
+	  bind order which is not desirable. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Calculate the SPI
+	  offsets ahead of time. Updates the CMD_BYTE macro to use
+	  precalculated offsets. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Shorten up some of
+	  the sleeps/waits. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Allow more than one
+	  outstanding read at a time. Since every read needs to go through
+	  the complete voicebus pipeline, if we know we're going to read
+	  multiple bytes we can queue them all up. Signed-off-by: Shaun
+	  Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: reglock can be used
+	  to protect the txhookstate. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Use lists for SPI
+	  commands to the modules. Saves time in the interrupt handler by
+	  eliminating the need to scan through all of the slots in the cmd
+	  arrays. Also allows the reads from ISR context to automatically
+	  grow as the latency grows. This ensures that battery and hook
+	  state is actually checked every frame like originally intended.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Cleanup in
+	  wctdm_identify_modules. Trivial reformatting that preps it for
+	  some parallelizing the module loads. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Remove 'pos' member
+	  from 'struct wctdm'. The card position is only used during
+	  startup so we don't need to carry it around in the strucuture.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Drop 'flags' from
+	  'struct wctdm_module'. The voicebus cards only support the S110M
+	  FXS modules which are based on the 3215. The module flags member
+	  was only used to hold whether we were dealing with a 3210 or 3215
+	  SLIC, so we can drop it since we always know we'll have a 3215
+	  based SLIC. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c,
+	  drivers/dahdi/voicebus/GpakCust.h: wctdm24xxp: Hold the reglock
+	  longer in the interrupt handler. Cuts down on the overhead of
+	  constantly saving and restoring the interrupt registers.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/xhfc.c,
+	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/wctdm24xxp/xhfc.h:
+	  wctdm24xxp: Pass the pointer to struct wctdm_module directly
+	  instead of index. This change gets all the easy places and saves
+	  on array dereferences when we already have the address of the
+	  module that we are interested in. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Use pointer to
+	  "struct fxs" in POLARITY_XOR. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Trivial. Reduce the
+	  indentation level in wctdm_proslic_oppending. Signed-off-by:
+	  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/xhfc.c,
+	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Use enumeration for
+	  module types. This change is to primarily to clarify that the
+	  types are always mutually exclusive. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Group the QRV
+	  members together. This also allows us to add them to the union
+	  with the other module types so they do not add to the memory
+	  usage if there aren't any QRV modules installed. Signed-off-by:
+	  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/xhfc.c,
+	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Group the per-module
+	  information together Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Dynamically allocate
+	  the board_name. Move the data backing the mostly unused string
+	  away from the active members of 'struct wctdm'. The location
+	  where some of the other members of 'struct wctdm' are initialized
+	  were moved so that wctdm_back_out_gracefully always has a fully
+	  formed structure to work on. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Remove modmap member
+	  from 'struct wctdm'. We can already use the module type to
+	  determine presence of a module to check. This also moves the
+	  background polling of the modules until after the board is
+	  completely initialized because the module type may change while
+	  the different types are being probed. This also means that we
+	  need to preset the shadow registers for the FXS because otherwise
+	  the shadow register will not have been read before the first time
+	  it's checked for a power alarm. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/wcte12xp.h:
+	  wcte12xp: Limit how many consecutive times to reset the VPMADT032
+	  module. Both limit the amount of junk in the kernel log and also
+	  prevent dahdi_cfg from running indefinitely if there is a module
+	  with a hardware problem which prevents it from completing the
+	  startup sequence. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp: Remove unused vpm100
+	  member from 'struct t1' Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
+	  drivers/dahdi/voicebus/GpakCust.c,
+	  drivers/dahdi/voicebus/GpakCust.h: wcte12xp, wctdm24xxp: Separate
+	  test for VPMADT032 and initialization. Part of increasing system
+	  startup speed. Splitting these two operations facilitate checking
+	  if there is a module present synchronously on driver load from
+	  the actual load of the firmware and configuration of the
+	  channels. This will allow the presence of the VPM module to be
+	  flagged on the span before registration, but load and
+	  configuration can happen in the background. When the modules are
+	  eventually loaded via udev, there will be enough time from the
+	  time the drivers are loaded to when dahdi_cfg will run to
+	  complete the firmware load, eliminating the need to block the
+	  driver here. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
+	  drivers/dahdi/voicebus/GpakCust.c,
+	  drivers/dahdi/voicebus/GpakCust.h: wcte12xp, wctdm24xxp: Use a
+	  constant string for the VPM workqueue name. In my opinion naming
+	  the VPM workqueues for each board is not worth the extra
+	  complexity. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Set the t1.vpmadt032
+	  pointer under the reglock. Ensures that a single run of the
+	  interrupt service routine is consistent about whether there are
+	  VPMADT032 commands to process or not. Signed-off-by: Shaun
+	  Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Put "Span configured"
+	  message behind debug flag. This message also duplicates what is
+	  in the /etc/dahdi/system.conf file and should only be necessary
+	  when troubleshooting problems. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c: wcte12xp: kmalloc/memset ->
+	  kzalloc. This is trivial cleanup. Fixing up a couple of places
+	  that followed a kmalloc with a memset to 0 and also sneaked in
+	  one ARRAY_SIZE usage change. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Move the VPMADT032
+	  test/configuration to module load time. The firmware load of the
+	  VPMADT032 was moved to startspan because a quad-span card in the
+	  same system would would lock interrupts for several seconds to
+	  load VPMOCT064/128 firmware. Now that the wct4xxp driver no
+	  longer locks interrupts while loading its VPM module this driver
+	  can move the VPMADT032 check/load back to module load time. This
+	  is also required so that the presence of a hardware echo canceler
+	  is marked on the span before it is registered with dahdi-base.c.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/wcte12xp.h:
+	  wcte12xp: Force spanconfig/chanconfig to wait for ready. This is
+	  always true currently but will not necessarily be in the future.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wctdm24xxp/xhfc.c,
+	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
+	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Block chanconfig and
+	  spanconfig until board is ready. Currently the board will always
+	  be ready if the module initialization function is complete but
+	  this change will facilitate allowing some of the more time
+	  consuming configuration steps to happen in parallel on system
+	  start. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/base.c,
+	  drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/dahdi-base.c:
+	  dahdi: Do not allow 'hwec' to be attached to channels that do not
+	  have one. This defines a NULL value for the name of an echocan as
+	  invalid. This will allow dahdi_genconf to probe for the presence
+	  of a hardware echocan on a channel by trying to attach one. If
+	  there is not a hardware echocan available DAHDI_ATTACH_ECHOCAN
+	  ioctl will return -EINVAL if 'hwec' was specified as the name of
+	  the echo canceler now. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* include/dahdi/kernel.h, drivers/dahdi/dahdi-base.c: dahdi:
+	  Provide notification when preechocan buffer is created and
+	  destroyed. Not quite ideal, but this seems to be the most
+	  straightforward way to know when someone is trying to monitor the
+	  preec stream on a channel. This callback allows the board driver
+	  providing the span an opportunity to setup the hardware preecho
+	  monitoring as needed. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* include/dahdi/kernel.h, drivers/dahdi/dahdi-base.c: dahdi: Update
+	  the dahdi_ec_chunk interface to support preec streams.
+	  dahdi_ec_chunk is the function that saves the received audio and
+	  places a signed linear copy of it in the pre echocanceled buffer
+	  on the channel. By splitting the input and output of this
+	  function into two parameters, a driver that can provide separate
+	  pre and post ec streams can pass them independently to DAHDI,
+	  without worrying about DAHDI overwriting a stream that may have
+	  already been echocanceled by the hardware. Previously, the
+	  dahdi_ec_chunk interface took a received audio buffer and
+	  overwrote it after canceling the echo. Now the input and output
+	  from the function are broken up in order to support hardware
+	  echocans that have a different preechocan stream. Signed-off-by:
+	  Shaun Ruffell <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/tor2.c, drivers/dahdi/wcte12xp/base.c,
+	  drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/xpp/card_pri.c,
+	  include/dahdi/kernel.h, drivers/dahdi/wct4xxp/base.c,
+	  drivers/dahdi/wctdm24xxp/xhfc.c, drivers/dahdi/wcte11xp.c,
+	  drivers/dahdi/xpp/card_bri.c, drivers/dahdi/dahdi_dynamic.c,
+	  drivers/dahdi/wct1xxp.c, drivers/dahdi/dahdi-base.c,
+	  drivers/dahdi/wctdm24xxp/xhfc.h: dahdi: Allow
+	  dahdi_span_ops.[chan|span]config and startup to block. This
+	  change ensures that the dahdi_span_ops callbacks are not called
+	  with any spinlocks held, and that the module is pinned in memory,
+	  and also passes the struct file * pointer to the callbacks.
+	  Passing the file pointer to the callbacks allows the board
+	  drivers to check any flags on the file descriptor used to
+	  configure the span/channel. The intent here is to allow
+	  dahdi_config to open the /dev/dahdi/ctl file in a non-blocking
+	  mode in case there is a lengthy processes that needs to happen as
+	  part of configuration. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: Do not release the echocan
+	  under lock. This allows any echocan cleanup to block if
+	  necessary. Especially useful for hardware echocans that may need
+	  to wait for hardware to complete the cleanup process.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com> Acked-by:
+	  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* include/dahdi/kernel.h: dahdi: Support "struct mutex" on pre
+	  2.6.16 kernels. 'struct mutex' was introduced in 2.6.16. While
+	  DAHDI previously allowed statically allocated mutexes, this
+	  change is required in order to allow mutexes to be embedded in
+	  dynamically allocated structures on older kernels. Signed-off-by:
+	  Shaun Ruffell <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: If a timer is not configured
+	  then we should block indefinitely. Some older Asterisk versions
+	  do not handle well the error message when poll is called on an
+	  unconfigured channel. The result would be constant __ast_read:
+	  No/unknown event '0' on timer for 'DAHDI/1-1'? messages from
+	  Asterisk. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+	  Acked-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: Make tone zone registration
+	  messages debug only. This duplicates information that is already
+	  in the /etc/dahdi/system.conf file and should normally only be
+	  necessary for the user when debugging problems. Signed-off-by:
+	  Shaun Ruffell <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: Propagate shutdown returncode
+	  to user space. This change fixes a condition where 'dahdi_cfg -s'
+	  would always return success regardless of whether a board driver
+	  was able to complete the shutdown. Only impacts board drivers
+	  that implemented the shutdown span callback. Signed-off-by: Shaun
+	  Ruffell <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* 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 at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Move the check for the VPM
+	  to module load time. This allows dahdi-base to know whether or
+	  not there is a VPM attached to the module as soon as it's
+	  registered as opposed to waiting for start span. This will
+	  simplify dahdi_genconf's task of creating a valid configuration
+	  file. Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Do not set maintstat in
+	  t4_clear_maint. If we always set maintstat to DAHDI_MAINT_NONE,
+	  dahdi_base will lose track of what it thinks the current state of
+	  the span is. For example, if you run $ dahdi_maint -s 1
+	  --loopback localhost When t4_clear_maint is called, the current
+	  maintenance mode state, 'maintstat', is set to DAHDI_MAINT_NONE.
+	  So the next time you call: $ dahdi_maint -s 1 --loopback off
+	  dahdi-base.c will believe that the user is trying to set the
+	  maintenance state from DAHDI_MAINT_NONE to DAHDI_MAINT_NONE and
+	  will not actually do anything. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Acked-by: Russ Meyerriecks
+	  <rmeyerriecks at digium.com>
+
+	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Atomically set framer bits
+	  for maintenance modes. Do not allow the interrupt handler or
+	  another CPU to change the value between when we get the initial
+	  value and when we write the modified value. Also includes a minor
+	  formatting fix where braces were not aligned, and remove 'inline'
+	  from t4_framer_in and t4_framer_out definitions. Signed-off-by:
+	  Shaun Ruffell <sruffell at digium.com> Acked-by: Russ Meyerriecks
+	  <rmeyerriecks at digium.com>
+
+	* drivers/dahdi/wct4xxp/Kbuild: wct4xxp: Set
+	  -Wno-unused-but-set-variable compiler option if available. Turn
+	  this option on for the entire wct4xxp driver in order to quiet
+	  the warnings in the oct612x source files. These files are from a
+	  vendor drop and the goal is to limit the deviations from the
+	  vendor if possible. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/tor2.c, drivers/dahdi/xpp/xpp_usb.c,
+	  drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/vpm450m.c,
+	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/wct4xxp/base.c,
+	  drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/wctc4xxp/base.c,
+	  drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/xpp/card_fxs.c,
+	  drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/wcb4xxp/base.c,
+	  drivers/dahdi/wctdm24xxp/xhfc.c, drivers/dahdi/xpp/card_bri.c,
+	  drivers/dahdi/wctdm.c, drivers/dahdi/xpp/xbus-core.c,
+	  drivers/dahdi/dahdi-base.c: Remove unused variables. gcc-4.6 now
+	  warns about variables that are set but never used. Clean up
+	  unused variables everywhere except the oct612x subdirectory. The
+	  oct612x should go in a separate patch in case that needs to be
+	  pulled out into a separate project again. Signed-off-by: Shaun
+	  Ruffell <sruffell at digium.com> Acked-by: Tzafrir Cohen
+	  <tzafrir.cohen at xorcom.com>
+
+	* include/dahdi/kernel.h, drivers/dahdi/wctdm24xxp/base.c:
+	  wctdm24xxp: Check if the FXS signaling setting is valid.
+	  Signed-off-by: Shaun Ruffell <sruffell at digium.com>
+
+2011-05-31 13:11 +0000 [r9925]  Tzafrir Cohen <tzafrir.cohen at 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 at xorcom.com>
+
+2011-05-23 13:38 +0000 [r9916-9917]  Tzafrir Cohen <tzafrir.cohen at xorcom.com>
+
+	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/card_bri.c,
+	  drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xbus-core.c,
+	  drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/xpp_log.h
+	  (removed): xpp: Remove obsolete XPP_DEBUGFS code XPP_DEBUGFS code
+	  was some code used to send BRI D-Channel data through debugfs
+	  for, well, debugging. Unused in recent years. Time to remove.
+
+	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/xpp_dahdi.c,
+	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/xbus-core.c,
+	  drivers/dahdi/xpp/Kbuild, drivers/dahdi/xpp/card_global.c,
+	  drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/card_global.h,
+	  drivers/dahdi/xpp/xbus-pcm.c: xpp: Remove obsolete and unused
+	  OLD_PROC code OLD_PROC marked old and unused code that was used
+	  for writing to procfs. It has long ago been replaced with
+	  different sysfs interfaces. Time to remove it.
+
+2011-05-19 21:53 +0000 [r9914]  Shaun Ruffell <sruffell at digium.com>
+
+	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Fix regression
+	  preventing VPMADT032 from loading. Commit r9781, "wcte12xp,
+	  wctdm24xxp: Remove unused support for booting VPMADT032 from
+	  SPI", introduced a bug that would prevent the VPMADT032 from ever
+	  being able to complete its startup. This regression did not make
+	  it to any releases. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+2011-04-25 14:22 +0000 [r9911-9912]  Shaun Ruffell <sruffell at digium.com>
+
+	* 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 at digium.com>
+
+	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Updating copyright. The
+	  wcb4xxp driver was edited this year. Signed-off-by: Shaun Ruffell
+	  <sruffell at digium.com>
+
+2011-04-15 18:42 +0000 [r9905-9907]  Kinsey Moore <kmoore at digium.com>
+
+	* drivers/dahdi/dahdi-base.c: dahdi: Bug fix for enabling buffer
+	  events Introduced in rev 9905, this bug could cause buffer events
+	  to become disabled if the kernel was unable to access userland
+	  data.
+
+	* include/dahdi/user.h, include/dahdi/kernel.h,
+	  drivers/dahdi/dahdi-base.c: dahdi: Add capability to generate
+	  events on buffer underruns and overruns Add BUFFEVENTS and
+	  individual buffer event channel flags so that DAHDI can notify
+	  userspace processes when it is dropping data. This can be useful

[... 3928 lines stripped ...]



More information about the dahdi-commits mailing list