2011-03-03 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.4.1 released.

2011-02-11 17:52 +0000 [r9757-9760]  Shaun Ruffell <sruffell@digium.com>

	* build_tools/make_version: make_version: Use 'git rev-parse' if
	  only looking for a sha5. Different versions of git have
	  variability in how the log output looks. Instead of git log, we
	  can use git rev-parse directly. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9475

	* build_tools/make_version: make_version: svn and git metadata
	  directory not checked properly. (closes issue #16143) Reported
	  by: Max Khon Signed-off-by: Kinsey Moore <kmoore@digium.com>
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9418

	* build_tools/make_version: make_version: '[[' -> '[' since it's
	  not a bash script. '[[' is a bash construct specifically, yet
	  #!/bin/sh is at the top of the file. 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=9408

	* Makefile, build_tools/make_version: dahdi: Generate
	  include/dahdi/version.h when building in a git repository. If
	  building within a git repository search the last log message for
	  a 'git-svn-id'. If found, the commit has a corresponding svn
	  revision number and we will use the SVN-xxx-rxxx revision form.
	  Otherwise use the output of 'git describe --long --always --tags
	  --dirty=M' as the version. 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=9396

2011-02-10 16:29 +0000 [r9746-9755]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wct4xxp/vpm450m.c: wct4xxp: Do not lock interrupts
	  while loading the VPM firmware. Since the oct6100 API consumes
	  less stack there is no longer a danger of overflowing our stack
	  during load. Signed-off-by: Shaun Ruffell <sruffell@digium.com>
	  Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=9752

	* drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tlv.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_phasing_tsst.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_playout_buf.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_interrupts.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_stats.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_conf_bridge.c,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_miscellaneous_priv.h,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_events.c:
	  wct4xxp: Reduce stack usage in oct612x API. Reduce the stack
	  usage by replacing the mOCT6100_RETRIEVE_NLP_CONF_DWORD and
	  mOCT6100_SAVE_NLP_CONF_DWORD macros with functions. Some
	  compilers do a better job of optimizing the local variables
	  declared in those macros than others. For example, with gcc
	  4.3.0, running ]# make stackcheck | grep Oct6100 | head -n 20 |
	  sed -e 's/^0\S* //g' | uniq Before: Oct6100ApiWriteVqeNlpMemory
	  [wct4xxp]: 1112 Oct6100ApiInvalidateChanPlayoutStructs
	  [wct4xxp]:520 Oct6100ApiSetChannelLevelControl [wct4xxp]: 392
	  Oct6100ApiBridgeEventRemove [wct4xxp]: 344
	  Oct6100ApiDebugChannelOpen [wct4xxp]: 312
	  Oct6100ApiWriteVqeAfMemory [wct4xxp]: 296
	  Oct6100ApiSetChannelTailConfiguration [wct4xxp]:264
	  Oct6100ApiRandomMemoryWrite [wct4xxp]: 248
	  Oct6100ApiTransferToneEvents [wct4xxp]: 248
	  Oct6100ApiModifyChannelStructs [wct4xxp]: 232 After:
	  Oct6100ApiBridgeEventRemove [wct4xxp]: 344
	  Oct6100ApiDebugChannelOpen [wct4xxp]: 312
	  Oct6100ApiRandomMemoryWrite [wct4xxp]: 248
	  Oct6100ApiTransferToneEvents [wct4xxp]: 248
	  Oct6100ApiInvalidateChanPlayoutStructs [wct4xxp]:248
	  Oct6100ApiModifyChannelStructs [wct4xxp]: 232
	  Oct6100ApiBridgeRemoveParticipantFromChannel [wct4xxp]:216
	  Oct6100ApiWriteVqeNlpMemory [wct4xxp]: 200 Oct6100ApiInitChannels
	  [wct4xxp]: 168 Oct6100ApiProgramNLP [wct4xxp]: 168 Signed-off-by:
	  Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9751

	* drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_open_inst.h,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c,
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h,
	  drivers/dahdi/wct4xxp/vpm450m.c,
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_defines.h,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_miscellaneous_priv.h,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_open.c:
	  wct4xxp: Reduce the memory footprint of the hardware
	  echocanceler. This saves ~300K of kernel memory for each quad or
	  dual span VPM. Due to the fact that this change disables caching
	  of the NLP words (among other things), the time to disable the
	  echocans appears to have increased by ~1ms. Before this change:
	  =======================================================================
	  0) ! 356.498 us | vpm450m_setecmode(); <--- disable 0) ! 387.762
	  us | vpm450m_setecmode(); <--- enable 0) ! 429.839 us |
	  vpm450m_setecmode(); <--- disable ]# echo 1 >
	  /proc/sys/vm/drop_caches && free -k total used free shared
	  buffers cached Mem: 2005352 228368 1776984 0 132 5540 -/+
	  buffers/cache: 222696 1782656 Swap: 983036 0 983036 After this
	  change:
	  =======================================================================
	  0) ! 1109.515 us | vpm450m_setecmode(); <--- disable 0) ! 339.017
	  us | vpm450m_setecmode(); <--- enable 0) ! 1431.460 us |
	  vpm450m_setecmode(); <--- disable ]# echo 1 >
	  /proc/sys/vm/drop_caches && free -k total used free shared
	  buffers cached Mem: 2005352 228080 1777272 0 112 5484 -/+
	  buffers/cache: 222484 1782868 Swap: 983036 0 983036
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9750

	* include/dahdi/kernel.h: dahdi: Add '#include <linux/kobject.h>'
	  in dahdi/kernel.h linux/kobject.h was removed from linux/fs.h in
	  upstream commit 57cc721. Add it back in in order to pick up the
	  linux/kref.h include. Reported-by: Raoul Bönisch
	  <jkl345@alice-dsl.net> Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9697

2011-02-09 12:45 +0000 [r9745]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* build_tools/live_dahdi: live_dahdi: Fix regression from r9508
	  Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9532

2011-01-31 18:09 +0000 [r9723-9726]  Shaun Ruffell <sruffell@digium.com>

	* /: syncing svnmerge-integrated.

	* drivers/dahdi/dahdi-base.c: dahdi: Experimentally remove
	  dependency on the Big Kernel Lock. With the release of Linux
	  2.6.37, the Big Kernel Lock is now a compile time option. This
	  change adds a mutex around the one place in the code that we
	  already knew was dependent on the lock_kernel/unlock_kernel calls
	  for serialization and drops the other calls to
	  lock_kernel/unlock_kernel if CONFIG_BKL is not defined. This is
	  *mostly* the dahdi-no-bkl.patch with a few minor whitespace
	  changes, the global_dialparmslock made static, and a warning
	  added to let people know they are running an experimental
	  configuration. (issue #18604) Reported by: jkroon Patches:
	  dahdi-no-bkl.patch uploaded by jkroon (license 714)
	  Signed-off-by: Jaco Kroon <jaco@uls.co.za> Signed-off-by: Shaun
	  Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9721

	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Remove code for
	  unsupported modules. The VPM100 and S100M modules are no longer
	  supported. Analog cards supported by the wctdm24xxp are still
	  compatible with the S110 and VPMADT032 modules. DAHDI-302
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9720

	* Makefile: dahdi: Add '+' on KMAKE definition to enable parallel
	  make. Now 'make -j 5' works the way it's supposed to on multi
	  core machines. On one test machine build times went from ~33
	  seconds to ~11 seconds. 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=9409

2011-01-27 21:09 +0000 [r9702]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Fix for bugs in timing selection
	  when B410P card is not the first configured card in system.

2011-01-21 05:35 +0000 [r9652-9696]  Shaun Ruffell <sruffell@digium.com>

	* /: Updating the svnmerge-integrated information.

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Perform an extended reset
	  on PCI-Express cards by default. Extended reset is needed
	  primarily with the PCI express version of the dual and quad-span
	  cards. Enable it by default for those cards and allow it to be
	  forced on or off globally for the driver as a compile time
	  option. The options to force it should be able to come out if
	  there aren't any further reports that the compile time option
	  needs to be set. DAHDI-773 Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9635

	* README: README: clarify required kernel configuration
	  Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9619

	* drivers/dahdi/dahdi-base.c: dahdi: Add error if CONFIG_BKL is not
	  defined Might help when someone wonders why they are now getting
	  errors about "lock_kernel" being undefined. Signed-off-by: Shaun
	  Ruffell <sruffell@digium.com> Acked-by: Kinsey Moore
	  <kmoore@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9592

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Remove unused functions
	  from t1_span_ops. 'open' and 'close' were already empty.
	  't1xxp_shutdown' only cleared DAHDI_FLAGBIT_RUNNING which is
	  already done in dahdi-base.c after calling shutdown. Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9318

	* drivers/dahdi/wcfxo.c, drivers/dahdi/tor2-hw.h,
	  drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcb4xxp/base.c,
	  drivers/dahdi/pciradio.c, include/dahdi/kernel.h,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/wcte11xp.c,
	  drivers/dahdi/wct1xxp.c, drivers/dahdi/wctc4xxp/base.c,
	  drivers/dahdi/wctdm.c, drivers/dahdi/wctdm24xxp/base.c: "struct
	  pci_device_id[]" -> "DEFINE_PCI_DEVICE_TABLE" 2.6.25 added the
	  DEFINE_PCI_DEVICE_TABLE macro to make sure that the pci_device_id
	  tables are put into the correct section in the binary. Convert
	  all the places where the tables were defined to use them. This is
	  linux-2.6 commit where the change went in along with the
	  rationale: 90a1ba0c5e39eeea278f263c28ae02166c5911c8
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Acked-by:
	  Kinsey Moore <kmoore@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9584

	* include/dahdi/kernel.h: dahdi: If mutexes are not available use
	  semaphores instead. Mutexes were added in 2.6.16. This will allow
	  future changes to use the mutex API without breaking on pre
	  2.6.16 kernels. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Acked-by: Kinsey Moore <kmoore@digium.com>
	  Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=9579

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: HDLC packets do not pass
	  over D-channel. dahdi/wcb4xxp driver used with Digium Wildcard
	  B410 quad-BRI PCI card unable to communicate with another ISDN
	  device (ISDN phone, another port of B410). It appears that
	  B-channels are capable to transport data, but D-channel is not.
	  Debug output added into the driver shows that packets are
	  transmitted to the D-channel, but no packets are received.
	  Further investigation shows that no interrupts received from Rx
	  FIFO associated with D-channel, although packets are delivered to
	  the FIFO. I've found that problem is in improper usage of
	  chan->chanpos while indexing the fifo index (bspan->fifos):
	  chanpos starts from 1 and fifos starts from 0. Therefore, garbage
	  read instead of fifo number. (closes issue #14834) Reported by:
	  vvv Patches: dahdi-linux-complete-2.2.0-rc1.patch uploaded by vvv
	  (license 741) Signed-off-by: Shaun Ruffell <sruffell@digium.com>
	  Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=9555

	* drivers/dahdi/vpmadt032_loader/dahdi_vpmadt032_loader.c:
	  wcte12xp, wctdm24xxp: Do not call pci_set_drvdata after device
	  initialization. Instead of using pci_set_drvdata embed the
	  'struct voicebus_operations' directly in the context so we can
	  use container_of to find the context. This resolves a problem
	  where the 'remove_one' callback gets an invalid pointer to
	  'struct t1' if the VPMADT032 is in the middle of a reload when
	  the module is unloading. DAHDI-783. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9554

	* drivers/dahdi/voicebus/voicebus.c: wctdm24xxp, wcte12xp: Disable
	  PCI read-line multiple command. There are some platforms where
	  the read-line multiple transaction causes packets to be dropped
	  in the voicebus pipeline. The only observable behavior is that
	  packets just go "missing" in the pipeline. This also only appears
	  to affect PCI cards. A typical 'symptom' of this problem is you
	  may see IRQ misses increasing without any corresponding "bumps"
	  in latency in the kernel message log. Normally, IRQ misses are
	  correlated to latency bumps since that is an indication that the
	  host was not able to service the card interrupt in a timely
	  fashion. DAHDI-510 DAHDI-774 Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Signed-off-by: Russ Meyerriecks
	  <rmeyerriecks@digium.com> Acked-by: Kinsey Moore
	  <kmoore@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9542

	* drivers/dahdi/wct4xxp/vpm450m.c: wct4xxp: Close a memory leak in
	  the VPM450 error path. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Acked-by: Kinsey Moore <kmoore@digium.com>
	  Acked-By: Russ Meyerriecks <rmeyerriecks@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9539

	* drivers/dahdi/voicebus/voicebus.c: wctdm24xxp, wcte12xp: Lock
	  interrupts when recovering from an underrun. This reduces the
	  chance that another interrupt will interfere with the recovery
	  process. Otherwise it is possible that the hardware advances past
	  the position that we think it is currently at. Signed-off-by:
	  Shaun Ruffell <sruffell@digium.com> Acked-by: Kinsey Moore
	  <kmoore@digium.com> Acked-By: Russ Meyerriecks
	  <rmeyerriecks@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9535

	* drivers/dahdi/voicebus/voicebus.c: wctdm24xxp, wcte12xp: Add more
	  descriptive message on a failed reset. Reading 0xffffffff from
	  the registers is a different error than just not coming out of
	  reset. Add a little extra debugging information. Signed-off-by:
	  Shaun Ruffell <sruffell@digium.com> Acked-by: Kinsey Moore
	  <kmoore@digium.com> Acked-By: Russ Meyerriecks
	  <rmeyerriecks@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9534

	* drivers/dahdi/wcte12xp/base.c, include/dahdi/kernel.h: wcte12xp:
	  Use interruptible waits to decrease impact on load average. The
	  wcte12xp does all the checking for alarm in a user space
	  workqueue. Most of this time is spent sleeping waiting for reads
	  from the framer to complete. Tasks in uninterruptible sleeps are
	  added to running tasks for the purposes of calculating load
	  average. This change makes the sleeps interruptible so as to not
	  affect the load average as much. For example, the following
	  command will load and configure the driver and then print the
	  load average every 10 seconds. ]# modprobe wcte12xp && dahdi_cfg
	  && ((x=12)); while [[ $x -gt 0 ]]; do cat /proc/loadavg; sleep
	  10; let x=$x-1; done With this change: 0.29 0.10 0.02 1/101 29945
	  0.24 0.10 0.02 1/101 29967 0.20 0.09 0.02 1/101 30019 0.17 0.09
	  0.02 1/101 30041 0.15 0.09 0.02 1/101 30062 0.12 0.08 0.02 1/101
	  30085 0.10 0.08 0.02 1/101 30107 0.09 0.08 0.02 1/101 30129 0.07
	  0.08 0.02 1/101 30151 0.14 0.09 0.02 1/101 30173 0.12 0.09 0.02
	  1/101 30195 0.10 0.08 0.02 1/101 30217 (and I've seen it get down
	  to 0.0) Before this change: 0.57 0.22 0.07 1/101 31920 0.48 0.21
	  0.07 1/101 31942 0.48 0.22 0.07 1/101 31964 0.48 0.23 0.08 1/101
	  31986 0.41 0.22 0.07 1/101 32008 0.42 0.23 0.08 1/101 32030 0.43
	  0.24 0.08 1/101 32054 0.45 0.25 0.09 1/101 32076 0.45 0.25 0.09
	  1/101 32098 0.46 0.26 0.10 1/101 32120 0.47 0.27 0.10 1/101 32172
	  0.39 0.26 0.10 1/101 32194 (closes issue #18142) Reported by:
	  foxfire Tested by: foxfire Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9512

	* drivers/dahdi/dahdi-base.c: dahdi: Prevent unloadable module on
	  failed open. If chan->span->ops->open() fails then the reference
	  count of the module implementing the board driver will not be
	  decremented. The result is a module that would always be "in use"
	  and unloadable. This change makes sure to release that reference
	  when open failed. (closes issue #18422) Reported by: avarvit
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Acked-by:
	  Angelos Varvitsiotis <avarvit@admin.grnet.gr> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9510

	* build_tools/live_dahdi: live_dahdi: fix usage of xpp.conf Link
	  live/usr/share/dahdi/xpp.conf from live/etc/dahdi/xpp.conf in
	  'config'. This makes the 'live' xpp.conf used rather than the
	  global xpp.conf . Signed-off-by: Tzafrir Cohen
	  <tzafrir.cohen@xorcom.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9508

	* drivers/dahdi/xpp/card_pri.c: xpd_pri: Remove pointless hooksig
	  span op If the span reports that it supports hooksig, DAHDI may
	  fail to use RBS. So remove a call to that stub function.
	  Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9506

	* drivers/dahdi/xpp/card_pri.c: xpd_pri: ignore DAHDI_VMWI and
	  DAHDIVMWI_CONFIG This fixes an annoying, though harmless issue:
	  if Asterisk decides to send voicemail messages to a channel (CAS,
	  configured as FXS), We can't do anything useful with them. So
	  ignore them to avoid scary-looking messages (from
	  report_bad_ioctl()). Signed-off-by: Tzafrir Cohen
	  <tzafrir.cohen@xorcom.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9505

	* drivers/dahdi/voicebus/voicebus.c: wctdm24xxp, wcte12xp: Close a
	  few potential resource assignment leaks. There were some routes
	  through the failure paths in __voicebus_init() where a registered
	  memory region was not subsequently released. This change closes
	  those paths. The result would be on subsequent loads of the
	  driver after hitting the failure condition you would see "IO
	  Registers are in use by another module." in dmesg.
	  request_mem_region/release_mem_region should most likely be
	  converted to devm_request_region and devm_release_region
	  introduced in 2.6.20 (commit
	  9ac7849e35f705830f7b016ff272b0ff1f7ff759) which was introduced
	  for reasons just such as this. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9503

	* build_tools/live_dahdi: live_dahdi: only check for TOOLS_DIR when
	  used Only check that TOOLD_DIR is valid when it is actually
	  needed (configure, install, config). This allows not checking for
	  it with *load on a rsync-ed copy. Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9479

	* drivers/dahdi/hpec/dahdi_echocan_hpec.c,
	  drivers/dahdi/xpp/xpp_usb.c, include/dahdi/kernel.h,
	  drivers/dahdi/wctdm24xxp/xhfc.c,
	  drivers/dahdi/voicebus/voicebus.c, drivers/dahdi/wctc4xxp/base.c,
	  drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/xpp/xbus-core.c:
	  Remove mutex emulation Using semaphores as mutexes was removed
	  from the kernel in 4882720b267b. Just use straight semaphores
	  now. 'DECLARE_MUTEX()' -> 'DEFINE_SEMAPHORE()' and 'init_MUTEX()'
	  -> 'sema_init()'. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> LKML-Reference:
	  <20100907125057.562399240@linutronix.de> Acked-by: Tzafrir Cohen
	  <tzafrir.cohen@xorcom.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9464

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Detect FXS modules
	  based on the 3210 SLIC. Fixes a regression introduced in revision
	  5916 where FXS modules based on the 3210 were not properly
	  detected. (closes issue #18184) Reported by: bsexton Patches:
	  dahdi-fxo-detect.diff uploaded by bsexton (license 1133)
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9456

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Leave FXO (DAA)
	  always in full-wave ring detect mode. In zaptel commit 4096 [1],
	  all the debouncing of ring signals were moved into software as
	  opposed to using the ring validation circuit in DAA. That commit
	  failed to remove the initial check and set of the ring validation
	  circuit. [1]
	  http://svn.digium.com/view/zaptel?view=revision&revision=4096
	  (closes issue #16894) Reported by: rde42 Signed-off-by: Shaun
	  Ruffell <sruffell@digium.com> Acked-by: Kinsey Moore
	  <kmoore@digium.com> Acked-by: Russ Meyerriecks
	  <rmeyerriecks@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9441

	* drivers/dahdi/firmware/Makefile: dahdi: '-o' -> '--no-same-owner'
	  in drivers/dahdi/firmware/Makefile It appears that in Centos 4,
	  the version of tar doesn't like the -o flag, but will honor the
	  --no-same-owner flag. (closes issue #16063) Reported by: tzafrir
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Acked-by:
	  Kinsey Moore <kmoore@digium.com> Acked-by: Russ Meyerriecks
	  <rmeyerriecks@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9434

	* drivers/dahdi/voicebus/voicebus.c: wcte12xp, wctdm24xxp: Do not
	  rely on polling main memory. The voicebus library by default
	  configures the PCI interface to poll the descriptor ring for
	  available buffers. There are some platforms like the Intel
	  SG3420P motherboard where this does not appear to be sufficient.
	  Writing to the transmit demand poll register resolves this
	  problem on these troublesome platforms. DAHDI-700 DAHDI-702.
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9397

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Drop usage of 'volatile'
	  qualifier. The registers on the device are already accessed with
	  readl/writel and the readchunk and writechunk are mapped into
	  coherent DMA region. The contents of those buffers should not be
	  changing in the middle of any transmit/receive prep call.
	  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=9400

	* include/dahdi/dahdi_config.h: dahdi: Make CONFIG_DAHDI_PPP off by
	  default. Before CONFIG_DAHDI_PPP can be on by default, some more
	  work needs to be done to ensure that the ppp_generic module is
	  not always loaded and that all channels do not carry around all
	  the PPP members unnecessarily. (issue #17990) Signed-off-by:
	  Shaun Ruffell <sruffell@digium.com> Acked-by: Kevin P. Fleming
	  <kpfleming@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9392

	* include/dahdi/dahdi_config.h: dahdi: Fix for when PPP support is
	  compiled as a kernel module. When compiling dahdi-linux I expect
	  ppp support to be compiled in even if the kernel config has PPP
	  configured as a module. (closes issue #17990) Reported by: jkroon
	  Patches: dahdi-config-ppp.diff uploaded by jkroon (license 714)
	  Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=9328

	* drivers/dahdi/voicebus/GpakCust.c: vpmadt032: Remove potential
	  endless waits when resetting. It is possible to softlock if the
	  board stops delivering interrupts in the middle of a reset.
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9332

	* drivers/dahdi/voicebus/GpakCust.c: vpmadt032: Honor the
	  CONFIG_DAHDI_NO_ECHOCAN_DISABLE flag. Setting this configuration
	  option would not have had any impact when a hardware echo
	  canceler was in use. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Acked-by: Kinsey Moore <kmoore@digium.com>
	  Acked-by: Russ Meyerriecks <rmeyerriecks@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9432

	* drivers/dahdi/xpp/init_card_4_30: xpp: Fixes init error for PRI
	  devices with < 4 ports Fixes a regression singce r8873: if
	  pri_protocol is not explicitly set (in /etc/dahdi/xpp.conf) and
	  the device has (licences for) less than 4 "PRI" (E1/T1) ports,
	  the initialization script will attempt to read from a
	  non-existing SysFS file, and bail out, resulting in a the device
	  failing to initialize. For those non-existing ports we can just
	  skip that part of the initialization. So we just skip it. Work
	  around: explicitly set pri_protocol to E1 or T1, as needed.
	  Xorcom Rev: 8047. Ticket: 1334. Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9430

	* drivers/dahdi/dahdi-base.c, include/dahdi/kernel.h: dahdi:
	  Anonymous member in dahdi_echocan_events union. Make explicit
	  what part of the union is being accessed. (closes issue #15908)
	  Reported by: ys Patches: dahdi-dahdi_echocan_events.diff uploaded
	  by ys (license 281) Signed-off-by: Kinsey Moore
	  <kmoore@digium.com> Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9421

	* drivers/dahdi/dahdi-base.c, drivers/dahdi/dahdi_echocan_kb1.c,
	  drivers/dahdi/dahdi_echocan_mg2.c: dahdi: Fix 'void *' pointer
	  arithmetic warnings. (closes issue #15927) Reported by: Max Khon
	  Patches: dahdi_echocan2.diff uploaded by Max Khon (license 884)
	  void2.diff uploaded by Max Khon (license 884) Signed-off-by:
	  Kinsey Moore <kmoore@digium.com> Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9420

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Add optional FXO
	  digital loopback if DEBUG is defined. This module parameter will
	  allow patgen/pattest to be used only on FXO ports. *ALL* FXO
	  ports will be placed in digital loopback mode when set. The
	  current intent is for this to be removed as an optional module
	  parameter when there is a channel by channel representation in
	  sysfs. Otherwise, a new IOCTL would have to be defined and a tool
	  written in order to support this. DAHDI-696. Signed-off-by: Shaun
	  Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9391

	* drivers/dahdi/dahdi-base.c: dahdi: Be more tolerant of surprise
	  removal of channels. Enable DAHDI to detect if an operation on a
	  file handle refers to a channel that may have been unregistered.
	  This can occur, for example, when a board driver is hot-swapped
	  out in a live system. This patch ensures that file->private_data
	  is always properly set for any open channel, and it's set back to
	  NULL when a channel is unregistered. This way file->private_data
	  can be used to check whether it's valid to perform an operation
	  on the channel. (NOTE: There is still a race condition here if
	  the driver was unbound on one processor during the window of time
	  between when file->private_data was checked and the system call
	  finishes). Also, since DAHDI should only return -ENODEV on read
	  or write when there was a surprise device removal on a running
	  system this sleep can prevent the system from becoming
	  unresponsive if the userspace application does not check for the
	  -ENODEV error and constantly tries to call read with elevated
	  privileges. (issue #17669) Reported by: tzafrir Tested by:
	  sruffell Review: https://reviewboard.asterisk.org/r/905/
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9353

	* drivers/dahdi/voicebus/voicebus.c: wcte12xp, wctdm24xxp: Add call
	  to 'pci_set_mwi' on initialization. I have yet to personally come
	  across a system where this actually changes the observable
	  behavior, but it certainly seems like the sane thing to do and I
	  would rather not let this float around as a patch when I can just
	  merge it in. Signed-off-by: Shaun Ruffell <sruffell@digium.com>
	  Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=9326

	* drivers/dahdi/voicebus/voicebus.c: wcte12xp, wctdm24xxp: Remove
	  redundant vb_enable_io_access. These three bits are already set
	  by 'pci_enable_device' and 'pci_set_master' calls. Signed-off-by:
	  Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9325

	* drivers/dahdi/dahdi-base.c: dahdi-base: All channels for a span
	  are now unconfigured on shutdown Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9317

	* drivers/dahdi/dahdi_dummy.c: dahdi_dummy: #include <linux/slab.h>
	  for kzalloc and friends. Fix the same issue as in r8550 for
	  dahdi_dummy.c (closes issue #17959) Reported by: glen201 Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9307

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte11xp.c:
	  wcte11xp, wcte12xp: Fix a long-standing issue with shutdown Upon
	  shutdown, both drivers would attempt to power down external
	  interfaces, but never attempted to bring them back up when the
	  span was restarted. Removing that code allows the driver to work
	  properly until a better solution can be found. Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9316

	* README: README: Remove references to dahdi_dummy. Since
	  dahdi_dummy is no longer required remove the references from
	  README. (issue #17959) Reported by: glen201 Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9308

	* drivers/dahdi/dahdi-base.c: dahdi: Fix compilation error when
	  CONFIG_DAHDI_NET is defined. Kernel interface for network devices
	  changed. This is the patch from issue plus a few trivial
	  checkpatch.pl formatting changes (minus the >80 column warnings).
	  (closes issue #17857) Reported by: msink Patches:
	  dahdi_net-v2.patch uploaded by msink (license 1103)
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com> Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9247

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Update span-local struct
	  with timing info dahdi_tool was incorrectly reporting all spans
	  to be in local timing mode. This is because the driver tracks
	  which span it's timing syncs to, within the card local struct
	  "wc". We have to manually go through and copy timing updates to
	  the span local structs because this is what dahdi_tool actually
	  reads. dahdi-526 Origin:
	  http://svnview.digium.com/svn/dahdi?view=rev&rev=9312

	* /: Turning on merge tracking.

	* / (added): Creating 2.4 branch.

2010-08-31 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.4.0 released.

2010-08-27 21:59 +0000 [r9204-9205]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Moving the transmit short
	  detection behind debug module param. This needs some more testing
	  before it's on by default. If the card is otherwise functioning,
	  these messages may be confusing to the user. If the card is not
	  functioning, the driver can be reloaded with debug to check for
	  this condition. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com>

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Removed transmit line open
	  fault detection The transmit line open detection was pretty weak
	  in that it trips upon receiving 32 consecutive zeroes. We were
	  getting false positives from looping and other miscellaneous
	  functions. Removing this feature, but leaving the transmit line
	  short detector as it actually detects physical shorts. From: Russ
	  Meyerriecks <rmeyerriecks@digium.com>

2010-08-24 18:44 +0000 [r9188]  Russ Meyerriecks <rmeyerreicks@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Added card level timing
	  information in sysfs For kernels >= 2.6.18, each individual card
	  has it's local timing hung off the pci device in the sysfs tree.
	  dahdi-626

2010-08-20 01:12 +0000 [r9168]  Russ Meyerriecks <rmeyerreicks@digium.com>

	* drivers/dahdi/dahdi-base.c: dahdi: Uncross dest if dacs is not
	  supported between two different chans. This removes a confusing
	  message introduced in 9120 when bridging channels on two differnt
	  cards. i.e. "dahdi: unable to cross connect 'TE4/0/2/2' with
	  'WCTDM/0/0'" "dahdi: unable to cross connect 'WCTDM/0/0' with
	  'TE4/0/2/2'"

2010-08-19 18:03 +0000 [r9167]  Shaun Ruffell <sruffell@digium.com>

	* include/dahdi/kernel.h, drivers/dahdi/wctdm24xxp/base.c: dahdi:
	  move 'dahdi_is_digital_span' back into wctdm24xp driver. Older
	  kernels do not like the 'bool' type and I cannot just add it into
	  include/dahdi/kernel.h without compile messages in the xpp driver
	  where bool is defined directly. Since the wctdm24xxp driver is
	  the only place using that function, I just moved it back there
	  for now. This fixes a regression introduced in 9130.

2010-08-18 16:56 +0000 [r9162-9163]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* build_tools/live_dahdi: live_dahdi: shutdown dynamic spans to to
	  avoid panic If we fail to shutdown the dynamic spans, we may get
	  a panic on the next load. This attempts to guess when we need to
	  unload spans at unload.

	* build_tools/live_dahdi: live_dahdi: allow testing dynamic local
	  spans Adds support for configuring dynamic spans through
	  live_dahdi. To enable, set in live/live.conf: DYNAMIC_LOC="yes"
	  It will generate an extra live/etc/dahdi/dynamic.conf (if one
	  does not exist) and use it to configure extra dynamic spans in
	  the system. Note that ATM this will make the system hang pretty
	  easily at 'load' time.

2010-08-18 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.4.0-rc1 released.

2010-08-17 17:15 +0000 [r9144-9145]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Clean up -vpm workqueue
	  if there is not a VPMADT032 installed. DAHDI-681.

	* drivers/dahdi/wcte12xp/base.c,
	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/wcte12xp/wcte12xp.h,
	  drivers/dahdi/voicebus/voicebus.h: wcte12xp, wctdm24xxp: Add
	  compile time option CONFIG_VOICEBUS_ECREFERENCE. Add compile time
	  option to improve the reference signal provided to software echo
	  cancelers. The intent here is for this functionality to become
	  the default behavior but more testing and work on the edge cases
	  is needed. It's being brought in now as a compile time option
	  since there have been reports that it helps in some environments.
	  Instead of using two buffers, which means that at best we're two
	  milliseconds behind, use a circular buffer where audio data is
	  written on the transmit side and read on the receive path. In
	  this way high latency values will not interfere with the
	  operation of software echo cancelers. DAHDI-291. DAHDI-387. This
	  work was originally on:
	  http://svn.asterisk.org/svn/dahdi/linux/team/sruffell/improved_ecreference@9143
	  and includes a generic kfifo replacement by Matt Fredrickson.

2010-08-16 21:43 +0000 [r9143]  Russ Meyerriecks <rmeyerreicks@digium.com>

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Set the companding
	  mode on the analog ports in fixup. Fixes a regression from 9101
	  'wctdm24xxp: Added "auto" companding option' where the analog
	  modules were not defaulted to alaw properly when a digital module
	  is on an Hx8. This could result in very poor audio since the
	  modules were providing ulaw data, but dahdi-base believed the
	  audio was in alaw when converting to signed linear.

2010-08-16 18:43 +0000 [r9142]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi_transcode.c: dahdi_transcode: No need for
	  ioctl when unlocked_ioctl is available More work to kill the BKL
	  (Big Kernel Lock)
	  http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=10041d2d14688e207d0d829095147aa82c1f211b

2010-08-13 19:38 +0000 [r9130-9138]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/oct612x/include/oct6100api/oct6100_mixer_pub.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_tsst_inst.h
	  (added), drivers/dahdi/oct612x/apilib/bt (added),
	  drivers/dahdi/oct612x/include/apilib/octapi_largmath.h (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tone_detection.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_miscellaneous.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_playout_buf_pub.h
	  (added), drivers/dahdi/oct612x/include/digium_unused.h (added),
	  drivers/dahdi/oct612x/include/apilib/octapi_llman.h (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_events.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tlv.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_events_inst.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_debug_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_phasing_tsst.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_tlv_inst.h
	  (added), drivers/dahdi/oct612x/include/octtypewin.h (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_phasing_tsst_inst.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_memory.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_playout_buf_priv.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_stats_pub.h
	  (added), drivers/dahdi/oct612x/include/octosdependant.h (added),
	  drivers/dahdi/oct612x/include/octrpc/oct6100_rpc_protocol.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_open_pub.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_adpcm_chan_inst.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_interrupts.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_phasing_tsst_pub.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_chip_stats_priv.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_pub.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_tone_detection_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_mixer.c
	  (added), drivers/dahdi/oct612x/get_discards (added),
	  drivers/dahdi/oct612x/include/apilib/octapi_bt0.h (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_apimi
	  (added), drivers/dahdi/oct612x/apilib/llman (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tsst.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_interrupts_priv.h
	  (added), drivers/dahdi/oct612x/apilib/bt/octapi_bt0_private.h
	  (added), drivers/dahdi/oct612x/include/oct6100api/oct6100_apimi.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_open.c
	  (added), drivers/dahdi/oct612x/include/octdef.h (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_tsi_cnct.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_tsi_cnct_inst.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_api_inst.h
	  (added), drivers/dahdi/oct612x/include (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_tsst_priv.h
	  (added), drivers/dahdi/oct612x/apilib/llman/octapi_llman.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_tsi_cnct_pub.h
	  (added), drivers/dahdi,
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_miscellaneous_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_events_priv.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_mixer_inst.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_tlv_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_phasing_tsst_priv.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_adpcm_chan_pub.h
	  (added), drivers/dahdi/oct612x/octdeviceapi (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_memory_priv.h
	  (added), drivers/dahdi/oct612x (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_adpcm_chan_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_conf_bridge.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_stats.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_conf_bridge_inst.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_remote_debug_inst.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_open_inst.h
	  (added), drivers/dahdi/oct612x/include/octrpc (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_tone_detection_pub.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_events_pub.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_errors.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_apimi/oct6100_mask_interrupts.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_tsi_cnct_priv.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_debug_inst.h
	  (added), drivers/dahdi/oct612x/apilib/largmath (added),
	  drivers/dahdi/oct612x/apilib (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_interrupts_pub.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_playout_buf.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_playout_buf_inst.h
	  (added), drivers/dahdi/oct612x/octasic-helper (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_debug_pub.h
	  (added), drivers/dahdi/oct612x/include/octrpc/rpc_protocol.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_remote_debug.c
	  (added), drivers/dahdi/oct612x/include/oct6100api (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_chip_stats_inst.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api
	  (added), drivers/dahdi/oct612x/apilib/bt/octapi_bt0.c (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_tone_detection_inst.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_mixer_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_version.h
	  (added), drivers/dahdi/oct612x/Makefile (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_apiud.h (added),
	  drivers/dahdi/oct612x/include/octtypevx.h (added),
	  drivers/dahdi/oct612x/apilib/largmath/octapi_largmath.c (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c
	  (added), drivers/dahdi/oct612x/include/octmac.h (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_remote_debug_pub.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_conf_bridge_pub.h
	  (added), drivers/dahdi/oct612x/include/apilib (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_adpcm_chan.c
	  (added), drivers/dahdi/oct612x/include/oct6100api/oct6100_api.h
	  (added), drivers/dahdi/oct612x/octdeviceapi/oct6100api (added),
	  drivers/dahdi/oct612x/apilib/llman/octapi_llman_private.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_user.c
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_interrupts_inst.h
	  (added),
	  drivers/dahdi/oct612x/include/oct6100api/oct6100_defines.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_conf_bridge_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_remote_debug_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_chip_open_priv.h
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_debug.c
	  (added),
	  drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_channel_priv.h
	  (added), drivers/dahdi/oct612x/include/octtype.h (added),
	  drivers/dahdi/oct612x/test.c (added): wct4xxp: Move 'oct612x'
	  from an svn:external directly into dahdi-linux. From
	  http://svn.digium.com/svn/octasic_api/oct612x/tags/PR49-03/software@44
	  This is only currently maintained as part of DAHDI linux so it
	  makes sense to have it directly in DAHDI linux. This obliterates
	  any chance of having 0 checkpatch.pl errors between the 2.3.0 and
	  2.4.0 releases. Oh well... Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com>

	* drivers/dahdi/wctdm24xxp/xhfc.c, drivers/dahdi/wctdm24xxp/base.c:
	  wctdm24xxp: Set the 'spantype' for the digital spans. Defaults to
	  "TE" but can be set by software to "NT" by dahdi_cfg.
	  Signed-off-by: Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: 'is_span_digital' ->
	  'dahdi_is_span_digital' Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com>

	* include/dahdi/user.h, include/dahdi/kernel.h: dahdi: Make it
	  clear that 'linecompat' can be used to identify analog spans. The
	  linecompat member can be used by a span to identify the
	  global-to-the-span signalling types supported. Analog spans do
	  not support any span-global signalling and therefore linecompat
	  should always be 0. Signed-off-by: Shaun Ruffell
	  <sruffell@digium.com>

2010-08-12 19:38 +0000 [r9127]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Timing fix where handling math in
	  find_sync_src() would return -2 instead of -1 in cases where
	  automatic timing sync was specified.

2010-08-11 05:21 +0000 [r9120-9124]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: dahdi: Do not error when uncrossing a
	  channel if there is no 'dacs' callback. The previous commit was
	  making all chan configs fail on a span that did not have a dacs
	  callback. Also add some documentation for 'dahdi_chan_dacs' and
	  make it more explicit when we're disabling cross connect.

	* drivers/dahdi/dahdi-base.c: dahdi: "Unable" -> "Unable to".
	  Proper sentences are always preferred. Thanks kpfleming :)

	* drivers/dahdi/dahdi-base.c: dahdi: Fix oops when trying to dacs
	  channels with a null dacs function.

2010-08-09 14:43 +0000 [r9117]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* include/dahdi/kernel.h: work around RHEL backport of strcasecmp
	  RHEL/Centos 5.4 kernels broke after the latest strcasecmp
	  backport. So skip them.

2010-08-06 22:12 +0000 [r9097-9105]  Russ Meyerriecks <rmeyerreicks@digium.com>

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: minor checkpatch changes

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Added card level timing
	  information in sysfs For kernels >= 2.6.18, each individual card
	  has it's local timing hung off the pci device in the sysfs tree.
	  dahdi-626

	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Added "auto"
	  companding option Added the "auto" option for the module
	  parameter "companding". In auto mode its left up to each card to
	  decide what companding mode it should be in. If a BRI module is
	  installed, it set everything to alaw; ulaw is selected if no BRI
	  module is installed. Also fixed a bug where forcing companding
	  one way or the other wasn't affecting the BRI modules. dahdi-673

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xp: Replaced alawoverride
	  with companding Added the module parameter "companding" to
	  eventually replace the current alawoverride parameter. Added some
	  deprecated messages so current users will know to move over
	  before we remove it entirely. dahdi-673

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Renamed module parameter
	  "alawoverride" to "companding" Renamed the module parameter
	  "alawoverride" to "companding". The valid values for "companding"
	  are now the strings "alaw" or "ulaw", instead of integers.
	  dahdi-673

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: module param
	  "extendedreset" now a compile option Due to the very small number
	  of affected customers we have removed the module parameter
	  "extendedreset" in favor of a compile time option
	  "CONFIG_EXTENDED_RESET". dahdi-673

	* include/dahdi/kernel.h: dahdi: Backport strcasecmp for kernels <
	  2.6.22 strcasecmp was brought into the kernel at v2.6.22

2010-08-06 18:27 +0000 [r9094]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: dahdi: Trivial spelling change.

2010-08-05 21:05 +0000 [r9090]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi-base.c: don't crash on disconnecting of AB
	  This is a regression from r8985 . The temporary 'module' was
	  there because the pointer 'chan' may become invalid after the
	  close function.

2010-08-04 00:18 +0000 [r9087]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctdm24xxp/xhfc.c,
	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/wctdm24xxp/xhfc.h:
	  wctdm24xxp: 'struct dahdi_span' is already embedded in the
	  'struct wctdm_span'. We cannot also embed it in struct b400m_span
	  structure and expect container_of to work. This fixes a
	  regression introduced in r8984.

2010-08-03 13:16 +0000 [r9082]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* README: Proper Mantis category to use

2010-07-31 04:00 +0000 [r9059-9073]  Alec L Davis <sivad.a@paradise.net.nz>

	* drivers/dahdi/wctdm.c: wctdm: Prevent FXS Proslic staying in
	  "Forward/Reverse OnHookTransfer" during call Since the 3 second
	  click after answering the call on an FXS port has been fixed
	  issue# 15352, the side effect is that the Proslic during a call,
	  still has the audio signal paths still powered on. Reading the
	  Si3215 specs it reads that an extra ~20mA is consumed while in
	  OHT mode. (issue #17764) Reported by: alecdavis Patches:
	  wctdm_fxs_offhook.diff.txt uploaded by alecdavis (license 585)
	  Tested by: alecdavis

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Prevent FXS Proslic
	  staying in "Forward/Reverse OnHookTransfer" during call
	  [One-liner summary of changes] Now that the 3 second click after
	  answering the call on an FXS port has been fixed, the side effect
	  is that the Proslic during a call, still has the audio signal
	  paths still powered on. Reading the Si3215 specs it reads that an
	  extra ~20mA is consumed while in OHT mode. (closes issue #17764)
	  Reported by: alecdavis Patches: wctdm24xxp_fxs_offhook.diff.txt
	  uploaded by alecdavis (license 585) Tested by: alecdavis

	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/wctdm24xxp/base.c: SLIC_LF_OPPENDING confict
	  between wctdm_proslic_recheck_sanity() and
	  set_lasttxhook_interruptible() Problem:
	  'wctdm_proslic_recheck_sanity()' is executed (4 times??) every
	  ~256ms which monitors and clears the SLIC_LF_OPPENDING on
	  fxs->lasttxhook when the LF state has been reached.
	  'set_lasttxhook_interruptible()' times out after 100ms waiting
	  from the previous write to the SLIC_LF register, by waiting for
	  SLIC_LF_OPPENDING to be cleared, thus the write will fail.
	  Solution: adds wctdm_proslic_check_oppending which does the
	  monitoring and clearing of SLIC_LF_OPPENDING, which is execute
	  every 1ms. It also if the correct state is not reached within
	  100ms, resends the lasttxhook state. (closes issue #17724)
	  Reported by: alecdavis Patches: wctdm24xxp_fxs_answer.diff4.txt
	  uploaded by alecdavis (license 585) Tested by: alecdavis,
	  sruffell

	* drivers/dahdi/wcb4xxp/Makefile, drivers/dahdi/wctdm.c: reverting:
	  add curly braces to _write_8bits Against Kernel Coding Guidelines

	* drivers/dahdi/wctdm.c: add curly braces to _write_8bits

2010-07-29 21:51 +0000 [r9049-9056]  Kinsey Moore <kmoore@digium.com>

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/base.c:
	  wct4xxp, wcte12xp: restrict signaling and line combinations to
	  what actually works

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: reference B400Ms as
	  BRI, correct a module alias, make the module description more
	  accurate

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: only allow B400M
	  modules on hybrid cards

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: correct references
	  to "wildcard" and display the number of BRI spans and analog
	  channels after detection

	* drivers/dahdi/dahdi-base.c: dahdi-base: display Reserved when a
	  channel is unusable (has a sigcap of 0)

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/base.c:
	  wct4xxp, wcte12xp: remove loobpack parameter, functionality
	  provided by dahdi_maint

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: don't report about
	  VPM100s if none are present and warn the user when flashing
	  firmware

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: increase consistency and
	  decrease verbosity of kernel logging

2010-07-28 15:32 +0000 [r9034-9046]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/GpakApi.c: wcte12xp, wctdm24xxp: Minor
	  cleanup 0 -> NULL

	* drivers/dahdi/tor2.c: tor2: Do not directly dereference I/O
	  memory. Mainly to quiet a sparse warning, but this could be a
	  real problem on some non x86 platforms.

	* drivers/dahdi/wctdm.c: wctdm: Fix signed one-bit fields. Thanks
	  sparse.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Add __user annotation in
	  copy_to_user call. Quiets sparse.

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Several minor changes to
	  make sparse/checkpatch.pl happy. Make setup_chunks static,
	  eliminate a dynamic array in the interrupt handler, don't cast
	  away a memory region specifier, and don't initialize statics to
	  0.

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Trivial removal of some
	  whitespace at the end of a line. Fixing formatting errors that
	  have snuck in since the 2.3.0 release.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Trival formatting
	  changes. Fixing up some of the formatting errors that crept in
	  since the 2.3.0 release.

	* README: README: Trivial removal of whitespace at the end of
	  lines.

	* drivers/dahdi/dahdi-base.c: dahdi: Unlock the dahdi_span.lock
	  when passed an invalid DAHDI_MAINT command. Fixes the following
	  sparse warning "warning: context imbalance in 'dahdi_ctl_ioctl' -
	  different lock contexts for basic block". Thank you sparse!

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Add compile-time option
	  to always poll the interface. Added as a workaround for a system
	  which was not routing interrupts properly and therefore is off by
	  default. Candidate for reversion in a couple of years. DAHDI-627.

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Move from I/O space to
	  memory-mapped registers. Certain platforms have trouble with the
	  registers mapped from I/O space. DAHDI-627.

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Do not ACK response
	  packets without a corresponding request. Closes a small window of
	  opportunity where system conditions prevent the driver from
	  servicing it's receive ring within the timeout period of a
	  request, and then in the middle of retrying the request (after
	  the request was already removed from the "waiting_for_response"
	  list) the driver process the response, it's possible for the
	  driver to ACK the response without ever pairing it up with the
	  original request. The result being that the DTE will then ignore
	  our attempts to retry the original request. DAHDI-430.

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Allow read to return
	  more than one packet of data. As of this writing codec_dahdi
	  (Asterisk module) will not call 'read' on a transcoder channel
	  more often than it calls 'write'. When a translation path is
	  setup that will transcode from g723 to g729, write is called
	  every 30ms and each 'read' returns only 20ms of data. The end
	  result is audio that slowly becomes increasing delayed. Since
	  codec_dahdi calls the system read function with a buffer large
	  enough to hold more than one packet this can prevents packets
	  from backing up on the channel. DAHDI-582

2010-07-28 10:30 +0000 [r9025-9028]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/card_pri.c: Ignore Reg. 0x70 messages at E1.

	* drivers/dahdi/xpp/card_pri.c: demote a notice that will happen at
	  registration We might as well ignore this, as we will get this at
	  span registration time anyway.

2010-07-27 01:31 +0000 [r8997-9019]  Russ Meyerriecks <rmeyerreicks@digium.com>

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Enabled network facing
	  looping for E1 Added the abililty to loop the line back towards
	  the network for E1 modes. This supports both network loop and
	  network payload loop.

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Fixed error injection bug

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Error counter injection
	  for E1 mode Added support for error counter injection for E1 mode

	* include/dahdi/user.h, drivers/dahdi/wct4xxp/base.c: wct4xxp:
	  Removed card level event handler Upon review the event introduced
	  in r8998 seemed to be redundant, as the same information was
	  already available. Performance issues were also a concern. This
	  reverts r8998.

	* include/dahdi/user.h, drivers/dahdi/wct4xxp/base.c,
	  drivers/dahdi/dahdi-base.c: Added hardware transformer check
	  QuadFalc has the ability to test if the transformer is performing
	  correctly. If the components between the framer and the physical
	  span interface are shorted out or opened for any reason we can
	  now detect it. Possible causes for tripping this error could be a
	  broken transformer from an electrical spike or a board
	  manufacturing error.

	* include/dahdi/user.h, drivers/dahdi/wct4xxp/base.c,
	  drivers/dahdi/dahdi-base.c: Added card level event handler When a
	  loss of syncronization signal occurs on one of the spans, it
	  affects all spans on that card. Since we do not have a span or
	  card level event system, we have to queue up a global event on
	  all channels for that card The new event is DAHDI_EVENT_SYNC

	* drivers/dahdi/wct4xxp/wct4xxp.h, include/dahdi/user.h,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/dahdi-base.c: Added
	  the ability to trigger alarm simulation states in the qfalc
	  framer. Added some more verbose red alarm states in the upper
	  byte of the alarm member of the dahdi_span structure Removed some
	  unnecessary instrumentation regarding the enabling of the errored
	  second and 1 second counters for performance collecting. Also
	  added a couple comments.

2010-07-26 00:30 +0000 [r8979-8986]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/tor2.c, drivers/dahdi/wcfxo.c,
	  drivers/dahdi/wcte12xp/base.c, include/dahdi/kernel.h,
	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/pciradio.c,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/xpp/card_fxo.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/wcte11xp.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/dahdi_dynamic.c, drivers/dahdi/wctdm.c,
	  drivers/dahdi/wct1xxp.c, drivers/dahdi/dahdi-base.c,
	  drivers/dahdi/dahdi_dummy.c: dahdi: Move the 'owner' field from
	  dahdi_span to dahdi_span_ops. One more thing that can be moved
	  out of the per-span structure.

	* drivers/dahdi/tor2.c, drivers/dahdi/wcfxo.c,
	  drivers/dahdi/wcte12xp/base.c, include/dahdi/kernel.h,
	  drivers/dahdi/pciradio.c, drivers/dahdi/xpp/card_pri.c,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/wcb4xxp/base.c,
	  drivers/dahdi/wcte11xp.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/xpp_dahdi.h, drivers/dahdi/dahdi_dynamic.c,
	  drivers/dahdi/wct1xxp.c, drivers/dahdi/wctdm.c,
	  drivers/dahdi/dahdi-base.c: dahdi: Move the callbacks in
	  dahdi_span into its own structure. Part of preparation for adding
	  additional callbacks to allow board drivers to advertise and
	  support gathering pre-echocan data from hardware echocans.

	* drivers/dahdi/tor2.c, drivers/dahdi/wcfxo.c,
	  drivers/dahdi/wcte12xp/base.c, include/dahdi/kernel.h,
	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/pciradio.c,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/xpp/xbus-pcm.c, drivers/dahdi/xpp/xpp_dahdi.c,
	  drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/wctdm24xxp/xhfc.c,
	  drivers/dahdi/wcte11xp.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/dahdi_dynamic.c,
	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h, drivers/dahdi/wctdm.c,
	  drivers/dahdi/wct1xxp.c, drivers/dahdi/wctdm24xxp/xhfc.h,
	  drivers/dahdi/dahdi_dummy.c: dahdi: Remove the 'pvt' member from
	  dahdi_span. The vast majority of board drivers already keep the
	  dahdi_span structure in a driver specific structure. The others
	  were easily converted. This way board drivers can use the
	  container_of macro to find what was previously pointed to by the
	  "pvt" member of the span. One less thing to think about in the
	  span structure.

	* drivers/dahdi/firmware/Makefile,
	  drivers/dahdi/voicebus/GpakApi.c,
	  drivers/dahdi/voicebus/gpakenum.h,
	  drivers/dahdi/voicebus/GpakApi.h,
	  drivers/dahdi/voicebus/GpakCust.c,
	  drivers/dahdi/voicebus/gpakErrs.h: wcte12xp, wctdm24xxp: Updating
	  VPMADT032 firmware to version to 1.25 The echo canceler will now
	  monitor if the receive signal goes over a certain threshold, and
	  if so, freezes its adaptation to prevent loss of convergence.
	  I.e. Fixes conditions where blowing into your handset could
	  result in echo. Additionally, 1.25 includes improvements for
	  handling when line conditions change from echo free to containing
	  echo.

	* drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/voicebus/voicebus.h: wcte12xp, wctdm24xxp: Return
	  buffer processing to interrupt handler. In revision 8095, I had
	  moved most of the buffer processing out of the interrupt handler
	  and into a tasklet. The intended result was to enable multiple
	  cards to interleave with one another. But once again I was bitten
	  by the fact that there are some systems that for one reason or
	  another do not process their tasklets in a timely enough manner
	  for the real-time nature of TDM processing. This commit moves
	  this processing back into the interrupt handler by default. It
	  also limits the number of frames that the interrupt handler will
	  process at any given time which appears to achieve the same
	  intended result. (closes issue #17289) Tested by: alecdavis

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/voicebus.h: wcte12xp, wctdm24xxp:
	  spin_lock_bh -> spin_lock_irqsave Will add an option to allow
	  calling the deferred processing callback directly in the
	  interrupt handler. It appears there are some systems which still
	  are unable to process their tasklets in a timely fashion,
	  especially if they get pushed out to the ksoftirqd daemon.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Do not call
	  destory_workqueue if the workqueue was not yet created.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/wctdm24xxp/base.c: wcte12xp, wctdm24xxp: Add
	  shutdown handlers. Make the drivers a little more kexec friendly.

2010-07-25 16:43 +0000 [r8975]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/card_pri.c: No need to worry about accidental
	  "changes" in reg. 0x70 in E1

2010-07-22 15:28 +0000 [r8968-8969]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Make sure we also change the deflaw
	  of the span to ulaw if alawoverride is disabled.

	* drivers/dahdi/wct4xxp/base.c: Make sure we check max_latency to
	  see if it's greater than the minimum required latency for the
	  board in question.

2010-07-19 13:49 +0000 [r8943-8944]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* README: Copy README section of kernel sources from Zaptel. Still
	  needs some simplifications. Anybody?

	* drivers/dahdi/xpp/card_fxs.c: FXS - fix VMWI compatibility mode:
	  * If we have vmwi_ioctl=N, we should initialize the vmwi_type of
	  all channels. We initialize it to HVAC * Fix a regression, where
	  curly braces around empty if()'s were removed. * Also fix the
	  VMWI_TYPE() macro, so it actually uses the 3'rd parameter. (this
	  didn't cause damage yet, as we only used HVAC so far)

2010-07-16 16:25 +0000 [r8939]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Add alawoverride parameter to the
	  wcb4xxp module to allow for ulaw and alaw mode.

2010-07-14 20:15 +0000 [r8935]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wct4xxp/base.c: Make noburst parameter override
	  burst flag.

2010-07-14 11:50 +0000 [r8872-8931]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/PIC_TYPE_4.hex: PIC 4 rev. 7381: fix
	  T1 returning signaling register in non-CAS This is the second
	  part of the partial fix in r8872, though each of the two should
	  work independently.

	* drivers/dahdi/xpp/firmwares/USB_FW.hex: Allow reading caps when
	  twinstar watchdog set Fixes reading capabilities when the
	  watchdog is set. In that case most of the data, as seen, e.g. in
	  output of 'astribank_allow', was 0xFF. Xorcom rev: 7809

	* drivers/dahdi/xpp/init_card_4_30, drivers/dahdi/xpp/card_pri.c:
	  Set Astribank PRI before initialization This avoids most cases of
	  sending garbage at startup by setting each port to tristate mode
	  at init time (in the init script) and enable it back at
	  DAHDI_STARTUO (end of dahdi_cfg). Upgrade note: if you have
	  upgraded the files (including init script) but old module is
	  still loaded, you may end up with the port not getting ever
	  enabled and the line practically dead. In such a case, reload the
	  new module.

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xbus-core.c,
	  drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/xbus-pcm.c:
	  start migrating from xbus_num() to get_xbus()/put_xbus() * Now
	  get_xbus() receive and xbus number (not poiner) and uses
	  xbus_num() internally to map it to an xbus pointer + refcount
	  increment. (this is atomic) * Migrate all obvious places that
	  used xbus_num() to map bus number into a pointer, so now they use
	  get_xbus() + put_xbus() to aquire and release an xbus.

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xproto.h,
	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/xbus-pcm.h,
	  drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/card_fxo.c,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_fxs.c,
	  drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/xbus-pcm.c: PRI
	  Astribanks always sync AB (and independent) * PRI devices always
	  get SYNC-AB (never PLL, not even for NT) * Fix Timing priority
	  calculation accordingly. * On PRI layer1 changes, elect_syncer()
	  is called, so we have re-election.

	* drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_global.c,
	  drivers/dahdi/xpp/xbus-core.h: prevent handling of duplicate
	  Astribanks Don't let AB which are unplugged/replugged create
	  duplicate XBUS's (if asterisk don't close the original channels).

	* drivers/dahdi/xpp/xbus-sysfs.c: Create /sys/devices/astribanks: *
	  Astribank devices now reside under their own top-level device. *
	  The USB device is still used as the 'transport'. * This means the
	  astribanks parents are NOT the USB devices. * As a result, even
	  after a USB disconnect, we have valid sysfs representation.

	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/xpp_dahdi.c,
	  drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xbus-core.c,
	  drivers/dahdi/xpp/xbus-core.h: Keep SYSFS objects after
	  disconnect When the USB device disconnects, we keep references to
	  them to make sure they don't disappear.

	* drivers/dahdi/xpp/card_pri.c: Don't reset span flag RBS on pri
	  module Don't attempt to reset the span flag DAHDI_FLAG_RBS. At
	  pre-registration we don't yet know if we're CAS or not.

	* drivers/dahdi/xpp/card_pri.c: don't send "duplicates" in E1 as in
	  D4 Make sure we only consider T1-s to be potentially D4 (which
	  requires sending the bits twice). This fixes occasional
	  command-queue floods in E1 CAS.

	* drivers/dahdi/xpp/card_fxs.c: Put a space where it belongs

	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/xpp_dahdi.c,
	  drivers/dahdi/xpp/card_fxs.c: Basic support for DAHDI_VMWI_CONFIG
	  * Supports only our current NEON notification. * No more global
	  'vmwineon' parameter: - We expect asterisk to tell us by channel.
	  - If 'vmwi_ioctl' is not set (it is by default), that we revert
	  to FSK searching (expensive) and call directly our NEON code (as
	  before).

	* drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_global.c:
	  Solve race xbus_populate Fixes a crash resulting from a race
	  between disconnecting and connecting Astribanks (on multi-core
	  systems) * Use get_xbus()/put_xbus() arround xbus_populate(), so
	  a disconnect in the middle won't release the xbus too early. *
	  Aquire all XPDs before starting initialization and release them
	  after it finishes (so we don't have up/down races among XPDs)

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xbus-sysfs.c,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_global.c,
	  drivers/dahdi/xpp/xbus-core.h: put xbus->worker in xbus;
	  wake_up_interruptible_all() * The worker member of 'struct xbus'
	  is now an embedded struct xbus_workqueue. * Replace wake_up() to
	  wake_up_interruptible_all().

	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/xpp_dahdi.c,
	  drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xbus-core.c:
	  Cleanup: refcount_xpd() * Change refcount_xpd(): instead of
	  returning a pointer to the atomic counter, return directly its
	  value (just like refcount_xbus()) * Add a refcount_xbus and
	  refcount_xpd attributes to sysfs (for debugging)

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xpp_usb.c,
	  drivers/dahdi/xpp/xbus-pcm.h, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/xpp/xbus-core.c,
	  drivers/dahdi/xpp/card_fxs.c, drivers/dahdi/xpp/xbus-core.h,
	  drivers/dahdi/xpp/xbus-pcm.c: Fix building without CONFIG_PROC_FS
	  defined This changeset should have no functional changes.

	* drivers/dahdi/xpp/init_card_4_30: Don't assume hardwired
	  pri_protocol is E1 When initializing registers for the "PRI"
	  (E1/T1) module, in the case the user has not explicitly asked for
	  E1/T1 settings in xpp.conf (pri_protocol) fall back to the
	  current value, which is the build-time fall-back. The value is
	  read from sysfs. Previously we implicitly assumed this value is
	  E1.

	* drivers/dahdi/xpp/init_card_4_30: partial fix of T1 returning
	  signaling register in non-CAS mode

2010-07-12 18:45 +0000 [r8868]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c, drivers/dahdi/dahdi_dummy.c: dahdi:
	  Explicitly ensure we don't schedule a timer for the current tick.
	  As best as I can tell, when CONFIG_NO_HZ is set along with
	  CONFIG_HZ < 250, it is possible for the system timer to exceed
	  MAX_SOFTIRQ_RESTART. Tony Mountifield alluded that this might be
	  a problem in the below mailing list posting, but when I was
	  originally testing, I wasn't using CONFIG_NO_HZ and HZ < 250.
	  http://www.mail-archive.com/asterisk-dev@lists.digium.com/msg37384.html
	  (closes issue #17620) Reported by: seanbright

2010-07-06 17:49 +0000 [r8853]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/wcb4xxp/base.c: Extra PCI ID for Junghanns PCI-E
	  cards.

2010-07-02 18:58 +0000 [r8849]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wct4xxp/base.c: Add support for max_latency module
	  parameter in wct4xxp

2010-06-30 20:23 +0000 [r8841]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wct4xxp/base.c: Fix for circumstances where the
	  framer needs extra help to reset itself.

2010-06-29 20:20 +0000 [r8831-8832]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/voicebus.c: wctdm24xxp, wcte12xp: Fix
	  "operation on may be undefined" warning. gcc 4.5.0 generates a
	  warning on the changed lines and
	  http://gcc.gnu.org/ml/gcc/2004-10/msg00032.html explains why.
	  Essentially, the only thing guaranteed with the preincrement
	  operator is that the value will be incremented before the
	  assignment. It's undefined where in the sequence the mask will be
	  applied.

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Fix "operation on may be
	  undefined" warning. gcc 4.5.0 was generating a warning on the
	  changed line, and the discussion at
	  http://gcc.gnu.org/ml/gcc/2004-10/msg00024.html explains why.
	  Essentially, the only thing guaranteed with the preincrement
	  operator is that the value will be incremented before the
	  assignment. It's undefined where in the sequence the mask will be
	  applied.

2010-06-29 12:39 +0000 [r8809-8823]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* README: Document DAHDI 2.3 and 2.2 incompatibilities

	* README: Fix the README "_V1" ioctls examples zap->dahdi and such.

	* build_tools/live_dahdi: live_dahdi: properly unload EC modules
	  Copy sruffel's fix to the init.d script from -tools.

	* build_tools/live_dahdi: live_dahdi: regen config or restart
	  asterisk without full reload Adds commands 'genconf' (for
	  basically: dahdi_genconf; dahdi_cfg) and 'asterisk' (start
	  asterisk) so doing those should not require a full restart.

	* include/dahdi/kernel.h: chan_notice() now works Make
	  chan_notice() and does not complain about undefined 'chan'.

2010-06-24 21:02 +0000 [r8801-8805]  Mike Spiceland <mspiceland@digium.com>

	* drivers/dahdi/wct4xxp/base.c: Fix trailing whitespace and make
	  last change more readible. (sruffell suggestion)

	* drivers/dahdi/wct4xxp/base.c: Impliments a workaround for an
	  errata in the qfalc v3.1 chip which caused RBS modes to be broken
	  when using AMI coding. DAHDI-647.

2010-06-18 10:57 +0000 [r8784]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* include/dahdi/dahdi_config.h: Disable DAHDI_AUDIO_NOTIFY by
	  default It's still not tested well-enough, if one enables
	  OPTIMIZE_CHANMUTE.

2010-06-14 21:34 +0000 [r8768]  Mike Spiceland <mspiceland@digium.com>

	* drivers/dahdi/wct4xxp/base.c: Expose some dynamic latency options
	  as module parameters for the wct4xxp driver latency - the default
	  number of ms of buffering to start off with ms_per_irq - how
	  often the card interrupts

2010-06-08 19:46 +0000 [r8751-8762]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xpp_usb.c: Use usb_{alloc,free}_coherent
	  instead of usb_buffer_{alloc,free}. usb_buffer_alloc has been
	  replaced with usb_alloc_coherent , and likewise usb_buffer_free
	  has been replaced with usb_free_coherent. in kernels 2.6.34 the
	  older names are proxies for the new ones, and in 2.6.35 the older
	  names are gone. This patch defines the new names for the old
	  ones, for older kernel versions. (closes issue #17383) Reported
	  by: Chainsaw

	* drivers/dahdi/voicebus/GpakCust.h: include semaphore.h explicitly
	  for newer kernels With kernel version >= 2.6.35-rc1, building
	  failed with: drivers/dahdi/voicebus/GpakCust.h:114: error: field
	  ‘sem’ has incomplete type (closes issue #17382) Reported by:
	  Chainsaw Patches: 07-semaphore-include-not-optional.diff uploaded
	  by Chainsaw (license 723)

	* build_tools/live_dahdi: live_dahdi: load firmware_class if
	  required Modprobe firmware_class for modules that may need it
	  (and that we insmod later)

2010-05-25 19:23 +0000 [r8689]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Do not access memory
	  after we free it.

2010-05-24 16:55 +0000 [r8680]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/hpec/dahdi_echocan_hpec.c: hpec: #include
	  <linux/slab.h> Fix the same issue as in r8550 , for
	  dahdi_echocan_hpec.c: With kernel 2.6.34 an explicit '#include
	  <slab.h>' is required for using kzalloc() and friends.

2010-05-23 12:17 +0000 [r8673-8674]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi_echocan_oslec.c: missing #include: fixes
	  building with 2.6.34-rc5 Fix the same issue as in r8550 , for
	  dahdi_echocan_oslec.c: With kernel 2.6.34-rc5 an explicit
	  '#include <slab.h>' is required for using kzalloc() and friends.

	* drivers/dahdi/dahdi_transcode.c: A typo (lintian)

2010-05-17 21:44 +0000 [r8653]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Merge in pulse mask improvement
	  patch for B410P.

2010-05-17 14:45 +0000 [r8641-8642]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: dev_notice ->
	  dev_info Modules that aren't installed should show at the same
	  level as modules that are installed. It could be confusing if the
	  console log level is set to 3 and only messages about which ports
	  do not have any modules installed show up on the console.

	* drivers/dahdi/Kbuild, include/dahdi/kernel.h: dahdi: Check if
	  wait_for_completion_timeout is backported. CentOS4 has this
	  backported in their 2.6.9 kernel.

2010-05-14 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.3.0.1 released.

2010-05-14 16:02 +0000 [r8621]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/GpakCust.h, /,
	  drivers/dahdi/voicebus/GpakApi.c,
	  drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/voicebus/GpakCust.c: Merged revisions
	  8560,8575-8576 via svnmerge from
	  https://origsvn.digium.com/svn/dahdi/linux/trunk ........ r8560 |
	  sruffell | 2010-04-22 16:36:16 -0500 (Thu, 22 Apr 2010) | 11
	  lines wcte12xp, wctdm24xxp: Ensure writes to I/O registers are
	  flushed. In revision 8176 I changed register access from I/O
	  space to memory mapped registers. Unfortunately, when I made that
	  change, I didn't account for posted writes. This change makes
	  sure all the registers are read back to ensure that they are
	  posted through any intermediate bridges. The most readily
	  observable symptom were cards that were taking 2000
	  interrupts/second. The card reported that it handled an interrupt
	  but the write to silence the card wasn't flushed through until
	  the second time the interrupt handler run. DAHDI-602. ........
	  r8575 | sruffell | 2010-04-26 18:29:16 -0500 (Mon, 26 Apr 2010) |
	  4 lines wcte12xp, wctdm24xxp: Do not allow interruptible sleep on
	  VPM lock. If the sleep is ever interrupted, 'up' will still be
	  called in the GpakApi, essentially making the lock useless after
	  that point. ........ r8576 | sruffell | 2010-04-26 18:29:17 -0500
	  (Mon, 26 Apr 2010) | 9 lines wcte12xp, wctdm24xxp: Retry if the
	  VPMADT032 reports not ready. CheckDspReset can return -1 if the
	  DSP is not ready to process any new commands. In this case we
	  should retry a few times to give the DSP a chance to become
	  ready. While I'm not ready to say this definitely fixes recently
	  reported cases when the wcte12xp driver constantly resets, it
	  eliminated communication failures to the DSP module when under
	  stress (via the vpm_firmware_version sysfs attribute). However, I
	  haven't let it run long enough to say that the issue is resolved.
	  DAHDI-603. ........

2010-04-22 11:03 +0000 [r8551]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* /, drivers/dahdi/dahdi_echocan_jpah.c: missing #include: fixes
	  building with 2.6.34-rc5 With kernel 2.6.34-rc5 an explicit
	  '#include <slab.h>' is required for using kzalloc() and friends.
	  Merged revisions 8550 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

2010-04-19 19:42 +0000 [r8540-8545]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xpp_debug, /, drivers/dahdi/xpp/card_pri.c,
	  drivers/dahdi/wcb4xxp/Makefile, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/card_global.c, drivers/dahdi/dahdi-base.c:
	  typos, mostly unkown Merged revisions 8539 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

	* Makefile, /: Remove generation of kernel-doc API docs It's not
	  really useful, and it breaks building 'docs' without a kernel
	  tree. Merged revisions 8538 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

	* /: initialize svnmerge

2010-04-12 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.3.0 released.

2010-04-06 23:19 +0000 [r8473-8494]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/voicebus.c: voicebus: Change WARN_ON_ONCE
	  to BUG_ON. WARN_ON_ONCE is not defined in 2.6.9, and this
	  condition would be catastrophic anyway if it were to occur.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Load the VPM in startup,
	  not spanconfig

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Check and
	  dequeue/decipher the VPM commands atomically

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Make sure the interrupt
	  is stopped before freeing the vpmadt032

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Eliminate a trailing
	  whitespace.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Do not reconfigure the
	  VPMADT032 if shutting down. If we try to unload the driver soon
	  after a high latency event, it is possible to get stuck for
	  several seconds reloading the firmware. DAHDI-573.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Do not restart the timer
	  on alarm poll if shutting down.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Expose the maximum
	  latency as a module parameter

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Reprogram the VPM only
	  when neccessary. Only program the VPM in spanconfig if it either
	  is not setup, or if it fails a ping test. Also, if the channel
	  config fails (but ping would otherwise work), force a reset /
	  reconfiguration if the VPM module. DAHDI-573.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/voicebus/GpakCust.c:
	  wcte12xp: Try to reconfigure the VPM if we fail to configure the
	  channels. Also, fall back to any software echocan configured for
	  this channel for new calls while we're in the middle of a
	  recovery.

2010-04-04 16:14 +0000 [r8454-8468]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/wcte12xp/wcte12xp.h,
	  drivers/dahdi/voicebus/GpakCust.c,
	  drivers/dahdi/voicebus/GpakCust.h: wcte12xp: Poll the VPM and
	  reset it if necessary. When the transmit descriptor runs out
	  completely, there (appears to be) a chance for a random command
	  to be sent that results in the VPMADT032 to no longer respond,
	  typically resulting in one way audio. This change introduces a
	  poll of the VPM. If it fails the poll, it will be bypassed
	  temporarily while the driver resets and reprograms it. Also, the
	  VPM is initially programmed in the spanconfig callback instead of
	  at driver load. This moves the potential for underruns until
	  later in the boot process. DAHDI-573.

	* drivers/dahdi/voicebus/voicebus.c: wcte12xp, wctdm24xxp: If we're
	  only one packet behind, just exit. This will make us two behind,
	  which is fine, and eliminates a busy loop in atomic context.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Use ARRAY_SIZE in a
	  couple more places

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakCust.h: wcte12xp, wtdm24xxp: Make sure
	  the writes are retried. r8454 and r8460 introduced a change where
	  writes are not retried when other module/framer commands are
	  retried. This was an error and wasn't what was actually under
	  test. This commit restores the behavior in wctdm24xxp and makes
	  sure the vpm writes are retried in the wcte12xp.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakCust.h: wcte12xp, wctdm24xxp: Close a
	  memory leak when processing VPM commands. Closes a memory leak
	  when processing the VPM write commands introduced in r8454.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/wcte12xp.h:
	  wcte12xp: Use our own workqueue for the timer and maint events.
	  When the latency is large and register reads can take 100s of
	  milliseconds, the alarm polling function could tie up one of the
	  global workqueue threads long enough to interfere with other
	  system operations. Most noticeably the console. DAHDI-573

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakCust.h: wcte12xp: Resend both framer
	  and VPM commands when reads may have been lost. Latency
	  conditions could cause the driver to misconfigure the VPM which
	  would result in one way audio. DAHDI-572.

2010-03-29 20:43 +0000 [r8443]  Russ Meyerriecks <rmeyerreicks@digium.com>

	* drivers/dahdi/dahdi-base.c: dahdi-base: Fix a bug preventing
	  clobbering maint state Now the errror injection code prevents
	  placing the driver into a loopback state in a less forceful way.

2010-03-25 16:23 +0000 [r8431]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/voicebus.c,
	  drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/voicebus.h: wctdm24xxp: Add an 'hx8' mode
	  for buffer processing. The Hx8 series cards do not need any idle
	  buffers and idle_buffers complicate processing when using the
	  timing_cable. This change adds another mode of operation for the
	  voicebus layer for the Hx8 cards that operates without the idle
	  buffers.

2010-03-25 15:13 +0000 [r8421-8423]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/wcb4xxp/wcb4xxp.h:
	  wcb4xxp - add Swyx 4xS0 SX2 QuadBri PCI IDs (closes issue #16493)
	  Reported by: nic_bellamy Patches:
	  wcb4xxp_swyx_sx2_quadbri_pci_ids.patch uploaded by nic bellamy
	  (license 299)

	* drivers/dahdi/wcb4xxp/base.c: Some more wcb4xxp PCI IDs for
	  Junghanns cards Resolve two open issues. One of them that
	  accidentally wasn't closed. (closes issue #15446) (closes issue
	  #16447) Reported by: lpistone Tested by: okrief

2010-03-24 15:56 +0000 [r8410-8416]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Fix typo in last commit.
	  Wouldn't compile on kernels >= 2.6.20.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: t1xxp_maint is also
	  called with interrupts disabled from dahdi_ioctl So just push all
	  the maintenance mode processing off to the workqueue.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: t1xxp_maint can be
	  called from interrupt context. Since t1xxp_maint can be called
	  from interrupt context with the DAHDI_MAINT_LOOPSTOP cmd, push
	  the processing of that command to a workqueue since it may sleep
	  in the t1_getreg call. DAHDI-560.

2010-03-24 12:07 +0000 [r8405]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* README: document the header line of /proc/dahdi/NN

2010-03-23 21:56 +0000 [r8399-8400]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Fix potential race on
	  command handling. If we timeout a command, don't free it right
	  away unless we are the one who removed it from whatever list it
	  was on. Also, increase the timeout (2 seconds wasn't enough when
	  the firmware for the VPMOCT was being loaded on a system with 4K
	  stacks) and check the return value from t1_getreg in case there
	  were timeouts. DAHDI-560.

	* include/dahdi/kernel.h: dahdi: 'clamp' may already be backported.

2010-03-23 13:41 +0000 Russ Meyerriecks <rmeyerriecks@digium.com>

	* dahdi-linux version 2.2.1.1 released.

2010-03-10 17:04 +0000 Russ Meyerriecks <rmeyerriecks@digium.com>

	* dahdi-linux version 2.2.1.1-rc1 released.

	* wct4xxp: Added support for for qfalc v3.1 framer.

	* wct4xxp: Added ID tags for generation 5 firmware updates

2010-01-11 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.1 released.

2010-01-11 13:40 +0000 [r7844]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xbus-pcm.c, /: xpp: demote a message that
	  generates some false alarms. Merged revisions 7843 via svnmerge
	  from http://svn.digium.com/svn/dahdi/linux/trunk

2010-01-10 11:40 +0000 [r7806-7816]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* /, drivers/dahdi/xpp/firmwares/USB_FW.hex: xpp: USB_FW rev 7578
	  Fixes various minor twinstar-related bugs. Merged revisions 7815
	  via svnmerge from http://svn.digium.com/svn/dahdi/linux/trunk

	* drivers/dahdi/xpp/xbus-pcm.c, /: xpp: fixes for drift
	  calculation. Should help for the case of multiple quad-PRI
	  Astribanks on a single system. xpp rev: 7666. Merged revisions
	  7807 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

	* drivers/dahdi/xpp/xbus-pcm.c, /, drivers/dahdi/xpp/xbus-pcm.h,
	  drivers/dahdi/xpp/xbus-sysfs.c: xpp: Improved inter-Astribank
	  drift calculation. Merged revisions 7625 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

2009-12-28 19:16 +0000 [r7733]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: dahdi-base: change
	  dahdi_kernel_fpu_end to kernel_fpu_end dahdi_kernel_fpu_end is
	  part of the MMX changes in trunk that was not committed into the
	  2.2 branch. This change snuck in as part of revision 6864 with
	  the master span processing changes.

2009-12-22 17:53 +0000 [r7723]  Shaun Ruffell <sruffell@digium.com>

	* voicebus, wcte12xp: Only define SLAB_STORE_USER when CONFIG_SLUB
	  is defined. On 2.6.22, there is was a bug in the SLUB allocator
	  that required defining SLAB_STORE_USER, however this setting is
	  only valid when CONFIG_SLUB is defined and not when using the
	  previous slab allocator. DAHDI-424. 

2009-12-11 23:22 +0000 [r7683-7684]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.1-rc2 released.

	* dahdi-base: Do not wait for impulse when echotraining.  Waiting
	  here for the impulse on the transmit can cause the echotraining
	  logic to stick the channel into muted state. This is especially
	  apparent on systems that regularly do not service the interrupts
	  every millisecond. DAHDI-387. 

	* dahdi-base: Reduce the max allocation size in dahdi_reallocbufs.
	  Lower the maximum contiguous chunk that DAHDI asks for from
	  DAHDI_MAX_BUFFER_SIZE*2 to DAHDI_MAX_BUFFER_SIZE.  With 4K pages,
	  this can allow the kernel to try a little harder to find the
	  memory it needs since the request goes from order 4 to order 3. 

2009-11-23 19:20 +0000 [r7636]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.1-rc1 released.

	* Even if we are debouncing the LOS declaration, we still expect
	  the LED to turn red as soon as we unplug the physical cable. This
	  impliments this on the wcte12xp just as it already does on the
	  wct4xxp. 

2009-11-22 11:43 +0000 [r7616-7620]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* xpp firmware: fix FXS indirect register reading. xpp rev: 7498
	  Merged revisions 7614 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

2009-11-19 22:52 +0000 [r7610]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xpp.rules, /: xpp: rules for loading USB
	  firmware into 1163 devices as well Merged revisions 7595 via
	  svnmerge from http://svn.digium.com/svn/dahdi/linux/trunk

2009-11-12 23:45 +0000 [r7572-7584]  Shaun Ruffell <sruffell@digium.com>

	* voicebus: Fix race when enabling/disabling hardware echocan. This
	  closes a race condition where it was possible for the driver to
	  believe it has enabled the VPMADT032 when in fact, it really has
	  not. This fixes a regression introduced in dahdi-linux 2.2.0.
	  (issue #15724)
	  
2009-11-10 15:47 +0000 [r7539-7550]  Shaun Ruffell <sruffell@digium.com>

	* wcte12xp: Export features and operations for VPMADT032. Fixes a
	  regression in dahdi-linux 2.2.0 where it was impossible for
	  userspace to reset the state of a channel in the VPM. (issue
	  #15724) Patches: mantis-15724-2.patch uploaded by sruffell
	  (license 456) Tested by: alecdavis 
	  
	* Use the same mutex lock for channel allocation and license
	  checking in dahdi_echocan_hpec, so that channel allocation won't
	  happen while the license is being checked (or rechecked) 
	  
	* dahdi_dynamic: Release the dlock before calling accross modules.
	  Resolves a hard lock due to a recursive spinlock grab at startup.
	  Reported by: mapacheco (closes issue #15210) 
	  
	* echocan: Properly keep the reference counts for the echocan
	  modules. (closes issue #13504) (closes issue #15327) Reported by:
	  sruffell, tzafrir 
	  
	* wcb4xxp: support for other HFC-xS cards (info, not code) This
	  commit includes skeleton for the support of other
	  HFC-[248]S-based cards. It still does not include all the
	  different cases for different cards. 
	  
	* wcb4xxp: B410P differences: Clock and NT/TE. * The B410P reads
	  the NT/TE switches the other way around from other cards. * Its
	  clock is also 1/2 of that of other cards, which causes wierd PCM
	  on an unmodified driver. 
	  
	* wcb4xxp: Fix PCM handling for various cards. HFC-8S cards behave
	  quite differently than HFC-4S cards here. 
	  
	* wcb4xxp: Fix LED handling in OpenVox cards (maybe also others)
	  This commit adds extra functions to handle LEDs in the non-B410P
	  cards. Only tested on OpenVox cards. OpenVox cards are known to
	  have slightly different LEDs so this is likely to be slightly
	  broken for others. 
	  
	* wctdm: Change proslic linefeed register setting Insure that
	  proslic linefeed register is not transitioned from Active to
	  On-Hook Transmission while the channel is off-hook. Replaced
	  magic numbers assigned to linefeed associated variables with more
	  descriptive constants. (issue #15352) Reported by: alecdavis
	  Patches: wctdm_prevent_ohttimer_click.diff3.txt uploaded by
	  dbailey (license 819) Tested by: alecdavis, dbailey, vmikhelson 
	  
	* wctdm24xxp, wctdm: Detect if our hookstate has been set back to
	  the initial state. Check if our hookstate has been set back to
	  the initial state, typically the result of a chanconfig, and if
	  so, if we're an FXO port, forget our current battery state. This
	  allows the driver to determine and report again what the hook
	  state of the port is. (related to issue #14577) (closes issue
	  #15429) 
	  
	* wcfxo: Reset the DAA on module initialization. The X100p and
	  clones will sometimes work and sometimes not depending on wether
	  the DAA powers up in running state- this seems to be related to
	  the power supply. This problem is caused by the driver not
	  reseting the DAA and may be the source of a great many
	  intermittent problems with this card.  (closes issue #14232)
	  Reported by: tallen8840 Patch by: tallen8840 Tested by:
	  explidous, Flavio 
	  
	* Silence spurious warnings when trying to remove Zaptel
	  directories during install. (closes issue #15479) Reported by:
	  pprindeville Patches: dahdi-linux-rm.patch uploaded by
	  pprindeville (license 347) 
	  
	* dahdi-base: Reduce the stack usage of dahdi_common_ioctl.  Split
	  the DAHDI_GETGAINS and DAHDI_SETGAINS ioctls into their own
	  functions and dynamically allocate the 'struct dahdi_gains'
	  structure to reduce the pressure on the stack. 
	  
	* Fixed issue where the clear channel flags were not being set at
	  the appropriate time causing a channel re-configure to mis-set
	  the last channel in each span 
	  
	* wctdm24xxp: Race condition in handling writes to proslic LINEFEED
	  register (64) The wctdm24xxp driver has a problem where a VMWI
	  IOCTL call followed immediately by a ONHOOKTRANSFER IOCTL call
	  will cause the ONHOOK transfer request to be dropped. This occurs
	  if the write to the proslic's LINEFEED register for the VMWI ICTL
	  call is not completed when the ONHOOK transfer request IOCTL is
	  processed. I also cleaned out some magic numbers used in setting
	  the linefeed register.  (closes issue #15875) Reported by:
	  dbailey Patches: 15875-wctdm24xxp.diff uploaded by dbailey
	  (license 819) Tested by: dbailey 
	  
	* wctdm: WCTDM SPI clock off state polarity and read timing Change
	  the off state of the SPI clock to high and provide more time for
	  data to settle out on SPI reads.  (closes issue #15261) Reported
	  by: alecdavis Patches: wctdm_spi_clocking.diff2.txt uploaded by
	  alecdavis (license 585) Tested by: alecdavis, dbailey 
	  
	* wct4xxp: Check the alarm state if we're debouncing a red alarm.
	  This fixes a problem where if you set the alarmdebounce module
	  parameter on gen2+ cards, you never detect when you go into red
	  alarm.
	  
	* dahdi-base: dahdi_ioctl_[get|set]gains should return the res
	  value. In function dahdi_ioctl_getgains() and
	  dahdi_ioctl_setgains() return value assigned to res variable, but
	  these function always return 0 which is an error. (closes issue
	  #15916.) Patch by: ys 
	  
	* wctdm: Add missing break A break was missing that caused
	  DAHDI_ONHOOKTRANSFER ioctl call to fall into DAHDI_SETPOLARITY
	  ioctl call. (issue #14261) Reported by: alecdavis Patches:
	  wctdm_fix_ONHOOKTRANSFER.diff.txt uploaded by alecdavis (license
	  585) Tested by: alecdavis 
	  
	* dahdi-base: Do not allow jumps in system time to lock up the
	  system w/core_timer Since dahdi coretimer uses the number of
	  milliseconds that has actually passed to determine how many times
	  to call dahdi_receive, it is possible that if the system time
	  shifts after dahdi is started, that the system can appear to lock
	  up while the core timer attempts to catch up. This change
	  prevents soft lock ups under these conditions. This is brings the
	  dahdi_dummy changes in r6933 into dahdi-base. (related to issue
	  #15647) 
	  
	* wcte12xp, wctdm24xxp: VPMADT032 firmware update to 1.20. 
	  
	* wct4xxp: Debounce alarms by default for wct4xxp per AT&T 54016.
	  Also, the various alarm conditions can be debounced separately. 
	  
	* voicebus: Increase the NLP converged threshold to 18. Brings in
	  the change from r7065 that was on the
	  team/sruffell/dahdi-linux-vpm119 branch. 
	  
	* wcte12xp: Adding alarm debounce to single span driver (wcte12xp).
	  Debounce yellow alarm also. Change check alarm frequency to 100ms
	  for better debounce granularity. Fix lines over 80 cols from last
	  alarm debounce commit. 
	  
	* voicebus: Send 'idle' buffers when the transmit descriptor
	  underruns. Previously, when the host system fails to service the
	  interrupt in a timely fashion, the transmit descriptor ring for
	  the voicebus card would "go empty" since the interface wouldn't
	  have another descriptor to read in. The driver only knows that it
	  went empty, not how far behind it actually was. Therefore, the
	  driver could just increase the latency by a millisecond and keep
	  going waiting for another bump.  Additionally, when the transmit
	  descriptor actually goes empty, there are some cases where an in
	  process SPI transaction to one of the modules is interrupted,
	  which may result in corrupted module register writes on rare
	  occassions. This now makes it possible for the voicebus drivers
	  to coexist with some devices that periodically lock interrupts
	  for longer than 25ms. Before this patch, the latency would
	  constantly increase until either the modules received a corrupted
	  frame. This patch preconfigures all the receive descriptors to
	  send an "idle" packet that will be transmitted to the onboard
	  modules when the host doesn't service the interrupt within
	  (latency - 2)ms. There are now two kinds of underruns,
	  softunderuns where the driver can detect that these idlebuffers
	  have made it to the TX FIFO, and the normal hard underrun where
	  the part signals a transmit descriptor unavailable interrupt.
	  DAHDI-278. 
	  
	* voicebus: Add function to lock the latency. Now that increases in
	  the latency produce less undefined behavior on the SPI busses,
	  provide an interface for client drivers to inform the voicebus
	  library to not increase the latency if underruns are detected.
	  This can speed up loads of the driver since latency bumps do not
	  trigger a restart of the driver initialization. DAHDI-278. 

	* wctdm24xxp, wcte12xp: Lock latency when loading We no longer need
	  to retry board initialization if the latency would have increased
	  during the initialization. DAHDI-278 
	  
	* voicebus, wctdm24xxp, wcte12xp: Move a print out of the interrupt
	  handler. This can be handled just as well in process context and
	  printing to a serial console from the interrupt handler has the
	  potential to cause long latencies. 
	  
	* voicebus: Be just a little more graceful if we cannot grab our
	  interrupt line. 
	  
	* wcte12xp: use the dev_xxx macro for the debounce messages. We
	  want to know which device is reporting the debounce when there
	  are more than one card in the system.

2009-11-05 12:06 +0000 [r7485-7493]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* backport a number of build fixes from trunk to 2.2 Merged
	  revisions 7226,7356,7392 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk 
	  
	* xpp: Use proper get/set for device->driver_data 2.6.32-rc1 broke
	  direct access to the member 'driver_data' of 'struct device'.
	  However direct access to wasn't proper in the first place. This
	  commit replaces direct access to dev->driver_data with
	  dev_get_drvdata() and dev_set_drvdata(). 
	  
	* dahdi-base: Include linux/sched.h Commit a99bba to the mainline
	  kernel removed sched.h from poll.h. So dahdi-base.c needs to
	  include sched.h directly now.
	  http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a99bba
	  
	* headers: sched.h was also removed from interrupts.h Commit d43c36
	  made it necessary to add sched.h to more of the board drivers.
	  http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d43c36

	* xpp: Add sysfs xpd attribute 'timing_priority' Merged revisions
	  7237 via svnmerge from http://svn.digium.com/svn/dahdi/linux/trunk

	* T1 CAS support in the xpp "pri" module Merged revisions
	  7244-7245,7266,7276,7457 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

	* xpp: make card_hooksig an optional card method. Done in
	  preperation for T1 CAS support, as the PRI module will use RBS
	  instead.

	* xpp: refactor pcm mask handling.
	  
	* xpp: PRI PIC firmware: T1-CAS fixes 

	* xpp: More E1/T1 CAS fixes. Mostly connect/disconnect xpp revs:
	  mostly 7458, 7466

2009-08-19 16:44 +0000 [r7039]  Kevin P. Fleming <kpfleming@digium.com>

	* Ensure that dahdi_scan correctly reports VPM presence. The
	  wct4xxp driver (for the dual/quad span T1/E1 cards) and the
	  wcte12xp driver (for the single span VoiceBus-based T1/E1 cards)
	  did not properly update the 'devicetype' field reported by
	  dahdi_scan when a VPM was found during the card startup process.
	  As a result, dahdi_scan did not show that a VPM was present on
	  the card, even if it was.

2009-08-13 22:04 +0000 [r7001]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* xpp firmware: Fixes PCM issue with FXO that is not a timing
	  source Fixes PCM issue with an Astribank2 (116x) FXO module that
	  is installed alongside a PRI/BRI module. xpp: FPGA_1161.hex r7276
	  .  Merged revisions 6938,6966 via svnmerge from
	  http://svn.digium.com/svn/dahdi/linux/trunk

2009-08-06 17:35 +0000 [r6950]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-base: Reduce the stack usage of ioctl_load_zone.

	* dahdi-base: Update formatting in ioctl_load_zone. Fixes
	  checkpatch.pl formatting errors from the previous commit.

2009-08-04 16:38 +0000 [r6934-6937]  Shaun Ruffell <sruffell@digium.com>

	* wctc4xxp: Update to use struct net_device_ops. Accomodates a
	  change in the linux kernel network device interface.
	  
	* wctc4xxp: Make the wctc4xxp_netdev_ops structure static.

	* dahdi_dummy: Do not allow jumps in system time to lock up the
	  system. Since dahdi_dummy uses the number of milliseconds that
	  has actually passed to determine how many times to call
	  dahdi_receive, it is possible that if the system time shifts
	  after dahdi is started, that the system can appear to lock up
	  while dahdi_dummy attempts to catch up. This change prevents soft
	  lock ups under these conditions. (closes issue #15647) Reported
	  by: missnebun

2009-07-21 18:11 +0000 [r6864]  Shaun Ruffell <sruffell@digium.com>

	* wcte12xp: Disable vpmadt032 companding by default. This fixes a
	  regression in 2.2.0 where certain configurations will fail
	  patloop test or have repeated HDLC aborts because the VPMADT032
	  is modifying the clear channel or d channel data streams. This
	  restores the behavior to how it was in dahdi-linux 2.1.0.4.
	  (closes issue #15498) Reported by: alecdavis Tested by: alecdavis

	* tor2: allow using port4 as timing source Fix a silly regression
	  introduced when strict check on the timing parameter was added
	  (sync-1 is the array index, not sync itself. And 0 is a special
	  case). (closes issue #15408) Reported by: dferrer Patches:
	  tor2-4th_sync.patch uploaded by dferrer (license 525)
	  
	* Revert "wct4xxp, wcte11xp: Use the default configuration by
	  default at startup." This reverts the change introduced by
	  revision 6712. This change can cause problems when there is a VPM
	  module installed on the quad-span digital cards. 

	* dahdi-base: Add support for core timing. This essentially moves
	  the function of dahdi_dummy into the core of DAHDI. It ensures
	  that if DAHDI is loaded, it will always be able to provide
	  timing, regardless of whether there are board drivers loaded, or
	  if the board drivers are properly calling dahdi_receive. If there
	  is a master span loaded which is calling dahdi_receive, then the
	  behavior will be like it is normally.  This functionality is off
	  by default, uncomment CONFIG_DAHDI_CORE_TIMER in
	  include/dahdi/config_dahdi.h in order to enable it.

2009-07-21 18:11 +0000 [r6858-6864]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.0.2 released.

	* wcte12xp: Disable vpmadt032 companding by default. This
	  fixes a regression in 2.2.0 where certain configurations will
	  fail patloop test or have repeated HDLC aborts because the
	  VPMADT032 is modifying the clear channel or d channel data
	  streams. This restores the behavior to how it was in dahdi-linux
	  2.1.0.4. (closes issue #15498) Reported by: alecdavis Tested by:
	  alecdavis

	* tor2: allow using port4 as timing source Fix a silly regression
	  introduced when strict check on the timing parameter was added
	  (sync-1 is the array index, not sync itself. And 0 is a special
	  case). (closes issue #15408) Reported by: dferrer Patches:
	  tor2-4th_sync.patch uploaded by dferrer (license 525)
	  
	* Revert "wct4xxp, wcte11xp: Use the default configuration by default
	  at startup." This reverts the change introduced by revision 6712.
	  This change can cause problems when there is a VPM module installed
	  on the quad-span digital cards.
	  
	* dahdi-base: Add support for core timing. This essentially moves the
	  function of dahdi_dummy into the core of DAHDI. It ensures that if
	  DAHDI is loaded, it will always be able to provide timing,
	  regardless of whether there are board drivers loaded, or if the
	  board drivers are properly calling dahdi_receive. If there is a
	  master span loaded which is calling dahdi_receive, then the behavior
	  will be like it is normally. This functionality is off by default,
	  uncomment CONFIG_DAHDI_CORE_TIMER in include/dahdi/config_dahdi.h in
	  order to enable it.

2009-06-30 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.0.1 released.
	
	* Fix for kernel panic when echotraining is enabled on echocan that
	  does not support it.

	* Fix for kernel panic on RHEL4 when using VPMADT032.

	* Fix to allow wct4xxp, wcb4xxp, and wcte11xp to provide early timing.

2009-06-23 15:44 +0000 [r6695]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.0 released.

	* README: Adding a known issues section to the README
	  files.

2009-06-18 18:03 +0000 [r6692]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcfxo.c, drivers/dahdi/wctdm.c,
	  drivers/dahdi/wctdm24xxp/base.c: Fix calls to dahdi_hooksig. When
	  JAPAN, AUDIO_RINGCHECK, or ZERO_BATT_RING compile time options are
	  selected it is possible to get a kernel panic due to an invalid
	  pointer passed to the dahdi_hooksig function. (closes issue #15350)
	  Patch by: alecdavis

2009-06-12 22:30 +0000 [r6688]  Jason Parker <jparker@digium.com>

	* drivers/dahdi/Kbuild: Make complex conditionals work with GNU
	  make 3.80. Much uglier, but it works on RHEL4.

2009-06-04 21:14 +0000 [r6675]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: Fix bug in procfs
	  handling. Fix bug in procfs handling where it was possible to get
	  a warning in lib/vsprintf.c when reading from /proc/dahdi/x.
	  Patch by: biohumanoid (closes issue #15252)

2009-05-27 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.0-rc5 released.

2009-05-27 12:48 +0000 [r6659]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/xpp/card_fxs.c,
	  drivers/dahdi/xpp/card_global.c: Fix more 'owner' for 2.6.30
	  to be happy. Finishing the work of r6642. Completely shut issue
	  #14964.

2009-05-25 08:23 +0000 [r6651-6653]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/PIC_TYPE_3.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_4.hex,
	  drivers/dahdi/xpp/firmwares/FPGA_1161.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_1.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_2.hex: xpp firmwares: fixes
	  sync issues of FXO module in a BRI/PRI Astribank * Also fixes LED
	  blinking issues in PRI modules * Various bugfixes in the PICs.

	* drivers/dahdi/xpp/firmwares/USB_FW.hex: USB_FW.hex: Allow setting
	  caps. even when FPGA is loaded. Note that They will only take
	  effect after a reset. Firmware rev. 7071.

2009-05-19 16:09 +0000 [r6635-6642]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xpp_usb.c,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/xdefs.h: xpp:
	  'owner' property of procfs was dropped in 2.6.30. This adds a
	  compatibility macro for older versions that is a noop for kernels
	  >= 2.6.30. (closes issue #14964)

	* drivers/dahdi/xpp/xproto.h, drivers/dahdi/xpp/xbus-sysfs.c,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_global.c,
	  drivers/dahdi/xpp/xproto.c, drivers/dahdi/xpp/xbus-core.h,
	  drivers/dahdi/xpp/xbus-pcm.c: xpp: fix the Astribank state
	  machine This generally is a case that would not happen in the
	  wild, though.

	* drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/xdefs.h: xpp:
	  report in sysfs if bri module uses hardhdlc support

	* drivers/dahdi/xpp/calibrate_slics (removed): xpp: remove obsolete
	  script calibrate_slics

	* drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/mmapbus.c,
	  drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/card_fxo.c,
	  drivers/dahdi/xpp/mmapdrv.c, drivers/dahdi/xpp/xbus-sysfs.c,
	  drivers/dahdi/xpp/Kbuild, drivers/dahdi/xpp/card_fxs.c,
	  drivers/dahdi/xpp/xdefs.h: Replaece member bus_id with dev_name()
	  and set_dev_name() As of 2.6.26 the macros dev_name() and
	  set_dev_name() are used to read and set (respectively) the bus_id
	  member in sysfs. As of 2.6.30 bus_id is gone. This patch provides
	  comaptiobility macros for older kernel versions and removes
	  direct usage of bus_id. (closes issue #14965) Patches:
	  xpp_2630_dev_name.diff uploaded by tzafrir (license 46)

	* drivers/dahdi/voicebus, drivers/dahdi/vpmadt032_loader: ignore
	  generated files in voicebus and vpmadt032_loader

2009-05-15 23:37 +0000 [r6625-6628]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/GpakCust.c: voicebus: Use '&' not '|' when
	  checking for a bit.

	* drivers/dahdi/voicebus/GpakCust.c: voicebus: Make the
	  enable/disable echocan messages debug again. I accidentally
	  changed to print everytime. They should only be printed if
	  DEBUG_ECHOCAN is specified in the debug module parameter.

2009-05-14 14:49 +0000 [r6621]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Set the syncsrc in the
	  span appropriately. Before this commit, dahdi_tool would report
	  "Internally clocked" for boards supported by the wcte12xp driver
	  both when receiving timing from the span and providing it to the
	  span. Now it reports "Internally clocked" if providing timeing to
	  the span, and the card if receiving timeing from the span.
	  DAHDI-65.

2009-05-12 22:30 +0000 [r6606-6610]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/Kbuild: use proper case for variable name :-)

	* drivers/dahdi/Kbuild: Allow VPMADT032 and HPEC binary modules to
	  be used on platforms where ARCH is set to the new 'generic' x86
	  flavor available in recent Linux kernel releases

	* drivers/dahdi/Kbuild: emit warning messages when DAHDI is being
	  built on a CPU architecture that does not support HPEC or the
	  VPMADT032 firmware loader, so the user will know why they are not
	  included clean up the conditional logic for these items in the
	  Kbuild file

	* Makefile: remove another unused variable

2009-05-11 17:48 +0000 [r6589-6590]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.0-rc4 released.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: Expose vpm parameters as
	  module parameters. Expose the vpmnlptype, vpmnlpthresh, and
	  vpmnlpmaxsupp as module parameters like for the wctdm24xxp.
	  DAHDI-261

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakApi.h,
	  drivers/dahdi/voicebus/GpakCust.c,
	  drivers/dahdi/voicebus/GpakCust.h: voicebus: Update the default
	  vpmadt032 parameters. Move the echo can channel parameters into a
	  common location for both the wcte12xp and wctdm24xxp drivers that
	  use the voicebus module. This is intended to make it clearer
	  which differences are required between the clients. Additionally,
	  update the default parameters to the new recommended values.
	  VPMADT032-37

2009-05-07 19:42 +0000 [r6572]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakCust.c,
	  drivers/dahdi/voicebus/GpakCust.h: voicebus: Create workqueue for
	  each vpmadt032 instance. Depending on the system latency, the
	  deferred work for the vpmadt032 can take up to 200ms. This change
	  allows each vpmadt032 to use its own workqueue, and not the
	  global system workqueue. This prevents vpm operations from
	  blocking the main system workqueue for extended periods. This
	  restores the behavior to the way it was before the common
	  vpmadt032 code was moved out of the wctdm24xxp and wcte12xp
	  drivers. DAHDI-260 voicebus-squash: Adding the wq name.

2009-05-07 19:42 +0000 [r6568-6572]  Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.2.0-rc3 released.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakCust.c,
	  drivers/dahdi/voicebus/GpakCust.h: voicebus: Create workqueue for
	  each vpmadt032 instance. Depending on the system latency, the
	  deferred work for the vpmadt032 can take up to 200ms. This change
	  allows each vpmadt032 to use its own workqueue, and not the
	  global system workqueue. This prevents vpm operations from
	  blocking the main system workqueue for extended periods. This
	  restores the behavior to the way it was before the common
	  vpmadt032 code was moved out of the wctdm24xxp and wcte12xp
	  drivers.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus/GpakCust.h: voicebus: Changing default NLP
	  type to 'suppression'. The 'suppression' default for the NLP
	  provides better echo canceling performance. Also ensures that the
	  wctdm24xxp and wcte12xp driver use the same default values.

2009-05-05 17:32 +0000 [r6564]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus/GpakCust.c: voicebus: Use the companding
	  type on the span when enabling echocan.

2009-05-04 20:36 +0000 [r6562]  Doug Bailey <dbailey@digium.com>

	* drivers/dahdi/voicebus/GpakCust.c: Insure that vpmnlptype,
	  vpmnlpmaxsupp, and vpmnlpthresh are set back to module level
	  defaults when echo can is freed. (Previously they were zero'd
	  out) DAHDI-257

2009-05-02 07:53 +0000 [r6556]  Kevin P. Fleming <kpfleming@digium.com>

	* Makefile: Remove explicit passing of ARCH to kernel build system
	  There is no value in setting a value for ARCH and passing it to
	  the kernel build system; the configured kernel headers/sources
	  already have an architecture specified and can't be used for any
	  other architecture anyway.

2009-05-01 16:43 +0000 [r6549-6554]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: dahdi-base: define
	  __RW_LOCK_UNLOCKED() Linux 2.6.9 does not contain that
	  definition, but the older definition is deprecated since it
	  defeats lock state checking. DAHDI-253

	* drivers/dahdi/voicebus/Makefile (added): voicebus: Need Makefile
	  to build on 2.6.9 DAHDI-253

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Define mmiowb if not
	  already defined. Linux kernel 2.6.9 does not define mmiowb.
	  DAHDI-253

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: spin_trylock_irqsave is
	  not defined on some kernels. DAHDI-253

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Defined gfp_t for
	  earlier kernels. This definition was just copied from the xpp
	  driver. DAHDI-253

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Fix inclusion of
	  linux/io.h on 2.6.9 kernels. DAHDI-253

2009-04-30 20:59 +0000 [r6544-6546]  Kevin P. Fleming <kpfleming@digium.com>

	* include/dahdi/user.h: Fix compilation of applications that use
	  DAHDI ioctls Defining ioctl codes in this file requires that
	  linux/ioctl.h be included first.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/base.c,
	  drivers/dahdi/wctdm24xxp/base.c: Ensure that vpmsupport=0 module
	  parameter takes proper effect For these drivers, when the
	  vpmsupport module parameter is set to zero, don't even register
	  the span as supporting echo cancellation. DAHDI-250

2009-04-30 13:59 +0000 [r6542]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/FPGA_1161.hex: xpp: A new FPGA
	  firmware to hopefully help with BRI/FXO.

2009-04-29 18:24 +0000 [r6523-6529]  Shaun Ruffell <sruffell@digium.com>
	
	* dahdi-linux version 2.2.0-rc2 released.

	* drivers/dahdi/dahdi_echocan_kb1.c, drivers/dahdi/wcte12xp/base.c,
	  include/dahdi/user.h, include/dahdi/kernel.h,
	  drivers/dahdi/adt_lec.c, drivers/dahdi/dahdi_echocan_jpah.c,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/ecdis.h,
	  drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/dahdi_echocan_mg2.c,
	  drivers/dahdi/wcte12xp/wcte12xp.h,
	  drivers/dahdi/voicebus/GpakCust.c, drivers/dahdi/hpec/hpec.h,
	  drivers/dahdi/wcb4xxp/wcb4xxp.h,
	  drivers/dahdi/dahdi_echocan_sec2.c,
	  drivers/dahdi/voicebus/GpakCust.h,
	  drivers/dahdi/hpec/dahdi_echocan_hpec.c,
	  include/dahdi/dahdi_config.h, drivers/dahdi/wcb4xxp/base.c,
	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/dahdi_echocan_oslec.c, drivers/dahdi/dahdi-base.c,
	  drivers/dahdi/dahdi_echocan_sec.c: echocan: Improve interface for
	  echo cancelers. Echo cancelers are now able to report if they are
	  able to automatically disable their NLP portions in the presence
	  of tones in the audio stream. Also, the interface is changed to
	  allow user space to just disable the NLP portion of the echo
	  canceler. These changes improve fax and modem handling in DAHDI.
	  This commit merges in the changes on
	  http://svn.digium.com/svn/dahdi/linux/team/kpfleming/echocan_work
	  Patch by: kpfleming Also contains improvements to CED tone
	  detection. (closes issue #13286) Reported by: viniciusfontes

	* drivers/dahdi/wct4xxp/base.c: wct4xxp: Fix problem when timing
	  source is via external cable.

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/voicebus.c
	  (removed), drivers/dahdi/wcte12xp/vpmadt032.c (removed),
	  drivers/dahdi/voicebus (added), drivers/dahdi/voicebus/voicebus.c
	  (added), drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/Kconfig,
	  drivers/dahdi/wcte12xp/wcte12xp.h,
	  drivers/dahdi/wcte12xp/GpakErrs.h (removed),
	  drivers/dahdi/wctdm24xxp/GpakApi.c (removed),
	  drivers/dahdi/wcte12xp/vpmadt032.h (removed),
	  drivers/dahdi/wctdm24xxp/voicebus.c (removed),
	  drivers/dahdi/voicebus/voicebus.h (added), Makefile,
	  drivers/dahdi/wctdm24xxp/GpakApi.h (removed),
	  drivers/dahdi/vpmadt032_loader/dahdi_vpmadt032_loader.c (added),
	  drivers/dahdi/wcte12xp/Kbuild, drivers/dahdi/voicebus/Kbuild
	  (added), drivers/dahdi/wctdm24xxp/GpakHpi.h (removed),
	  drivers/dahdi/wctdm24xxp/Kbuild, drivers/dahdi/voicebus.c
	  (removed), drivers/dahdi/voicebus.h (removed),
	  drivers/dahdi/vpmadt032_loader (added),
	  drivers/dahdi/wcte12xp/GpakApi.c (removed),
	  drivers/dahdi/wcte12xp/gpakenum.h (removed),
	  drivers/dahdi/Kbuild, drivers/dahdi/voicebus/gpakenum.h (added),
	  drivers/dahdi/voicebus/GpakApi.c (added),
	  drivers/dahdi/adt_lec.c, drivers/dahdi/wcte12xp/GpakApi.h
	  (removed), drivers/dahdi/voicebus/GpakApi.h (added),
	  drivers/dahdi/voicebus/GpakCust.c (added),
	  drivers/dahdi/wctdm24xxp/gpakenum.h (removed),
	  drivers/dahdi/voicebus/gpakErrs.h (added),
	  drivers/dahdi/wctdm24xxp/GpakCust.c (removed),
	  drivers/dahdi/voicebus/GpakCust.h (added),
	  drivers/dahdi/voicebus/GpakHpi.h (added),
	  drivers/dahdi/wctdm24xxp/gpakErrs.h (removed),
	  drivers/dahdi/firmware/Makefile,
	  drivers/dahdi/voicebus/vpmadtreg.c (added),
	  drivers/dahdi/wctdm24xxp/GpakCust.h (removed),
	  drivers/dahdi/voicebus/vpmadtreg.h (added),
	  drivers/dahdi/wctdm24xxp/wctdm24xxp.h: voicebus: Move common
	  vpmadt032 interface into voicebus module. The voicebus library
	  was previously linked into both the wcte12xp and wctdm24xxp
	  drivers. It is now broken out into it's own module and the common
	  parts of the vpmadt032 interface are now located in that module
	  to reduce duplication between the wcte12xp and wctdm24xxp
	  drivers.

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp: Change netif_rx_xxx to
	  napi_xxx The netif_rx_xxx functions were dropped from the linux
	  kernel source on 2009-01-21 in commit
	  288379f050284087578b77e04f040b57db3db3f8. (closes issue #14963)
	  Reported by: tzafrir

	* drivers/dahdi/wcte12xp/base.c,
	  drivers/dahdi/wcte12xp/vpmadt032.c,
	  drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp: Update cmdqueue
	  processing. The command queue for reading from the registers on
	  the framer is now stored in a linked_list instead of an array.
	  Allows for the locks to protect this structure to be held for
	  shorter periods of time and reduces the need to cycle through all
	  the elements in the array to decide if there is a command in the
	  queue to process. Remove the usecount and dead members from
	  struct t1 since the module reference count will allow us to know
	  when it's safe to free up the memory. This change also moves
	  alarm processing out of the interrupt handler and removes the
	  need for special interrupt handling of commands.

	* drivers/dahdi/dahdi_dummy.c: dahdi_dummy: Remove real-time clock
	  support. This removes support for using the real-time clock as a
	  timing source in dahdi_dummy. Instead, the normal kernel timers
	  method is now more accurate since it keeps track of how much real
	  time has passed to determine how many times to call dahdi_receive
	  and dahdi_transmit. This method was originally suggested by bmd.
	  (closes issue #13930) (closes issue #14884) Reported by: tzafrir
	  Tested by: dbackeberg, ask

	* drivers/dahdi/voicebus.c: voicebus: Removing unused code blocks
	  and space in flag definitions.

2009-04-27 20:03 +0000 [r6513]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/Kbuild: xpp:
	  hard_hdlc support for the BRI module. The BRI module will now use
	  hardhdlc unless the DAHDI tree has been patched with the
	  bri_dchan patch, in which case the old "bristuffed" code will be
	  used. Thus it is now built by default.

2009-04-25 16:35 +0000 [r6487]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* build_tools/live_dahdi: adapt live_dahdi to current xpp tools *
	  More varibles to set through the environment * Different way to
	  list drivers

2009-04-23 15:11 +0000 [r6457-6466]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/PIC_TYPE_3.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_4.hex,
	  drivers/dahdi/xpp/firmwares/USB_FW.hex,
	  drivers/dahdi/xpp/firmwares/FPGA_1161.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_1.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_2.hex: Don't set the Id
	  keyword on firmwares; restore original ID The Id SVN keyword is
	  set locally in Xorcom and used as an identifier. That Id should
	  not be overriden by this SVN repository.

	* drivers/dahdi/xpp/firmwares/FPGA_1161.hex: xpp: FPGA_1161.hex:
	  fix FXO PCM issues (new boards only) FPGA_1161.hex rev. 7024.

2009-04-22 12:53 +0000 [r6444]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi-base.c: don't refer to macros from
	  dahdi_config.h until after it has been included use the proper
	  type for the flags variable in dahdi_ppp_xmit()

2009-04-21 22:16 +0000 [r6430]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* include/dahdi/user.h, include/dahdi/kernel.h: Move
	  DAHDI_DEFAULT_MTU_MRU from kernel.h to user.h The macro
	  DAHDI_DEFAULT_MTU_MRU needs to be exposed to userspace to build
	  tools/ppp/dahdi.c .

2009-04-20 10:49 +0000 [r6407-6409]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/PIC_TYPE_3.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_4.hex,
	  drivers/dahdi/xpp/firmwares/FPGA_1161.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_1.hex,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_2.hex: xpp firmware:
	  stability fixes for firmwares of new Astribanks FPGA_1161.hex:
	  xpp rev 7007 PIC_TYPE_*.hex: xpp rev 7000

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xproto.h,
	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/xpp/xpp_dahdi.h,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_fxs.c: xpp:
	  Do use information about number of ports the Astribank provides

	* drivers/dahdi/xpp/init_card_1_30: xpp: Fix FXS calibration (dec
	  rather than hex)

2009-04-16 19:35 +0000 [r6376-6393]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/card_fxs.c, drivers/dahdi/xpp/init_card_1_30,
	  drivers/dahdi/xpp/init_card_2_30: xpp fxs/fxo: PCM and DTMF fixes

	* drivers/dahdi/xpp/card_fxs.c: xpp fxs: Notify the user just one
	  about wrong VMWI config From xpp rev. 6974.

	* drivers/dahdi/xpp/card_fxs.c: xpp fxs: Ignore registers of
	  disabled SLICs From xpp rev. 6979

	* drivers/dahdi/xpp/card_bri.c: xpp bri: explicitly turn off leds
	  on startup If NT/TE was changed (e.g: happened because of
	  firmware bug) We would be left with a lit led we don't know
	  about. From xpp rev. 6990

2009-04-10 09:53 +0000 [r6344]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/astribank_hook.sample (removed): Move
	  astribank_hook from linux to tools. Install it by default

2009-04-04 14:22 +0000 [r6325]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* Makefile: Also install dahdi_config.h to /usr/include/dahdi

2009-04-02 20:34 +0000 [r6301-6312]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/astribank_hook.sample: Update the sample udev
	  astribank_hook for TwinStar

	* drivers/dahdi/xpp/firmwares/PIC_TYPE_3.hex (added),
	  drivers/dahdi/xpp/xpp.rules,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_4.hex (added),
	  drivers/dahdi/xpp/.version,
	  drivers/dahdi/xpp/firmwares/FPGA_1161.hex (added),
	  drivers/dahdi/xpp/firmwares/USB_FW.hex,
	  drivers/dahdi/xpp/firmwares/Makefile,
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_1.hex (added),
	  drivers/dahdi/xpp/firmwares/PIC_TYPE_2.hex (added): XPP: support
	  for 116x Astribanks. * New software to load in the udev rules *
	  New control protocol ("MPP") * More modular FPGA firmware From
	  Xorcom rev. 6963.

	* drivers/dahdi/xpp/xbus-pcm.c: Reduce the rate for a potentially
	  annoying message This message is used when an xpp span is a DAHDI
	  sync master but also set to take timing from the DAHDI master.
	  This means wrong settings: user is wasting CPU cycles. However
	  notifying the user about it every second is still too much.

2009-04-02 17:27 +0000 [r6285-6294]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi-base.c: ensure that the structure being
	  returned by DAHDI_GET_BUFINFO is completely initialized

2009-03-26 18:33 +0000 [r6262]  Wendell Thompson <wthompson@digium.com>

	* drivers/dahdi/voicebus.c: Fixes DAHDI-214 crash on driver unload.
	  Affects wcte12xp and wctdm24xxp modules.

2009-03-24 19:08 +0000 [r6237-6246]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Eliminate unnecessary checks for
	  NULL before freeing memory.

	* drivers/dahdi/wctc4xxp/base.c: Do not allocate more memory than
	  is needed when sending packets.

	* drivers/dahdi/wctc4xxp/base.c: Block runt packets from the
	  transcoder. Tested by: Walter Klomp

	* drivers/dahdi/wctc4xxp/base.c: Do not define the debug flags if
	  CONFIG_SLUB is not set. Some versions of the kernel
	  (2.6.18-92.1.22.el5) have patches in them to panic if a slab
	  cache is created with unsupported flags.

2009-03-24 15:59 +0000 [r6236]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi-base.c: Make sure the requested echo
	  canceller name is NULL-terminated. Make sure that the that the
	  name of the echo canceller requested in the DAHDI ioctl
	  DAHDI_ATTACH_ECHOCAN is NULL-terminated.

2009-03-23 23:49 +0000 [r6217-6228]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Verify checksum on the RTP IP
	  header before queueing.

	* drivers/dahdi/wctc4xxp/base.c: Poll the card in a kernel timer
	  when several channels are open. Polling the driver increases
	  overall system throughput when there are several transcoding
	  channels open by reducing the number of interrupts the the TC400M
	  generates.

	* drivers/dahdi/wctc4xxp/base.c: Optionally show total number of
	  packets dropped when channel is closed.

	* drivers/dahdi/wctc4xxp/base.c: Do not handle duplicate reponses.
	  It is possible for system activity to prevent the wctc4xxp driver
	  from responding the the firmware on the TC400M for a period of
	  time. If this occurs, the TC400M will resend a response to a
	  command that we sent. This duplicate reponse will then sometimes
	  confuse the driver. Normally this would manifest as an attempt to
	  connect the same channel together in a transcoding session.

	* drivers/dahdi/wctc4xxp/base.c: Set TX_COMPLETE atomically with
	  changes to the waiting_for_response_list. This change is to catch
	  a condition where it is possible, for whatever reason, for a
	  response to come in before the request is marked tx complete. If
	  this happened, it was possible to leak the response packet and
	  double complete the command.

	* drivers/dahdi/wctc4xxp/base.c: split send_trans_connect into a
	  connect / disconnect pair. Trivial change that makes the code
	  read more naturally. Also changes the order of members in the
	  channel_pvt structure. For more natural alignment. Both
	  non-functional changes.

	* drivers/dahdi/wctc4xxp/base.c: If the driver fails to register,
	  make sure we cleanup the command cache.

	* drivers/dahdi/wctc4xxp/base.c: Setup the TC400M to poll the own
	  bit on the descriptor ring. On certain systems having the
	  hardware poll the descriptor ring provides more reliable
	  operation that strobbing the transmit demand poll and receive
	  demand poll register.

	* drivers/dahdi/wctc4xxp/base.c: Make sure that messages sitting in
	  the outbound queue cause the timer to reschedule.

	* drivers/dahdi/wctc4xxp/base.c: Refactor channel command handling.
	  Makes commands and reponses clearer and easier to trouble shoot,
	  reduces pressure on the stack, and brings driver closer to kernel
	  coding standards.

2009-03-18 18:48 +0000 [r6201]  Jason Parker <jparker@digium.com>

	* drivers/dahdi/dahdi_dynamic_loc.c: Fix a typo

2009-03-17 17:59 +0000 [r6170-6191]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/USB_FW.hex: xpp USB_FW.hex rev 6885:
	  fixes reading label from USB Previous USB_FW.hex, 6770, has
	  failed to properly read the USB iSerial field ("Label" in xpp
	  terms). This is fixed here.

	* include/dahdi/dahdi_config.h (added), include/dahdi/kernel.h,
	  drivers/dahdi/xpp/Kbuild, drivers/dahdi/dahdi-base.c,
	  drivers/dahdi/dahdi_config.h (removed): Move dahdi_config.h to be
	  under include/dahdi/ This makes dahdi_config.h part of the
	  "offcial" interface to external modules. Practically most of its
	  configuration items are internal to dahdi-base. But some are
	  intended for other drivers.

	* drivers/dahdi/biquad.h, include/dahdi/kernel.h,
	  drivers/dahdi/ecdis.h, drivers/dahdi/dahdi-base.c: Make ecdis.h
	  used by dahdi-base.h alone ecdis.h is no longer #include-d in
	  kernel.h . it was there because of decleration of some structs
	  that are part of struct dahdi_chan. The declerations of those
	  structs were moved into kernel.h directly.

2009-03-13 10:21 +0000 [r6134-6147]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi-base.c: Fix handling of 'w' in a pulse dial
	  string Make the special "digit" 'w' work in pulse dialing as it
	  works with tone dialing (a delay of 0.5 second till the next
	  digit). Note that the digit gets uppercased before it gets to
	  this function. (closes issue #13999) Reported by: IgorG Patches:
	  dahdi-base.c.pulse2.diff uploaded by tzafrir (license 46) Tested
	  by: litnimax

	* drivers/dahdi/xpp/xpp.conf: A better sample xpp.conf

	* drivers/dahdi/xpp/init_card_3_30,
	  drivers/dahdi/xpp/init_card_4_30,
	  drivers/dahdi/xpp/init_card_1_30,
	  drivers/dahdi/xpp/init_card_2_30: xpp init_card_* scripts now
	  less verbose * Demote some messages to be debug messages. *
	  Rephrase the message about defaults for the PRI module (the
	  driver's defaults are used, which is OK)

	* drivers/dahdi/dahdi-base.c: Fix handling of DAHDI_GETGAINS_V1
	  missing from r6124 .

2009-03-11 14:51 +0000 [r6113-6126]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/voicebus.c: Allow 10ms for voicebus hardware to
	  settle after reset. The voicebus hardware needs more time to
	  settle after a reset. The short settle time explains why there
	  was frequently one IRQ miss reported in the proc file for the
	  spans. Reported by: jsloan

	* drivers/dahdi/wct4xxp/base.c: Relax ident wheel requirements. Do
	  not require the first card to be set to 0 and allow skips in the
	  ident wheel numbers. The ident wheel allows a user to determine
	  the order that cards register there spans with DAHDI. (closes
	  issue #13078) Reported by: opticron Patch by: opticron

	* include/dahdi/user.h, drivers/dahdi/dahdi-base.c: Fix direction
	  bits on several ioctls. (related to issue #14499) Reported by: ys

	* include/dahdi/kernel.h, drivers/dahdi/dahdi_transcode.c: Keep
	  transcoders on a list in registration order. This fixes a bug
	  where it was possible for there to be a transcoder in position
	  "1" but not in position "0" if a transcoder hardware driver was
	  loaded, unloaded, and reloaded again without also reloading
	  dahdi_transcode. The result is that codec_dahdi fails to
	  enumerate all the transcoders in the system. (closes issue
	  #14627) Reported by: xblurone

	* drivers/dahdi/dahdi-base.c: Eliminating an unused parameter to
	  dahdi_specchan_open.

2009-03-06 21:43 +0000 [r6096]  Wendell Thompson <wthompson@digium.com>

	* drivers/dahdi/xpp/xpp_usb.c, drivers/dahdi/wctc4xxp/base.c,
	  drivers/dahdi/voicebus.c: Workarounds for SLUB sysfs problems in
	  kernel 2.6.22 with CONFIG_SLUB and CONFIG_SLUB_DEBUG, as in
	  Fedora Core 6. Fixes kernel oops when loading/unloading dahdi
	  modules. DAHDI-226

2009-03-05 18:53 +0000 [r6079]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/FPGA_1141.hex,
	  drivers/dahdi/xpp/firmwares/FPGA_1151.hex,
	  drivers/dahdi/xpp/firmwares/FPGA_FXS.hex: xpp: FPGA firmwares
	  6799 New FPGA firmware with a number of bug fixes.

2009-03-01 13:56 +0000 [r6046]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/init_card_3_30, drivers/dahdi/xpp/xpp_dahdi.c,
	  drivers/dahdi/xpp/xproto.h, drivers/dahdi/xpp/.version,
	  drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/xpp/xpp_dahdi.h,
	  drivers/dahdi/xpp/firmwares/USB_FW.hex,
	  drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xframe_queue.c,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_global.c,
	  drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/Changelog_xpp,
	  drivers/dahdi/xpp/card_global.h, drivers/dahdi/xpp/xbus-pcm.c:
	  New XPP code: xpp rev 6795: * Fix cases where the command_queue
	  overflowed during initialization. - Also add a
	  'command_queue_length' parameter to xpp.ko * More migrations to
	  sysfs: - Add a 'transport' attribute to our astribank devices
	  which points to the usb device we use. E.g:
	  /sys/bus/astribanks/devices/xbus-00/transport is symlinked to
	  ../../../../../../devices/pci0000:00/0000:00:10.4/usb5/5-4 - Move
	  /proc/xpp/XBUS-??/XPD-??/span to
	  /sys/bus/xpds/devices/??:?:?/span - Migrate from /proc/xpp/sync
	  to: /sys/bus/astribanks/drivers/xppdrv/sync - New 'offhook'
	  attribute in: /sys/bus/xpds/devices/??:?:?/offhook * PRI: change
	  the "timing" priority to match the convention used by other PRI
	  cards -- I.e: lower numbers (not 0) have higher priority. * FXO:
	  - Power denial: create two module parameters instead of
	  hard-coded constants (power_denial_safezone,
	  power_denial_minlen). For sites that get non-standard
	  power-denial signals from central office on offhook. - Don't
	  hangup on power-denial, just notify Dahdi and wait for - Fix
	  caller-id detection for the case central office sends it before
	  first ring without any indication before. Asterisk's desicion. *
	  USB_FW.hex: - Fixes cases where firmware loading would fail.

2009-02-11 05:41 +0000 [r6005]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Use the proper pci_device when
	  handling dma buffers.

2009-02-10 14:07 +0000 [r5997]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Set default alarm debounce time to
	  500ms to debounce NT L1 deactivations

2009-02-09 06:03 +0000 [r5987]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xproto.c: Fix building DAHDI with module
	  unloading disabled As moduel_refcount is only used for debugging,
	  disable it in this non-common case. (Closes issue #14402)

2009-02-02 14:13 +0000 [r5936]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi_echocan_kb1.c,
	  drivers/dahdi/hpec/dahdi_echocan_hpec.c, include/dahdi/kernel.h,
	  drivers/dahdi/dahdi_echocan_jpah.c,
	  drivers/dahdi/dahdi_echocan_mg2.c,
	  drivers/dahdi/dahdi_echocan_oslec.c, drivers/dahdi/dahdi-base.c,
	  drivers/dahdi/dahdi_echocan_sec.c, drivers/dahdi/hpec/hpec.h,
	  drivers/dahdi/dahdi_echocan_sec2.c: Array-style echo canceller
	  updates first appeared in Zaptel, because HPEC only supports that
	  mode. However, when the function for doing array-style updates
	  was written, the argument names were reversed. In Zaptel this did
	  no harm, because HPEC was the only module that used array-style
	  updates. When DAHDI was created, non-array-style updates were
	  removed, and the existing modules were converted to using
	  array-style updates. Unfortunately the new code was written based
	  on the argument names, which were incorrect. This caused all the
	  echo cancellers to be broken (except HPEC, although we did not
	  know that at the time), and it was corrected by reversing the
	  order of the arguments passed when the array-style update
	  function was called (leading to a confusing mismatch). This fixed
	  all the non-HPEC modules, but left HPEC broken, which was just
	  discovered. This commit corrects all these problems, so that the
	  argument names and the data passed actually make sense, and all
	  the modules work properly.

2009-01-30 23:42 +0000 [r5924]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Make sure that we pass alarm
	  notification up the stack whenever alarms occur on the B410P

2009-01-30 16:53 +0000 [r5916]  Mike Spiceland <mspiceland@digium.com>

	* drivers/dahdi/wctdm24xxp/base.c: Do a stricter test for FXS
	  modules. FXO modules will be hi-z during this time and the value
	  will be undefined. This test ensures that FXO modules will not
	  falsely trigger during FXS probes. The value of 0x88 from
	  register 1 has been confirmed during this stage on quad and
	  single port modules.

2009-01-28 23:17 +0000 [r5895]  Richard Mudgett <rmudgett@digium.com>

	* include/dahdi/user.h: Minor comment rearangement to avoid
	  possible confusion.

2009-01-28 04:41 +0000 [r5870]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Ensure the teignorered parameter is
	  exposed as a module parameter. Related to issue #14031 .

2009-01-27 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0.4 released.

	* Fix for a kernel panic regression when heavily using pseudo
	  channels (issue #14183) (merged r5811 and r5819 from the trunk)
	
	* Fix the safety check in tor2 to be for SPANS_PER_CARD
	  (issue #13954) (merged r5590 from the trunk).

2008-12-17 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0.3 released.

2008-12-17 15:57 +0000 [r5535-5576]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Do not propogate received
	  HDLC frames on channels that are not configured. Issue: DAHDI-217

	* drivers/dahdi/wcb4xxp/base.c: Use %p to print out pointer values.

	* drivers/dahdi/wcb4xxp/base.c: Remove an endless while loop.

	* drivers/dahdi/wcte12xp/base.c: Quiet some warnings about 
	  possible use of uninitialized variables.

	* build_tools/live_dahdi: live_dahdi: Use the nonrelative path for
	  the dahdi-tools folder in live_dahdi.

2008-12-15 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0.2 released.

2008-12-15 20:31 +0000 [r5534-5535]  Shaun Ruffell <sruffell@digium.com>

	* build_tools/live_dahdi: live_dahdi: Use the nonrelative path for
	  the dahdi-tools folder in live_dahdi.

	* drivers/dahdi/wcte12xp/base.c: wcte12xp: do not release a
	  spinlock that we did not acquire.

2008-12-12 14:32 +0000 [r5523]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi-base.c: use a format string for
	  request_module, so the compiler will do the right thing

2008-12-11 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0.1 released.

2008-12-11 21:46 +0000 [r5509]  Shaun Ruffell <sruffell@digium.com>

	* include/dahdi/kernel.h: Add definition of dev_notice for kernels
	  < 2.6.17.

2008-12-11 21:03 +0000 [r5498-5504]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xbus-sysfs.c: One more place whe
	  old-but-not-ancient hotplug is used.

	* drivers/dahdi/dahdi_echocan_oslec.c: Send all samples to OSLEC,
	  rather than just the first. (closes issue #14036) Reported by:
	  marcotasto Patches: dahdi_echocan_oslec.patch uploaded by
	  marcotasto (license 635)

	* drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xbus-core.h,
	  drivers/dahdi/xpp/xdefs.h: Add a separate case for hotplug of
	  kernels <= 2.6.9 .

2008-12-11 20:19 +0000 [r5497]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi_dummy.c: If we're using the
	  system tick, don't use the hrtimer interface.

2008-12-11 18:57 +0000 [r5482-5492]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xbus-sysfs.c: Fix the xpp OLD_HOTPLUG fix.

	* drivers/dahdi/dahdi_dummy.c: Fix building dahdi_dummy for kernels
	  2.6.13, 2.6.14: Those kernels don't have RTC yet.

	* drivers/dahdi/wcb4xxp: Yet Another directory in which to ignore
	  modules.order

	* drivers/dahdi/wcb4xxp/base.c: Remove an include that is not
	  available before 2.6.15 and is not needed

	* drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xbus-core.h: A
	  bit less maigc with OLD_HOTPLUG_SUPPORT

	* drivers/dahdi/dahdi-base.c: Fixed a typo that broke building
	  dahdi-base with kernels < 2.6.13

2008-12-11 16:43 +0000 [r5481]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Fix compilation issues
	  on 2.6.15 and below kernels. Thanks tzafrir.

2008-12-09 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0 released.

2008-12-09 18:49 +0000 [r5453]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* live_dahdi (added): live_dahdi - test dahdi without fully
	  installing it.

2008-12-06 22:23 +0000 [r5444]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp, drivers/dahdi/wcte12xp, drivers/dahdi,
	  drivers/dahdi/wct4xxp, drivers/dahdi/wctc4xxp,
	  drivers/dahdi/wctdm24xxp: Ignore modules.order in modules
	  directories.

2008-12-04 20:57 +0000 [r5433-5434]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Fix an erroneous warning and
	  ensure that the sample size is set correctly when decoding G723
	  packets. Issue: DAHDI-198

	* drivers/dahdi/dahdi_transcode.c: Do not use an already built
	  channel if the source and destination formats do not match the
	  formats we want. This fixes a regression introduced by the new
	  transcoder interface where a translation path from one complex
	  codec to another can result in garbled audio.

2008-12-01 17:58 +0000 [r5413-5420]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Service the transmit descriptor
	  ring before the receive descriptor ring so that commands that are
	  still sitting on the transmit descriptor ring are not completed
	  twice.

2008-11-27 09:59 +0000 [r5397-5403]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* Makefile: dahdi-linux: Remove README.Astribank.html generation.

	* drivers/dahdi/xpp/README.Astribank (removed): Moving
	  README.Astribank to dahdi-tools .

	* drivers/dahdi/xpp/README.Astribank: Fixes and some work in
	  progress on DAHDI Astribank README.

2008-11-25 20:00 +0000 [r5384]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte11xp.c, drivers/dahdi/wct1xxp.c: Validate the
	  timing priority on the wcte11xp and wct1xxp driver.

2008-11-25 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0-rc5 released.

2008-11-25 20:00 +0000 [r5383-5384]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte11xp.c, drivers/dahdi/wct1xxp.c: Validate the
	  timing priority on the wcte11xp and wct1xxp driver.

	* drivers/dahdi/tor2.c: Validate that the span priority is valid in
	  the tor2 driver. Patch provided by tzafrir.

2008-11-24 05:32 +0000 [r5367-5374]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Additional debugging code. Patch
	  provided by akohlsmith. Issue DAHDI-173.

	* drivers/dahdi/wcb4xxp/base.c: Add a 'spanfilter' module parameter
	  in order to isolate debugging information to just the spans of
	  interest. Patch provided by akohlsmith. Issue DAHDI-173.

	* drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/wcb4xxp/wcb4xxp.h:
	  Use counter of pending HDLC frames in order to eliminate the need
	  to send a zero-byte frame to kick start the transmission process.
	  Patch provided by akohlsmith. Issue DAHDI-173.

	* drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/wcb4xxp/wcb4xxp.h: Do
	  not make assumptions about the number of ready HDLC frames on
	  HDLC RX interrupt. This prevents libpri from becoming confused
	  when many HDLC frames arrive before the driver can service them
	  or a false RX interrupt is received. Patch provided by akolsmith.
	  Issue DAHDI-173.

2008-11-21 20:15 +0000 [r5360]  Jason Parker <jparker@digium.com>

	* drivers/dahdi/dahdi-base.c: Fix a think-o in numeric comparison.
	  Swap order to make it more clear. (closes issue #13813) Reported
	  by: ys

2008-11-21 04:42 +0000 [r5350-5355]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: Convert some uses of sprintf to
	  snprintf in dahdi_proc_read in order to eliminate a buffer
	  overrun. Issue: DAHDI-209

	* drivers/dahdi/wcb4xxp/base.c: Force the FIFO to reset when the
	  file handle is closed. Patch provided by akohlsmith. Issue:
	  DAHDI-178

2008-11-20 12:31 +0000 [r5340-5345]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/tor2.c: Make tor2 load properly. Seems to fix
	  #13487. Thanks to heyuqi for the testing.

	* drivers/dahdi/xpp/README.Astribank: * Some extrra Zap->DAHDI (and
	  Dahdi->DAHDI) fixes in the Astribank README. * Some extra
	  asciidoc formatting fixes.

2008-11-19 21:25 +0000 [r5335]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/wcb4xxp/Makefile (added): support wcb4xxp build on
	  kernels that don't directly use Kbuild

2008-11-17 18:17 +0000 [r5321]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: - Fix for race condition of
	  encoder and decoder are allocated at the same time in the driver.
	  This would result in -EBUSY returns from the DAHDI_TC_ALLOCATE
	  ioctl. - Increase the length of the receive descriptor ring from
	  8 to 32 to reduce the probability of running out of receive
	  descriptors.

2008-11-17 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0-rc4 released.

2008-11-17 18:17 +0000 [r5321]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: - Fix for race condition of
	  encoder and decoder are allocated at the same time in the driver.
	  This would result in -EBUSY returns from the DAHDI_TC_ALLOCATE
	  ioctl. - Increase the length of the receive descriptor ring from
	  8 to 32 to reduce the probability of running out of receive
	  descriptors.

2008-11-17 18:01 +0000 [r5320]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/init_card_4_30, drivers/dahdi/xpp/card_pri.c:
	  xpp_pri: Fix T1 CRC initialization Clock synchronization when
	  sync is not from first port.

2008-11-17 17:44 +0000 [r5315]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/wcb4xxp/wcb4xxp.h: A
	  fix for an issue with corruption on the D-Channels. Patch
	  provided by akohlsmith. Issue: DAHDI-173.

2008-11-16 19:30 +0000 [r5310]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/USB_FW.hex: Fixed USB firmware that
	  caused some bad bioses to hang on boot. The BIOSes included in a
	  number of motherboards could hang from an Astribank firmware
	  newer than 1.2.20.1 / 1.4.5.1 . This was due to an some incorrect
	  USB information in the firmware. This firmware fixes it. Merged
	  Zaptel revisions 4580 via svnmerge from
	  http://svn.digium.com/svn/zaptel/branches/1.2

2008-11-13 22:10 +0000 [r5303]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/voicebus.c, drivers/dahdi/voicebus.h: Make a
	  message about the host cacheline size being unsupported a debug
	  only message. The voicebus interface still works whether the
	  cacheline size is supported or not, but the message is confusing
	  to users.

2008-11-10 20:37 +0000 [r5288]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/init_card_2_30: xpp init_card_2_30: no need to
	  check environment in verify mode. Fixes #13832 in Zaptel.

2008-11-10 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0-rc3 released.
	
2008-11-10 19:48 +0000 [r5275]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/dahdi-base.c: - Do
	  not hold any locks while calling close_channel, which can result
	  in calls to the echocan modules which do not necesarrily assume
	  they are being called in atomic context. - Remove the bigzaplock
	  around calls to psuedo_alloc and pseudo_free. The structures
	  protected by this lock are already protected by the chan_lock in
	  these two cases. - Remove calls to in_atomic() that were
	  previously added to work around this, but did not cover all the
	  cases. Issue: DAHDI-195, DAHDI-170

2008-11-09 00:33 +0000 [r5269-5270]  Sean Bright <sean.bright@gmail.com>

	* drivers/dahdi/dahdi-base.c: We only use print_debug_writebuf when
	  CONFIG_DAHDI_NET or CONFIG_DAHDI_PPP are defined, so only define
	  it in those cases as well. Reported & Tested by: KP7 via
	  #asterisk-dev

	* drivers/dahdi/dahdi-base.c: Add missing semi-colon. Reported &
	  Tested by: KP7 via #asterisk-dev

2008-11-05 23:45 +0000 [r5249-5257]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Whitespace changes for the coding
	  standard.

	* drivers/dahdi/wcb4xxp/base.c: rate limiting a diagnostic printk.

2008-11-05 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0-rc2 released.

2008-11-05 20:17 +0000 [r5230-5237]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Fix warning messages in order to
	  build on 2.6.27. (Closes issue #13757) Patch provided by tzafrir.

	* drivers/dahdi/wcte12xp/vpmadt032.c,
	  drivers/dahdi/wctdm24xxp/GpakCust.c: Check the return value of
	  the down_interruptible call in order to quiet a warning. This
	  semaphore does not protect any host data structures, but only
	  accesses to the VPMADT032 module. The worse thing that could
	  happen is that the internal state of the VPM module is corrupted,
	  and then would only happen on module loading because otherwise
	  access because that is the only time this function is called in
	  the context of a user process. In this case, the module would
	  need to be reloaded again anyway. (Closes issue #13742) Reported
	  by smurfix

	* drivers/dahdi/wcb4xxp/base.c: Remove the loopback module
	  parameter since it's not implemented yet.

	* drivers/dahdi/wcb4xxp/base.c: Allow the wcb4xxp to take all the
	  signalling types.

2008-11-03 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux version 2.1.0-rc1 released.

2008-11-03 12:01 +0000 [r5203-5211]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi_dummy.c: Adjust DAHDI to the new timers
	  interface of kernel 2.6.28

	* drivers/dahdi/dahdi-base.c: dahdi-base: hw_echocancel_off: return
	  0 if no hardware EC If the span has no hardware EC, return 0,
	  rather than a random uninitialized value (which was no harm, as
	  that return value is always ignored anyway).

	* README: README: no need to generate Kbuild for OSLEC. No need to
	  create a Kbuild file. staging/echo has a Makefile that works fine
	  for us.

2008-10-31 22:23 +0000 [r5196]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Changing the spantype to indicate
	  whether it is a TE or NT BRI port.

2008-10-31 21:33 +0000 [r5195]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Fix the FIFO configuration to use
	  the data from the EC correctly

2008-10-31 21:05 +0000 [r5190-5191]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Set the spantype to "BRI"
	  (to show e.g. in dahdi_scan)

	* drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Claim to provide DACS for
	  dahdi_scan dahdi_scan can tell that a span is digital if its
	  first channel has DACS signalling capability. While this is
	  probably not supported by the current driver, it is also
	  harmless. Without this, dahdi_scan shows the spans of this card
	  as analog. (Done after consulting with sruffel)

2008-10-31 17:11 +0000 [r5186]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: Fix for a case where a span might
	  not always come back up after a disconnect. Patch provided by
	  akohlsmith. Issue: DAHDI-174

2008-10-30 19:16 +0000 [r5179-5180]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi-base.c: Use correct length for the, well,
	  dahdi transcoder device name.

	* drivers/dahdi/dahdi-base.c: Use ! to hint udev about directory
	  separator. Udev knows how to convert a '!' in the device name to
	  a directory separator. Thus the name 'dahdi!ctl' will create the
	  device /dev/dahdi/ctl . We still keep older udev rules in this
	  release for compatibility, but eventually we'll only need them to
	  set permissions.

2008-10-29 16:48 +0000 [r5171-5175]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/base.c: The /proc/wcb4xxp should not be
	  created once for each card but rather once for all cards.

	* drivers/dahdi/wcb4xxp/base.c: By default, do not create the
	  procfs entry for the wcb4xxp driver.

2008-10-29 15:09 +0000 [r5167]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xbus-core.c: xpp: Increase the maximal size of
	  the command queue to 500 . Temporarily increase the maximal size
	  of the command queue from 300 to 500 as a workaround of an issue
	  at initialization time (mainly of BRI+FXS).

2008-10-28 21:59 +0000 [r5156-5163]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi: update to latest octasic_api tag with NULL
	  definition fix

	* drivers/dahdi/tor2.c, drivers/dahdi/wcfxo.c,
	  drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/GpakApi.c,
	  drivers/dahdi/pciradio.c, drivers/dahdi/wct4xxp/base.c,
	  drivers/dahdi/wcte12xp/vpmadt032.c,
	  drivers/dahdi/wctc4xxp/base.c, drivers/dahdi/dahdi_echocan_mg2.c,
	  drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/wctdm24xxp/GpakApi.c,
	  drivers/dahdi/wcte12xp/vpmadt032.h,
	  drivers/dahdi/wctdm24xxp/GpakCust.c,
	  drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/dahdi_dynamic_loc.c,
	  drivers/dahdi/dahdi_transcode.c, drivers/dahdi/wcte11xp.c,
	  drivers/dahdi/dahdi_dynamic.c, drivers/dahdi/dahdi_dynamic_eth.c,
	  drivers/dahdi/wct1xxp.c, drivers/dahdi/wctdm.c,
	  drivers/dahdi/wcb4xxp, drivers/dahdi/voicebus.c,
	  drivers/dahdi/dahdi-base.c, drivers/dahdi/dahdi_dummy.c: fix a
	  large number of warnings found by sparse, the kernel code sanity
	  checking tool. some of these fixes are non-optimal (casting
	  'unsigned long' to '__user void *'), but are unavoidable in many
	  cases. started from tzafrir's patch, did most of the work myself.
	  (closes issue #13763) Reported by: tzafrir Patches:
	  sparse_fixes_1.diff uploaded by tzafrir (license 46)

	* README: various cleanups, primarily proper capitalization

2008-10-28 18:26 +0000 [r5148-5150]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcb4xxp/Kbuild (added), drivers/dahdi/Kbuild,
	  drivers/dahdi/wcb4xxp/base.c (added), drivers/dahdi/wcb4xxp
	  (added), drivers/dahdi/wcb4xxp/wcb4xxp.h (added), README: Adding
	  the wcb4xxp driver, a native dahdi driver for the B410P module.

2008-10-27 19:27 +0000 [r5127-5138]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* README: dahdi linux README: Clarify OSLEC EC build procedure.

	* drivers/dahdi/xpp/card_fxo.c: xpp fxo: Add sysfs battery
	  attribute.

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xbus-core.c,
	  drivers/dahdi/xpp/xbus-core.h: xpp: remove an unused manual
	  reference count field.

	* drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xbus-sysfs.c:
	  xpp: Make some definitions static, as per sparse. Fixes the xpp
	  warnings of #13763 (except some false alarms).

	* drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/xpp/xbus-sysfs.c,
	  drivers/dahdi/xpp/card_fxs.c, drivers/dahdi/xpp/xbus-core.h,
	  drivers/dahdi/xpp/xdefs.h: Fix xpp compile problems on kernel <
	  2.6.16 Support for kernels that use the older hotplug support
	  rather than the newer uevent. Fixes the xpp issue from #13427.

	* include/dahdi/kernel.h: kernel.h: cleanup DAHDI_FLAG_* defines,
	  no functional change. Define the DAHDI_FLAG_* using the
	  DAHDI_FLAGBIT_* enum values.

2008-10-22 18:49 +0000 [r5121-5124]  Jason Parker <jparker@digium.com>

	* build_tools/genudevrules: Need to make sure we check for udevadm
	  in addition to udevinfo. Some silly person (or people) decided
	  that it wasn't useful to have in their distro... *cough*

	* drivers/dahdi/wctdm.c: Fix building on big endian machines.
	  (closes issue #13754) Reported by: shrift Patches:
	  wctdm-powerpc.patch uploaded by irroot (license 52) Tested by:
	  shrift

2008-10-22 11:44 +0000 [r5105-5118]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/wct1xxp.c: wct1xxp: fix error handling at device
	  startup. And also give more useful error messages if things go
	  bad. (closes issue #13607) Patches: wct1xxp_pci.diff uploaded by
	  tzafrir (license 46) Tested by: klaus3000

	* drivers/dahdi/xpp/init_card_1_30: xpp FXS init script: Do use
	  high-pass filter.

	* drivers/dahdi/Kbuild, drivers/dahdi/dahdi_echocan_oslec.c
	  (added), README: An experimental OSLEC echocan module.

	* /: dahdi-trunk: ignore the generated README.html .

	* README: dahdi-linux README: better place for build requirements.
	  (We'll have to put a content there one of these days)

	* README: Fix headers numbering.

2008-10-16 17:40 +0000 [r5097]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/xpp.rules, drivers/dahdi/xpp/xpp_usb.c,
	  drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_fxo.c,
	  drivers/dahdi/xpp/xframe_queue.c, drivers/dahdi/xpp/xbus-sysfs.c,
	  drivers/dahdi/xpp/Kbuild, drivers/dahdi/xpp/card_fxs.c,
	  drivers/dahdi/xpp/card_global.c, drivers/dahdi/xpp/xproto.c,
	  drivers/dahdi/xpp/xframe_queue.h,
	  drivers/dahdi/xpp/astribank_hook.sample (added),
	  drivers/dahdi/xpp/init_card_1_30, drivers/dahdi/xpp/xbus-pcm.c,
	  drivers/dahdi/xpp/init_card_2_30,
	  drivers/dahdi/xpp/card_global.h,
	  drivers/dahdi/xpp/init_card_3_30, drivers/dahdi/xpp/xproto.h,
	  drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xpd.h,
	  drivers/dahdi/xpp/init_card_4_30, drivers/dahdi/xpp/xpp_dahdi.h,
	  drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/mmapdrv.c,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/xbus-core.h,
	  drivers/dahdi/xpp/xdefs.h: xpp: start migration from procfs to
	  sysfs. * Sysfs representation for XPDs:
	  /sys/bus/xpds/devices/<bus>:<unit>:<subunit> * Astribanks sysfs
	  directories now include the XPDs as subdirectories: e.g.
	  /sys/bus/astribanks/devices/xbus-00/00:3:0 * procfs control
	  interface deprecated: conditioned by OLD_PROC (defaults to off).
	  Control functionality moved to sysfs: * xbus attributes: cls
	  connector label status timing waitfor_xpds xbus_state * XPDs can
	  have driver-specific attributes. Common attriubtes: blink
	  chipregs span * PRI-specific attributes: pri_clocking pri_dchan
	  pri_cas pri_alarms pri_layer1 pri_localloop pri_protocol * The
	  Astribank attribute "xbus_state" is read/write. Reading it shows
	  the current state of the Astribank. Writing "start" or "stop"
	  allows a software equivalent of connect or disconnect
	  respectively. * When an Astribank is ready it sends an "online"
	  event. Whenever its not ready (e.g. at the time of disconnect) it
	  sends an "offline" event. Use astribank_hook.sample to handle
	  those.

2008-10-14 22:11 +0000 [r5090]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c: If the vpmadt032 firmware needs to
	  be reloaded, make sure we use the same slot in the ifaces array.

2008-10-10 22:38 +0000 [r5084]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi_transcode.c, drivers/dahdi/wctc4xxp/base.c: -
	  Ensure that the source format is considered when selecting a
	  transcoder. - When a command is to be retried, turn off the
	  TX_COMPLETE flag before resubmitting it to the hardware. This
	  should elimate some of the warnings printed to the kernel log in
	  the wctc4xxp_transmit_cmd function.

2008-10-09 02:54 +0000 [r5068]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi-base.c: a micro-optimization found while
	  creslin and i spent four or five hours tracking down a very
	  complex problem

2008-10-06 20:52 +0000 [r5064]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi-base.c: use the same logic here as elsewhere
	  for releasing echocan module references

2008-10-06 17:48 +0000 [r5060]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Embed room for the complete packet
	  to the DTE in the transcoder buffer structure. Simplifies
	  alignment management at the cost of a little wasted memory, but
	  the end results is that operation is more reliable on more
	  systems.

2008-10-06 16:55 +0000 [r5056]  Sean Bright <sean.bright@gmail.com>

	* drivers/dahdi/dahdi-base.c: Fix a few compile errors that only
	  show up when CONFIG_DAHDI_PPP is defined. (closes issue #13608)
	  Reported by: Nik Soggia Fix suggested by: Nik Soggia Tested by:
	  seanbright

2008-10-03 20:32 +0000 [r5046-5051]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi-base.c: Fix building with CONFIG_DAHDI_NET in
	  kernel 2.6.22 The leftovers of issues #13542 (which was mostly
	  resolved in previous committ. This closes it.

	* drivers/dahdi/dahdi-base.c: Fix building with CONFIG_DAHDI_NET .
	  It builds, but will it run? Patch dahdi-base.c.hdlc.patch by
	  biohumanoid that fixes some aparant copy&paste errors.

2008-10-03 20:09 +0000 [r5045]  Sean Bright <sean.bright@gmail.com>

	* drivers/dahdi/dahdi-base.c, drivers/dahdi/dahdi_config.h: Fix
	  some compilation problems that show up when CONFIG_DAHDI_DEBUG is
	  defined.

2008-10-03 15:39 +0000 [r5021-5034]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: There are two possible valid
	  statues when booting the TC400M.

	* drivers/dahdi/wctc4xxp/base.c: Keep hold of the channel lock when
	  setting the data_ready flag for the channel after writing to the
	  receive queue. Prevents a warning that data was on the recieve
	  queue but the data ready flag was not set. Issue: DAHDI-42

	* drivers/dahdi/wctc4xxp/base.c: wctc4xxp_cleanup_channel_private
	  needs a pointer to the zt_transcoder_channel and not just the
	  private portion now in order to manage the data ready flag state.

	* drivers/dahdi/wctc4xxp/base.c: Mark that there is not any data
	  waiting whenever we cleanup the private channel structures.
	  Issue: DAHDI-42

	* drivers/dahdi/dahdi-base.c: DAHDI should always make data
	  received from the PSTN available to user mode immediately. Only
	  allow the transmit buffering policy to be changed in order to
	  reduce the chance of underruns to the PSTN.

2008-09-30 20:29 +0000 [r5017]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Removing references to setup_timer
	  in pre 2.6.18 kernels.

2008-09-29 Shaun Ruffell <sruffell@digium.com>

	* dahdi-linux 2.0.0 released.

2008-09-28 17:29 +0000 [r5002-5007]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctdm.c: Improve reliablity of UK caller ID for the
	  TDM400P by not allowing the ringdebounce to be decremented when
	  it is at 0 already. Related to issue #12531. Reported mattbrown,
	  fix suggested by benbrown.

	* drivers/dahdi/wcte12xp/base.c: Fixed type of flags parameter to
	  spin_lock_irqsave functions. Fixes compilation issues on
	  platforms where int and long do not have the same size. Closes
	  Issues #0013575. Reported by Ulmo.

	* drivers/dahdi/dahdi_echocan_kb1.c,
	  drivers/dahdi/dahdi_echocan_mg2.c, drivers/dahdi/dahdi-base.c,
	  drivers/dahdi/dahdi_echocan_sec.c,
	  drivers/dahdi/dahdi_echocan_sec2.c: Fixes failure of modular echo
	  cancelers in DAHDI. Reported by lots of people, fix suggested by
	  mattf.

2008-09-26 03:20 +0000 [r4990]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/dahdi-base.c: The channel master should not be set
	  to 0, but rather should be 'cleared' by setting the channel to be
	  it's own master. (related to issue 11611)

2008-09-25 16:50 +0000 [r4979-4986]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/firmwares/FPGA_1151.hex: XPP firmware: Only
	  send out CAS D-channel messages when in CAS mode.

	* drivers/dahdi/xpp/init_card_3_30,
	  drivers/dahdi/xpp/card_global.c,
	  drivers/dahdi/xpp/init_card_1_30,
	  drivers/dahdi/xpp/init_card_2_30: Fix display of indirect
	  registers and streamline their setting. * This commit fixes
	  display of indirect registers through the chipregs (formly
	  "slics") procfs file. Only the low byte was displayed. * It also
	  deprecates previous {RW}S in favour of {RW}I. The prevois style
	  is still allowed but deprecated, and thus previous scripts will
	  still work.

	* drivers/dahdi/xpp/card_fxo.c: XPP FXO: Add caller-id workaround
	  for ESTI-DTMF (for #9096) * Also rename the CID_STYLE_* constants
	  to formal names.

2008-09-24 06:15 +0000 [r4971]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Adding back in the mode module
	  parameter for the wctc4xxp driver. This is primarily used to
	  increase the number of channels available when only transcoding
	  to/from g729 by setting it to 'g729'.

2008-09-18 21:23 +0000 [r4957]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c: Adding a needed header for the
	  in_atomic call.

2008-09-18 21:23 +0000 [r4956-4957]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wcte12xp/base.c, drivers/dahdi/dahdi-base.c:
	  close_channel is called with a spin_lock held, which means that
	  GFP_KERNEL can not be used for the memory allocations down that
	  call path. Have allocations in this call path check if they are
	  in atomic context and use the appropriate flags. Issue: DAHDI-195

2008-09-17 19:07 +0000 [r4917-4930]  Shaun Ruffell <sruffell@digium.com>

	* README: Just moved a note into it's own paragraph so that
	  asciidoc can make the appropriate callout.

	* README: Added a note about installing support for the B410P in
	  the installation section of the README file.

	* drivers/dahdi/dahdi-base.c: Turn off reference counting on the
	  echo canceller modules in order to prevent misconfigurations from
	  preventing the drivers from unloading. NOTE: This is only a
	  temporary workaround, since it also means that the echocanceller
	  can be unloaded by an administrator while in use, which would
	  most likely result in a kernel oops. Related to issue #13504.

2008-09-15 20:49 +0000 [r4905-4909]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctdm.c, drivers/dahdi/dahdi-base.c: Edit some
	  comments and error strings. Issue: DAHDI-13

	* drivers/dahdi/wcte12xp/vpmadt032.c,
	  drivers/dahdi/wctdm24xxp/base.c: Fixed two typos.

2008-09-11 23:00 +0000 [r4894-4900]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/dahdi-base.c: Fix a type used in nethdlc mode, as
	  pointed out in #13427 .

	* drivers/dahdi/xpp/xpp.rules (added), Makefile: Move udev rules
	  xpp.rules from dahdi-tools to dahdi-linux .

2008-09-08 Russell Bryant <russell@digium.com>

	* dahdi-linux version 2.0.0-rc4 released.

2008-09-06 20:27 +0000 [r4868-4870]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/dahdi-base.c: Fix buglet in #define for 2.6.9

	* drivers/dahdi/wct4xxp/base.c: Revert unnecessary default hardhdlc
	  mode from 56K to 64K

	* drivers/dahdi/wct4xxp/base.c, drivers/dahdi/dahdi-base.c: Fix
	  class_simple on old 2.6.9 kernels

2008-09-04 21:42 +0000 [r4865]  Matthew Fredrickson <creslin@digium.com>

	* include/dahdi/fasthdlc.h: Some picky switches require the LSB to
	  be 1 for 56k links

2008-09-04 21:29 +0000 [r4861-4864]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wct4xxp/base.c: Remove a couple of 'magic numbers'
	  to make it clear all the ports of the framer should be
	  configured.

	* drivers/dahdi/wct4xxp/base.c: Fixes an issue where the dual-span
	  cards are not properly configured which can cause data loss. Fix
	  provided by opticron and possibly related to issue #0013393.

2008-08-29 21:46 +0000 [r4856]  Matthew Fredrickson <creslin@digium.com>

	* drivers/dahdi/dahdi-base.c: Remove useless kzalloc

2008-08-27 17:12 +0000 [r4848-4849]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi_dummy.c: remove some more ztdummy references

	* drivers/dahdi/wcfxo.c, drivers/dahdi/wcte12xp/base.c,
	  drivers/dahdi/wct4xxp/base.c, drivers/dahdi/wcte11xp.c,
	  drivers/dahdi/wct1xxp.c, drivers/dahdi/wctc4xxp/base.c,
	  drivers/dahdi/wctdm.c, drivers/dahdi/wctdm24xxp/base.c, README: a
	  bit of attribution cleanup

2008-08-27 16:48 +0000 [r4847]  Jason Parker <jparker@digium.com>

	* Makefile: Set a list of headers to install/uninstall, so the
	  lists don't get out of sync (note the previously missing
	  fasthdlc.h in the uninstall-include target)

2008-08-26 13:04 +0000 [r4829-4841]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* Makefile: "docs" target to generate documentation. Generate docs
	  with asciidoc.

	* drivers/dahdi/xpp/README.Astribank: Fix asciidoc.

	* Makefile: Don't try to clean modules if there's no kernel source
	  available (like in Zaptel).

	* README: Reverting unwanted changes in the README (from r4830)
	  Also fixed ZT references in the ABI compatibility section. The
	  numerical ioctl values need to be recalculated, though.

	* README: Make the README file more relevant to modules.

	* drivers/dahdi/Kbuild, Makefile: Support MODULES_EXTRA and
	  SUBDIRS_EXTRA to add extra modules from the make command line.

2008-08-25 17:50 +0000 [r4828]  Jason Parker <jparker@digium.com>

	* Makefile: Make sure we remove headers that we installed in
	  install-include

2008-08-25 14:54 +0000 [r4823]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Remove this warning, which could
	  occur if the driver is loaded on a system without a wctc4xxp, and
	  then subsequently unloaded.

2008-08-24 05:53 +0000 [r4817]  Matthew Fredrickson <creslin@digium.com>

	* include/dahdi/user.h, include/dahdi/kernel.h,
	  drivers/dahdi/dahdi-base.c, include/dahdi/fasthdlc.h: Add support
	  for 56 KB HDLC as well as selectable rate via ioctl

2008-08-20 22:20 +0000 [r4805]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi_dynamic.c: use the new separate allocation
	  method for channel structures here too replace "ZTD" references
	  in channel/span names with "DYN" (closes issue #13302) Reported
	  by: KNK

2008-08-20 Kevin P. Fleming <kpfleming@digium.com>

	* dahdi-linux version 2.0.0-rc3 released.

2008-08-20 22:20 +0000 [r4801-4805]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi_dynamic.c: use the new separate allocation
	  method for channel structures here too replace "ZTD" references
	  in channel/span names with "DYN" (closes issue #13302) Reported
	  by: KNK

	* drivers/dahdi/dahdi_dynamic.c: update code to match version in
	  Zaptel

	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/wcte12xp/vpmadt032.c,
	  drivers/dahdi/wctdm24xxp/base.c,
	  drivers/dahdi/wctdm24xxp/GpakApi.c, drivers/dahdi/dahdi-base.c,
	  drivers/dahdi/wctdm24xxp/GpakCust.c: improve compatibility with
	  2.6.26 and 2.6.27 kernels (closes issue #13253) Reported by:
	  raiden Patches: zap-dev.patch uploaded by smurfix on issue #13277
	  (license 547) zap-sema.patch uploaded by smurfix on issue #13277
	  (license 547)

2008-08-20 19:31 +0000 [r4798]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Change to support both 5.3kbps and
	  6.3kbps bit rates when using the G723.1 codec.

2008-08-19 20:49 +0000 [r4795]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/firmware/Makefile: port over improvements to
	  firmware Makefile from Zaptel

2008-08-19 20:25 +0000 [r4791-4794]  Shaun Ruffell <sruffell@digium.com>

	* drivers/dahdi/wctc4xxp/base.c: Fixed calculation of the
	  timestamp.

	* include/dahdi/kernel.h, drivers/dahdi/dahdi_transcode.c,
	  drivers/dahdi/wctc4xxp/base.c: Couple of fixes for the
	  transcoder: - In dahdi_transcode.c, Embed the identifiation
	  number, assigned sequentially when the transcoders are
	  registered, in the transcoder structure. This allows
	  DAHDI_TC_GETINFO to work as expected even though the transcoders
	  are rotated on the list in order to spread the load. - In
	  wctc4xxp, fix bug where all transcoders are named tc400b0.

2008-08-18 23:24 +0000 [r4788]  Kevin P. Fleming <kpfleming@digium.com>

	* Makefile: minor cleanups, and allow DAHDI_BUILD_ALL to be
	  overriden on the command line

2008-08-14 21:37 +0000 [r4776-4784]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/.version, drivers/dahdi/xpp/Changelog_xpp: Set
	  xpp version to 6056 and reset XPP changelog.

	* drivers/dahdi/xpp/firmwares/Makefile (added), Makefile: Also
	  install Astribank firmwares and init scripts to /usr/share/dahdi
	  .

	* drivers/dahdi/xpp/card_fxo.c: xpp: FXO: display signed voltage
	  values (from xpp r6055) This is only an issue with the displayed
	  value. In case you wondered why you have battery voltage of more
	  than 220V.

2008-08-14 01:09 +0000 [r4773]  Kevin P. Fleming <kpfleming@digium.com>

	* drivers/dahdi/dahdi_transcode.c: remove devfs support, and use
	  consistent include file path

2008-08-13 21:04 +0000 [r4770]  Doug Bailey <dbailey@digium.com>

	* drivers/dahdi/wctdm24xxp/wctdm24xxp.h,
	  drivers/dahdi/wctdm24xxp/base.c: import the neon mwi detection

2008-08-11 16:22 +0000 [r4758-4761]  Tzafrir Cohen <tzafrir.cohen@xorcom.com>

	* drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_bri.c,
	  drivers/dahdi/xpp/firmwares/FPGA_1151.hex,
	  drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_global.c,
	  drivers/dahdi/xpp/xbus-pcm.c: xpp: CAS/E1 support in the PRI
	  module, and minor fixes. * Add support for CAS in the PRI module.
	  Use firmware rev. 5975. * Debugging parameter pcmtx_chan now
	  accepts a dahdi channel number. * Do initialize a reserved
	  protocol field (card_global). * The name DAHDI as used in
	  proc/xpp/sync has 5 (not 6) letters. * Fix DTMF "channel leak"
	  regression in the FXS module.

	* drivers/dahdi/xpp/card_fxo.c: xpp: fxo: Fix support for
	  CID_STYLE_PASS_ALWAYS

	* drivers/dahdi/xpp/Kbuild: A more robust test for bri_dchan
	  support.

	* drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/xpp_dahdi.c: xpp_blink
	  is a bit mask of ports, and not boolean anymore.

2008-08-08 Kevin P. Fleming <kpfleming@digium.com>

	* dahdi-linux version 2.0.0-rc2 released.

2008-08-07 20:21 +0000 [r4742]  Shaun Ruffell <sruffell@digium.com>:

	* drivers/dahdi/dahdi_transcode.c: Make sure types are same size on
	  64-bit machines.

2008-08-06 Kevin P. Fleming <kpfleming@digium.com>

	* dahdi-linux version 2.0.0-rc1 released.
