From 0cb7935cf1c164de2d1b0555ae3a9eb949ccde6b Mon Sep 17 00:00:00 2001 From: Shaun Ruffell Date: Tue, 12 Jul 2011 23:08:22 +0000 Subject: [PATCH] Importing files for 2.5.0-rc1 release. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/tags/2.5.0-rc1@10042 a0bf4364-ded3-4de4-8d8a-66a801d63aff --- .version | 1 + ChangeLog | 4639 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 4640 insertions(+) create mode 100644 .version create mode 100644 ChangeLog diff --git a/.version b/.version new file mode 100644 index 0000000..993f7cd --- /dev/null +++ b/.version @@ -0,0 +1 @@ +2.5.0-rc1 diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..7b045c3 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,4639 @@ +2011-07-12 18:15 +0000 [r10036-10038] Tzafrir Cohen + + * drivers/dahdi/xpp/firmwares/Makefile: xpp: install Octasic + frmware if it's there If the OCT6104E-256D.ima Octasic firmware + was downloaded to the build directory, install it over with the + rest of the firmware files. Signed-off-by: Tzafrir Cohen + + + * drivers/dahdi/xpp/xpp_dahdi.c: xpp: Demote notices for HWEC + create/free to debug Signed-off-by: Tzafrir Cohen + + + * drivers/dahdi/dahdi-base.c: dahdi: Add dynamic dahdi parameter + hwec_overrides_swec. If set to true (default) a HWEC, if + available on the channel, takes priority over any software + echocan configured in /etc/dahdi/system.conf. This has + historically been the default behavior in all released versions + of DAHDI that support module echocans. Otherwise, + hwec_overrides_swec is set to false, HWEC is chosen only via the + "echocanceller=hwec" directive. Signed-off-by: Shaun Ruffell + Signed-off-By: Tzafrir Cohen + Acked-By: Oron Peled + + +2011-07-07 13:43 +0000 [r10028] Tzafrir Cohen + + * build_tools/live_dahdi: live_dahdi: create asterisk in the live + tree Make sure you have etc/asterisk in the live tree before + generating configuration. Signed-off-by: Tzafrir Cohen + + +2011-07-05 17:23 +0000 [r10024] Shaun Ruffell + + * drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_events.c, + drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c: + oct612x: Eliminate some compiler warnings. Eliminate "large + integer implicitly truncated to unsigned type" warnings from + r10010. Signed-off-by: Shaun Ruffell + Acked-by: Doug Bailey Acked-by: Tzafrir + Cohen + +2011-07-04 14:05 +0000 [r10019-10022] Tzafrir Cohen + + * drivers/dahdi/xpp/card_fxs.c: xpp: xpd_fxs: ring_trapez parameter + This adds module parameter 'ring_trapez'. When set, the wave form + of the ring tone is set to be a trapezoid, rather than sine. Thus + making the ring stronger. This is a boolean parameter of the + module xpd_fxs. Takes effect at the beginning of the next ring. + Signed-off-by: Tzafrir Cohen + + * drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_bri.c: A + number of cases of testing for unsigned int < 0 Signed-off-by: + Tzafrir Cohen + + * drivers/dahdi/xpp/card_bri.c, drivers/dahdi/xpp/card_echo.c: xpp: + Eliminate "set but unused" compiler warnings. gcc 4.6 complains + about variables that are assigned values but then never used. + Signed-off-by: Shaun Ruffell Acked-By: + Tzafrir Cohen + + * drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xbus-core.c, + drivers/dahdi/xpp/xbus-core.h: xpp: add FXO HWEC quirks handling + In some cases the hardware echo canceller cannot be used. Mostly + related to an FXO module. * FXO module if the first module is BRI + or PRI * FXS module if the Astribank has another FXO, no PRI/BRI, + and is a sync slave. Signed-off-by: Oron Peled + Acked-By: Tzafrir Cohen + + +2011-07-01 15:45 +0000 [r10016-10017] Shaun Ruffell + + * drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Return NULL if there is + not a hardware EC on installed. r9943 enabled the presence of + hardware EC to be probed on a card. That change did not account + for wcb4xxp based cards that did not have a hardware echocan on + board. Signed-off-by: Shaun Ruffell + Acked-by: Tzafrir Cohen + + * drivers/dahdi/wct4xxp/base.c: wct4xxp: Add module parameter to + ignore rotary switch settings. The dual and quad span cards have + a rotary switch onboard which controls the order that cards + serviced by this driver are registered with the core of DAHDI. + This commit adds a module parameter 'ignore_rotary' which, when + set to 1, causes the driver to ignore the position of the rotary + switch and only consider the physical slot when registering with + DAHDI. Ignoring the rotary switch settings also permits the PCI + device to be bound and unbound from the driver at runtime since + registration with DAHDI no longer only happens when the module is + first initialized. By default, the rotary switch will still be + used to determine registration order. This commit does not change + the default behavior. Signed-off-by: Shaun Ruffell + + +2011-06-30 22:02 +0000 [r10010-10014] Tzafrir Cohen + + * build_tools/live_dahdi: Also loca xpd_echo in live_dahdi, if + available Signed-off-by: Tzafrir Cohen + + * drivers/dahdi/xpp/firmwares/FPGA_1161.hex, + drivers/dahdi/xpp/firmwares/USB_FW.hex: xpp: FPGA_1161 rev 9252, + USB_FW rev 8826: HWEC New Astribank II FPGA firmware and USB + firmwares that add support for the hardware echo canceller + module. Note that due to a bug in previous FPGA firmwares, an + Astribank with such older firmware and with a hardware echo + canceller module will not have any functioning audio at all. + Signed-off-by: Tzafrir Cohen + + * drivers/dahdi/xpp/init_card_5_30 (added), + drivers/dahdi/xpp/firmwares/Makefile: xpp: also install init + (non)script for xpd_echo + + * drivers/dahdi/oct612x/include/oct6100api/oct6100_defines.h, + drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_chip_open.c, + drivers/dahdi/oct612x/octdeviceapi/oct6100api/oct6100_api/oct6100_channel.c, + drivers/dahdi/oct612x/include/oct6100api/oct6100_channel_inst.h: + oct612x: Fixes for Octasic user space compilation: * Don't assume + a pointer diff is 16 bits only. * cOCT6100_INVALID_VALUE should + be used against 32 unsigned values * Make 3 constants adjustable + via '-Dmacro=value': - cOCT6100_INTERNAL_SUPER_ARRAY_SIZE - + cOCT6100_MAX_ECHO_CHANNELS - cOCT6100_MAX_MIXER_EVENTS + Signed-off-by: Oron Peled Signed-off-by: + Tzafrir Cohen Acked-by: Doug Bailey + Acked-by: Shaun Ruffell + + +2011-06-29 22:15 +0000 [r10000-10008] Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Fix typo in previous + commit for fastpickup mode. I failed to compile the commit + exactly as it was committed. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Add 'fastpick' + module parameter. When true / 1 the FXO port will use a shorter + off-hook calibration delay. This is sometimes necessary in order + to properly decode Type-II Caller ID information which is sent + shortly after an FXO port goes off hook. Defaults to 0 unless + opermode is "JAPAN" then it will default to 1. This functionality + was ported from the wctdm.c driver. DAHDI-854. Signed-off-by: + Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Ensure battery drops + on FXS hangups honor the channel otimer. If an FXS port is + configured to use kewl start signalling, when the FXS port is + "hungup" it should drop battery for 500ms so that any attached + devices can detect that the remote side has disconnected. The + wctdm24xxp driver since version 2.4.0 was only dropping battery + for ~5-10 ms because it would set "open" on the line, but then + the next time it read the line feed register state, it was + setting the LINE feed register to the idle state. This change + checks if the line is forced open before setting the FXS port + back "onhook" so as to not turn on battery prematurely. This + fixes a regression introduced in r9070 "wctdm24xxp: Prevent FXS + Proslic staying in "Forward/Reverse OnHookTransfer...". + DAHDI-849. Checking for open on the line feed registered was + originally suggested by Alec Davis. Signed-off-by: Shaun Ruffell + + + * include/dahdi/user.h, include/dahdi/kernel.h: Revert "dahdi: Use + enumeration for maintenance modes." This reverts commit r9879. + Asterisk commit r264249 [1], which was committed after the switch + to enumerations, requires the maintenance modes to be Changing + the test in configure.ac from: AST_C_DEFINE_CHECK([DAHDI], + [DAHDI_RESET_COUNTERS], [dahdi/user.h], [230]) to: + AST_C_COMPILE_CHECK([DAHDI], [int foo = DAHDI_RESET_COUNTERS], + [dahdi/user.h]) Would allow the maintenance modes to stand as + enumerations but the potential for users to run incompatible + versions does not seem worth it at this point. [1] + http://svnview.digium.com/svn/asterisk?view=revision&revision=264249 + Signed-off-by: Shaun Ruffell Acked-by: Russ + Meyerriecks + +2011-06-28 22:29 +0000 [r9997-9998] Russ Meyerriecks + + * drivers/dahdi/voicebus/vpmoct.c, drivers/dahdi/wcte12xp/base.c, + drivers/dahdi/voicebus/vpmoct.h, drivers/dahdi/wctdm24xxp/xhfc.c, + drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c, + drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp, wctdm24xxp: Load + VPMOCT032 firmware in background. The firmware load has been + moved into a workqueue to prevent the module load from blocking + for the duration of the firmware upload. This could be up to 40 + seconds. Driver prevents configuration until firmware load is + finished and is_initialized() returns true. Signed-off-by: Russ + Meyerriecks Signed-off-by: Shaun + Ruffell + + * drivers/dahdi/voicebus/vpmoct.c (added), + drivers/dahdi/wcte12xp/base.c, drivers/dahdi/firmware/Makefile, + drivers/dahdi/voicebus/Kbuild, drivers/dahdi/voicebus/vpmoct.h + (added), drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c, + drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp, wctdm24xxp: Add + support for the VPMOCT032 hardware echocanceler. Support enabled + for the vpmoct032 echo cancellation module for the wctdm24xxp and + wcte12xp drivers. Signed-off-by: Russ Meyerriecks + Signed-off-by: Shaun Ruffell + + +2011-06-28 21:29 +0000 [r9995] Shaun Ruffell + + * drivers/dahdi/dahdi-base.c: dahdi: Always attach hwec to a + channel if available. In previous releases of DAHDI if dahdi_cfg + attached a software echocan to a channel and a hardware echocan + was available, the hardware echocan would be used instead of the + software echocan. Since the 2.4 branch was created a new feature + was merged into dahdi-linux where it was possible to mix software + echocan and hardware echocan on a channel. This required using + "hwec" as the echocan in the /etc/dahdi/system.conf file so that + what was specified in the configuration file is what was actually + used. This has resulted in users upgrading to the trunk of dahdi + without updating their /etc/dahdi/system.conf file and just + suddenly not using any hardware echocans any longer. The + capability to mix software and hardware echocans on a span will + be revisted when running dahdi_cfg on any preexisting + configuration files doesn't just silently turn off hardware + echocan. Signed-off-by: Shaun Ruffell + +2011-06-28 18:23 +0000 [r9993] Tzafrir Cohen + + * drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/card_fxo.c, + drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/card_fxs.c, + drivers/dahdi/xpp/Kbuild, drivers/dahdi/xpp/xproto.c, + drivers/dahdi/xpp/xpp_debug, drivers/dahdi/xpp/xbus-pcm.c, + drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/xpp/xpd.h, + drivers/dahdi/xpp/xproto.h, drivers/dahdi/xpp/xbus-pcm.h, + drivers/dahdi/xpp/xpp_dahdi.h, drivers/dahdi/xpp/card_bri.c, + drivers/dahdi/xpp/xbus-core.c, drivers/dahdi/xpp/card_echo.c + (added), drivers/dahdi/xpp/card_echo.h (added), + drivers/dahdi/xpp/xbus-core.h: xpd_echo: XPP Octasic echo + canceler module * xpd_echo (card_echo.c) - a module to handle an + Astribank hardware echo canceller module. * All other XPDs are + now of type 'telephony_device'. Only a telephony device XPD + provides a span to register. * The EC module will typically show + up as XPD-40 and will always show up as Unregistered in + 'dahdi_hardware -v' Signed-off-by: Oron Peled + Signed-off-by: Tzafrir Cohen + + +2011-06-28 15:55 +0000 [r9989-9991] Shaun Ruffell + + * drivers/dahdi/dahdi-base.c: Revert "dahdi: Group dahdi timers + into "rates" for improved CPU utilization." This reverts commit + r9891 and is part of two commits to revert all the timer changes. + Grouping the timer into rates did not allow a timers rate to be + changed after another thread is already blocked on the poll call + The problem that was reported was if a sip call was made to a + DAHDI channel and the sip call was disconnected before answer, + the DAHDI channel would never stop rining. Signed-off-by: Shaun + Ruffell Acked-by: Russ Meyerriecks + + + * drivers/dahdi/dahdi-base.c: Revert "dahdi: If a timer is not + configured then we should block indefinitely." This reverts + commit r9937 and is part of two commits to revert all the timer + changes. Grouping the timer into rates did not allow a timers + rate to be changed after another thread is already blocked on the + poll call Signed-off-by: Shaun Ruffell + Acked-by: Russ Meyerriecks + + * include/dahdi/kernel.h: kernel.h: Define __packed if not already + defined. Linux kernel v2.6.22 introduced the __packed macro to + allow the gcc specific __attribute__((packed)) extension to be + overridden if required and checkpatch.pl will complain if you + don't use it. For some strange reason gcc doesn't complain when + you use non-existant decorators. Signed-off-by: Shaun Ruffell + Signed-off-by: Russ Meyerriecks + + +2011-06-20 16:01 +0000 [r9981] Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: Start alarm timer after + marking board initialized. r9946, "wcte12xp: Move the VPMADT032 + test/configuration to module load time." introduced a race + condition where it was possible for the timer that initiates the + check for the alarms to fire before the board was marked + initialized. This would result in a board that would never again + check it's alarm state since the first time the timer runs + INITIALIZED may not be set and it will not reschedule a check + since it believes the driver is unloading. This happened because + the check for the VPM was moved between when the timer was first + setup and when INITIALIZED was then set. Now we make sure + INITIALIZED is set before the timer is first setup, and move + those two operations together. Signed-off-by: Shaun Ruffell + Acked-by: Russ Meyerriecks + + +2011-06-11 01:58 +0000 [r9977] Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Do not read extra + register when test for FXO module fails. In commit r9968 + "wctdm24xxp: Allow more than one outstanding read at a time" I + introduced a regression where the transmit FIFO on the data + channel of a B400M could get locked up. The result would be + constant HDLC overflows when writing to the data channel. This + regression did not make it into any releases and did not exhibit + itself when crossing spans on a single B400M module. This is a + partial revert of commit r9968. Signed-off-by: Shaun Ruffell + + +2011-06-02 20:04 +0000 [r9928-9971] Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Do not export board + number in the device description. The board number dupliates the + information that is available in the location field. Exporting it + as part of the description makes the name dependent on the driver + bind order which is not desirable. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Calculate the SPI + offsets ahead of time. Updates the CMD_BYTE macro to use + precalculated offsets. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Shorten up some of + the sleeps/waits. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Allow more than one + outstanding read at a time. Since every read needs to go through + the complete voicebus pipeline, if we know we're going to read + multiple bytes we can queue them all up. Signed-off-by: Shaun + Ruffell + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: reglock can be used + to protect the txhookstate. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Use lists for SPI + commands to the modules. Saves time in the interrupt handler by + eliminating the need to scan through all of the slots in the cmd + arrays. Also allows the reads from ISR context to automatically + grow as the latency grows. This ensures that battery and hook + state is actually checked every frame like originally intended. + Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Cleanup in + wctdm_identify_modules. Trivial reformatting that preps it for + some parallelizing the module loads. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Remove 'pos' member + from 'struct wctdm'. The card position is only used during + startup so we don't need to carry it around in the strucuture. + Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Drop 'flags' from + 'struct wctdm_module'. The voicebus cards only support the S110M + FXS modules which are based on the 3215. The module flags member + was only used to hold whether we were dealing with a 3210 or 3215 + SLIC, so we can drop it since we always know we'll have a 3215 + based SLIC. Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/base.c, + drivers/dahdi/voicebus/GpakCust.h: wctdm24xxp: Hold the reglock + longer in the interrupt handler. Cuts down on the overhead of + constantly saving and restoring the interrupt registers. + Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/xhfc.c, + drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/wctdm24xxp/xhfc.h: + wctdm24xxp: Pass the pointer to struct wctdm_module directly + instead of index. This change gets all the easy places and saves + on array dereferences when we already have the address of the + module that we are interested in. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Use pointer to + "struct fxs" in POLARITY_XOR. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Trivial. Reduce the + indentation level in wctdm_proslic_oppending. Signed-off-by: + Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/xhfc.c, + drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Use enumeration for + module types. This change is to primarily to clarify that the + types are always mutually exclusive. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Group the QRV + members together. This also allows us to add them to the union + with the other module types so they do not add to the memory + usage if there aren't any QRV modules installed. Signed-off-by: + Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/xhfc.c, + drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Group the per-module + information together Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Dynamically allocate + the board_name. Move the data backing the mostly unused string + away from the active members of 'struct wctdm'. The location + where some of the other members of 'struct wctdm' are initialized + were moved so that wctdm_back_out_gracefully always has a fully + formed structure to work on. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Remove modmap member + from 'struct wctdm'. We can already use the module type to + determine presence of a module to check. This also moves the + background polling of the modules until after the board is + completely initialized because the module type may change while + the different types are being probed. This also means that we + need to preset the shadow registers for the FXS because otherwise + the shadow register will not have been read before the first time + it's checked for a power alarm. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/wcte12xp.h: + wcte12xp: Limit how many consecutive times to reset the VPMADT032 + module. Both limit the amount of junk in the kernel log and also + prevent dahdi_cfg from running indefinitely if there is a module + with a hardware problem which prevents it from completing the + startup sequence. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wcte12xp/wcte12xp.h: wcte12xp: Remove unused vpm100 + member from 'struct t1' Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c, + drivers/dahdi/voicebus/GpakCust.c, + drivers/dahdi/voicebus/GpakCust.h: wcte12xp, wctdm24xxp: Separate + test for VPMADT032 and initialization. Part of increasing system + startup speed. Splitting these two operations facilitate checking + if there is a module present synchronously on driver load from + the actual load of the firmware and configuration of the + channels. This will allow the presence of the VPM module to be + flagged on the span before registration, but load and + configuration can happen in the background. When the modules are + eventually loaded via udev, there will be enough time from the + time the drivers are loaded to when dahdi_cfg will run to + complete the firmware load, eliminating the need to block the + driver here. Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wctdm24xxp/base.c, + drivers/dahdi/voicebus/GpakCust.c, + drivers/dahdi/voicebus/GpakCust.h: wcte12xp, wctdm24xxp: Use a + constant string for the VPM workqueue name. In my opinion naming + the VPM workqueues for each board is not worth the extra + complexity. Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: Set the t1.vpmadt032 + pointer under the reglock. Ensures that a single run of the + interrupt service routine is consistent about whether there are + VPMADT032 commands to process or not. Signed-off-by: Shaun + Ruffell + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: Put "Span configured" + message behind debug flag. This message also duplicates what is + in the /etc/dahdi/system.conf file and should only be necessary + when troubleshooting problems. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: kmalloc/memset -> + kzalloc. This is trivial cleanup. Fixing up a couple of places + that followed a kmalloc with a memset to 0 and also sneaked in + one ARRAY_SIZE usage change. Signed-off-by: Shaun Ruffell + + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: Move the VPMADT032 + test/configuration to module load time. The firmware load of the + VPMADT032 was moved to startspan because a quad-span card in the + same system would would lock interrupts for several seconds to + load VPMOCT064/128 firmware. Now that the wct4xxp driver no + longer locks interrupts while loading its VPM module this driver + can move the VPMADT032 check/load back to module load time. This + is also required so that the presence of a hardware echo canceler + is marked on the span before it is registered with dahdi-base.c. + Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wcte12xp/wcte12xp.h: + wcte12xp: Force spanconfig/chanconfig to wait for ready. This is + always true currently but will not necessarily be in the future. + Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wctdm24xxp/xhfc.c, + drivers/dahdi/wctdm24xxp/wctdm24xxp.h, + drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Block chanconfig and + spanconfig until board is ready. Currently the board will always + be ready if the module initialization function is complete but + this change will facilitate allowing some of the more time + consuming configuration steps to happen in parallel on system + start. Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/base.c, + drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/dahdi-base.c: + dahdi: Do not allow 'hwec' to be attached to channels that do not + have one. This defines a NULL value for the name of an echocan as + invalid. This will allow dahdi_genconf to probe for the presence + of a hardware echocan on a channel by trying to attach one. If + there is not a hardware echocan available DAHDI_ATTACH_ECHOCAN + ioctl will return -EINVAL if 'hwec' was specified as the name of + the echo canceler now. Signed-off-by: Shaun Ruffell + Acked-by: Tzafrir Cohen + + + * include/dahdi/kernel.h, drivers/dahdi/dahdi-base.c: dahdi: + Provide notification when preechocan buffer is created and + destroyed. Not quite ideal, but this seems to be the most + straightforward way to know when someone is trying to monitor the + preec stream on a channel. This callback allows the board driver + providing the span an opportunity to setup the hardware preecho + monitoring as needed. Signed-off-by: Shaun Ruffell + Acked-by: Tzafrir Cohen + + + * include/dahdi/kernel.h, drivers/dahdi/dahdi-base.c: dahdi: Update + the dahdi_ec_chunk interface to support preec streams. + dahdi_ec_chunk is the function that saves the received audio and + places a signed linear copy of it in the pre echocanceled buffer + on the channel. By splitting the input and output of this + function into two parameters, a driver that can provide separate + pre and post ec streams can pass them independently to DAHDI, + without worrying about DAHDI overwriting a stream that may have + already been echocanceled by the hardware. Previously, the + dahdi_ec_chunk interface took a received audio buffer and + overwrote it after canceling the echo. Now the input and output + from the function are broken up in order to support hardware + echocans that have a different preechocan stream. Signed-off-by: + Shaun Ruffell Acked-by: Tzafrir Cohen + + + * drivers/dahdi/tor2.c, drivers/dahdi/wcte12xp/base.c, + drivers/dahdi/wcb4xxp/base.c, drivers/dahdi/xpp/card_pri.c, + include/dahdi/kernel.h, drivers/dahdi/wct4xxp/base.c, + drivers/dahdi/wctdm24xxp/xhfc.c, drivers/dahdi/wcte11xp.c, + drivers/dahdi/xpp/card_bri.c, drivers/dahdi/dahdi_dynamic.c, + drivers/dahdi/wct1xxp.c, drivers/dahdi/dahdi-base.c, + drivers/dahdi/wctdm24xxp/xhfc.h: dahdi: Allow + dahdi_span_ops.[chan|span]config and startup to block. This + change ensures that the dahdi_span_ops callbacks are not called + with any spinlocks held, and that the module is pinned in memory, + and also passes the struct file * pointer to the callbacks. + Passing the file pointer to the callbacks allows the board + drivers to check any flags on the file descriptor used to + configure the span/channel. The intent here is to allow + dahdi_config to open the /dev/dahdi/ctl file in a non-blocking + mode in case there is a lengthy processes that needs to happen as + part of configuration. Signed-off-by: Shaun Ruffell + Acked-by: Tzafrir Cohen + + + * drivers/dahdi/dahdi-base.c: dahdi: Do not release the echocan + under lock. This allows any echocan cleanup to block if + necessary. Especially useful for hardware echocans that may need + to wait for hardware to complete the cleanup process. + Signed-off-by: Shaun Ruffell Acked-by: + Tzafrir Cohen + + * include/dahdi/kernel.h: dahdi: Support "struct mutex" on pre + 2.6.16 kernels. 'struct mutex' was introduced in 2.6.16. While + DAHDI previously allowed statically allocated mutexes, this + change is required in order to allow mutexes to be embedded in + dynamically allocated structures on older kernels. Signed-off-by: + Shaun Ruffell Acked-by: Tzafrir Cohen + + + * drivers/dahdi/dahdi-base.c: dahdi: If a timer is not configured + then we should block indefinitely. Some older Asterisk versions + do not handle well the error message when poll is called on an + unconfigured channel. The result would be constant __ast_read: + No/unknown event '0' on timer for 'DAHDI/1-1'? messages from + Asterisk. Signed-off-by: Shaun Ruffell + Acked-by: Tzafrir Cohen + + * drivers/dahdi/dahdi-base.c: dahdi: Make tone zone registration + messages debug only. This duplicates information that is already + in the /etc/dahdi/system.conf file and should normally only be + necessary for the user when debugging problems. Signed-off-by: + Shaun Ruffell Acked-by: Tzafrir Cohen + + + * drivers/dahdi/dahdi-base.c: dahdi: Propagate shutdown returncode + to user space. This change fixes a condition where 'dahdi_cfg -s' + would always return success regardless of whether a board driver + was able to complete the shutdown. Only impacts board drivers + that implemented the shutdown span callback. Signed-off-by: Shaun + Ruffell Acked-by: Tzafrir Cohen + + + * drivers/dahdi/dahdi-base.c: dahdi: Fix compilation on Linux + 2.6.26 w/CONFIG_DAHDI_NET. The hdlc_stats function was removed + from the mainline kernel in commit + 198191c4a7ce4daba379608fb38b9bc5a4eedc61 [1] which was first + released in linux 2.6.27. [1] + http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=198191c4a7ce4 + (closes issue #19354) Reported by: biohumanoid Signed-off-by: + Shaun Ruffell Acked-by: Tzafrir Cohen + + + * drivers/dahdi/wct4xxp/base.c: wct4xxp: Move the check for the VPM + to module load time. This allows dahdi-base to know whether or + not there is a VPM attached to the module as soon as it's + registered as opposed to waiting for start span. This will + simplify dahdi_genconf's task of creating a valid configuration + file. Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wct4xxp/base.c: wct4xxp: Do not set maintstat in + t4_clear_maint. If we always set maintstat to DAHDI_MAINT_NONE, + dahdi_base will lose track of what it thinks the current state of + the span is. For example, if you run $ dahdi_maint -s 1 + --loopback localhost When t4_clear_maint is called, the current + maintenance mode state, 'maintstat', is set to DAHDI_MAINT_NONE. + So the next time you call: $ dahdi_maint -s 1 --loopback off + dahdi-base.c will believe that the user is trying to set the + maintenance state from DAHDI_MAINT_NONE to DAHDI_MAINT_NONE and + will not actually do anything. Signed-off-by: Shaun Ruffell + Acked-by: Russ Meyerriecks + + + * drivers/dahdi/wct4xxp/base.c: wct4xxp: Atomically set framer bits + for maintenance modes. Do not allow the interrupt handler or + another CPU to change the value between when we get the initial + value and when we write the modified value. Also includes a minor + formatting fix where braces were not aligned, and remove 'inline' + from t4_framer_in and t4_framer_out definitions. Signed-off-by: + Shaun Ruffell Acked-by: Russ Meyerriecks + + + * drivers/dahdi/wct4xxp/Kbuild: wct4xxp: Set + -Wno-unused-but-set-variable compiler option if available. Turn + this option on for the entire wct4xxp driver in order to quiet + the warnings in the oct612x source files. These files are from a + vendor drop and the goal is to limit the deviations from the + vendor if possible. Signed-off-by: Shaun Ruffell + Acked-by: Tzafrir Cohen + + + * drivers/dahdi/tor2.c, drivers/dahdi/xpp/xpp_usb.c, + drivers/dahdi/wcte12xp/base.c, drivers/dahdi/wct4xxp/vpm450m.c, + drivers/dahdi/xpp/card_pri.c, drivers/dahdi/wct4xxp/base.c, + drivers/dahdi/xpp/card_fxo.c, drivers/dahdi/wctc4xxp/base.c, + drivers/dahdi/wctdm24xxp/base.c, drivers/dahdi/xpp/card_fxs.c, + drivers/dahdi/xpp/xpp_dahdi.c, drivers/dahdi/wcb4xxp/base.c, + drivers/dahdi/wctdm24xxp/xhfc.c, drivers/dahdi/xpp/card_bri.c, + drivers/dahdi/wctdm.c, drivers/dahdi/xpp/xbus-core.c, + drivers/dahdi/dahdi-base.c: Remove unused variables. gcc-4.6 now + warns about variables that are set but never used. Clean up + unused variables everywhere except the oct612x subdirectory. The + oct612x should go in a separate patch in case that needs to be + pulled out into a separate project again. Signed-off-by: Shaun + Ruffell Acked-by: Tzafrir Cohen + + + * include/dahdi/kernel.h, drivers/dahdi/wctdm24xxp/base.c: + wctdm24xxp: Check if the FXS signaling setting is valid. + Signed-off-by: Shaun Ruffell + +2011-05-31 13:11 +0000 [r9925] Tzafrir Cohen + + * drivers/dahdi/xpp/xbus-core.c: xpp: empty labels are not + duplicate Some older Asttribanks had an empty label string. They + should be ignored when testing for a duplicate label at device + probe time. While we're at it, reduce panic level in the notice. + Signed-off-by: Tzafrir Cohen + +2011-05-23 13:38 +0000 [r9916-9917] Tzafrir Cohen + + * drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/card_bri.c, + drivers/dahdi/xpp/xbus-sysfs.c, drivers/dahdi/xpp/xbus-core.c, + drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/xpp_log.h + (removed): xpp: Remove obsolete XPP_DEBUGFS code XPP_DEBUGFS code + was some code used to send BRI D-Channel data through debugfs + for, well, debugging. Unused in recent years. Time to remove. + + * drivers/dahdi/xpp/xpd.h, drivers/dahdi/xpp/xpp_dahdi.c, + drivers/dahdi/xpp/card_pri.c, drivers/dahdi/xpp/xbus-core.c, + drivers/dahdi/xpp/Kbuild, drivers/dahdi/xpp/card_global.c, + drivers/dahdi/xpp/xbus-core.h, drivers/dahdi/xpp/card_global.h, + drivers/dahdi/xpp/xbus-pcm.c: xpp: Remove obsolete and unused + OLD_PROC code OLD_PROC marked old and unused code that was used + for writing to procfs. It has long ago been replaced with + different sysfs interfaces. Time to remove it. + +2011-05-19 21:53 +0000 [r9914] Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: Fix regression + preventing VPMADT032 from loading. Commit r9781, "wcte12xp, + wctdm24xxp: Remove unused support for booting VPMADT032 from + SPI", introduced a bug that would prevent the VPMADT032 from ever + being able to complete its startup. This regression did not make + it to any releases. Signed-off-by: Shaun Ruffell + + +2011-04-25 14:22 +0000 [r9911-9912] Shaun Ruffell + + * drivers/dahdi/dahdi-base.c: dahdi: Enable DTMF A,B,C, and D + digits. This appears to be an old regression from zaptel r4063 + [1] that would prevent DAHDI from generating the A,B,C, and D + digits due to unintentional drop through on a case statement. [1] + http://svn.asterisk.org/view/zaptel?view=revision&revision=4063 + Signed-off-by: Shaun Ruffell + + * drivers/dahdi/wcb4xxp/base.c: wcb4xxp: Updating copyright. The + wcb4xxp driver was edited this year. Signed-off-by: Shaun Ruffell + + +2011-04-15 18:42 +0000 [r9905-9907] Kinsey Moore + + * drivers/dahdi/dahdi-base.c: dahdi: Bug fix for enabling buffer + events Introduced in rev 9905, this bug could cause buffer events + to become disabled if the kernel was unable to access userland + data. + + * include/dahdi/user.h, include/dahdi/kernel.h, + drivers/dahdi/dahdi-base.c: dahdi: Add capability to generate + events on buffer underruns and overruns Add BUFFEVENTS and + individual buffer event channel flags so that DAHDI can notify + userspace processes when it is dropping data. This can be useful + when trouble shooting fax problems since DAHDI currently silently + discards data becasuse of scheduling latency. With this change, + Asterisk could log an event as opposed to just leaving it up to + the tone detectors to figure out there was some unexpected phase + shift. Acked-by: Shaun Ruffell (original + patch by Matt Fredrickson) + +2011-04-14 19:11 +0000 [r9902] Shaun Ruffell + + * drivers/dahdi/wcte12xp/base.c: wcte12xp: If we cannot read the + mode selection pins fail the module load. Alexandre reported that + on a particular server he would get a server crash when loading + the wcte12xp driver after receiving a line about a timeout when + trying to read the mode selection jumpers. If the driver times + out when trying to read the mode selection bits there is a + serious problem and it should not try to continue on with + configuration / registration. Reported-and-Tested-by: Alexandre + Abreu Signed-off-by: Shaun Ruffell + + +2011-04-11 Shaun Ruffell + + * dahdi-linux version 2.4.1.2 released. + +2011-04-11 18:45 +0000 [r9895] Shaun Ruffell + + * include/dahdi/kernel.h: dahdi: Do not define dev_name if already + backported. RHEL 5.6 has backported dev_name in + include/dahdi/devices.h. We now need to check for a back ported + definition before defining our own version on pre 2.6.26 kernels. + (closes issue #18992) Reported by: ndupeux, AlexCeli Tested by: + elguero Signed-off-by: Tzafrir Cohen + Acked-by: Shaun Ruffell Origin: + http://svnview.digium.com/svn/dahdi?view=rev&rev=9894 + +2011-03-31 Shaun Ruffell + + * dahdi-linux version 2.4.1.1 released. + +2011-03-15 19:15 +0000 [r9828] Shaun Ruffell + + * wctdm24xxp: Fix regression with LEDS on TDM410. + +2011-03-03 Shaun Ruffell + + * dahdi-linux version 2.4.1 released. + +2011-02-11 17:52 +0000 [r9757-9760] Shaun Ruffell + + * 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 + 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 + Signed-off-by: Shaun Ruffell 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 + Acked-by: Kinsey Moore + Acked-by: Russ Meyerriecks Acked-by: + Tzafrir Cohen 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 + Acked-by: Tzafrir Cohen + Origin: + http://svnview.digium.com/svn/dahdi?view=rev&rev=9396 + +2011-02-10 16:29 +0000 [r9746-9755] Shaun Ruffell + + * 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 + 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 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 Origin: + http://svnview.digium.com/svn/dahdi?view=rev&rev=9750 + + * include/dahdi/kernel.h: dahdi: Add '#include ' + 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 + Signed-off-by: Shaun Ruffell + Origin: + http://svnview.digium.com/svn/dahdi?view=rev&rev=9697 + +2011-02-09 12:45 +0000 [r9745] Tzafrir Cohen + + * build_tools/live_dahdi: live_dahdi: Fix regression from r9508 + Signed-off-by: Tzafrir Cohen Origin: + http://svnview.digium.com/svn/dahdi?view=rev&rev=9532 + +2011-01-31 18:09 +0000 [r9723-9726] Shaun Ruffell + + * /: 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 Signed-off-by: Shaun + Ruffell 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 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 + Acked-by: Kinsey Moore + Acked-by: Russ Meyerriecks Acked-by: + Tzafrir Cohen 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 + + * 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 + + * /: 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 + Origin: + http://svnview.digium.com/svn/dahdi?view=rev&rev=9635 + + * README: README: clarify required kernel configuration + Signed-off-by: Tzafrir Cohen 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 Acked-by: Kinsey Moore + 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 Acked-by: + Kinsey Moore 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 + Acked-by: Kinsey Moore + 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 + 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 + 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 + Signed-off-by: Russ Meyerriecks + Acked-by: Kinsey Moore + 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 + Acked-by: Kinsey Moore + Acked-By: Russ Meyerriecks 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 Acked-by: Kinsey Moore + Acked-By: Russ Meyerriecks + 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 Acked-by: Kinsey Moore + Acked-By: Russ Meyerriecks + 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 + 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 Acked-by: + Angelos Varvitsiotis 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 + 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 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 + 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 + 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 + LKML-Reference: + <20100907125057.562399240@linutronix.de> Acked-by: Tzafrir Cohen + 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 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 Acked-by: Kinsey Moore + Acked-by: Russ Meyerriecks + 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 Acked-by: + Kinsey Moore Acked-by: Russ Meyerriecks + 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 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 Acked-by: Russ + Meyerriecks 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 Acked-by: Kevin P. Fleming + 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 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 + Acked-by: Kinsey Moore + Acked-by: Russ Meyerriecks 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 + Signed-off-by: Shaun Ruffell + 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 Signed-off-by: Shaun Ruffell + 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 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 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 + 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 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 + 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 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 + + * dahdi-linux version 2.4.0 released. + +2010-08-27 21:59 +0000 [r9204-9205] Shaun Ruffell + + * 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 + + + * 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 + +2010-08-24 18:44 +0000 [r9188] Russ Meyerriecks + + * 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 + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.4.0-rc1 released. + +2010-08-17 17:15 +0000 [r9144-9145] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * 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 + + + * 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 + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: 'is_span_digital' -> + 'dahdi_is_span_digital' Signed-off-by: Shaun Ruffell + + + * 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 + + +2010-08-12 19:38 +0000 [r9127] Matthew Fredrickson + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/dahdi-base.c: dahdi: Trivial spelling change. + +2010-08-05 21:05 +0000 [r9090] Tzafrir Cohen + + * 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 + + * 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 + + * README: Proper Mantis category to use + +2010-07-31 04:00 +0000 [r9059-9073] Alec L Davis + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wct4xxp/base.c: Make noburst parameter override + burst flag. + +2010-07-14 11:50 +0000 [r8872-8931] Tzafrir Cohen + + * 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 + + * 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 + + * drivers/dahdi/wcb4xxp/base.c: Extra PCI ID for Junghanns PCI-E + cards. + +2010-07-02 18:58 +0000 [r8849] Matthew Fredrickson + + * drivers/dahdi/wct4xxp/base.c: Add support for max_latency module + parameter in wct4xxp + +2010-06-30 20:23 +0000 [r8841] Matthew Fredrickson + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wctdm24xxp/base.c: wctdm24xxp: Do not access memory + after we free it. + +2010-05-24 16:55 +0000 [r8680] Shaun Ruffell + + * drivers/dahdi/hpec/dahdi_echocan_hpec.c: hpec: #include + Fix the same issue as in r8550 , for + dahdi_echocan_hpec.c: With kernel 2.6.34 an explicit '#include + ' is required for using kzalloc() and friends. + +2010-05-23 12:17 +0000 [r8673-8674] Tzafrir Cohen + + * 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 ' is required for using kzalloc() and friends. + + * drivers/dahdi/dahdi_transcode.c: A typo (lintian) + +2010-05-17 21:44 +0000 [r8653] Matthew Fredrickson + + * drivers/dahdi/wcb4xxp/base.c: Merge in pulse mask improvement + patch for B410P. + +2010-05-17 14:45 +0000 [r8641-8642] Shaun Ruffell + + * 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 + + * dahdi-linux version 2.3.0.1 released. + +2010-05-14 16:02 +0000 [r8621] Shaun Ruffell + + * 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 + + * /, drivers/dahdi/dahdi_echocan_jpah.c: missing #include: fixes + building with 2.6.34-rc5 With kernel 2.6.34-rc5 an explicit + '#include ' 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 + + * 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 + + * dahdi-linux version 2.3.0 released. + +2010-04-06 23:19 +0000 [r8473-8494] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * README: document the header line of /proc/dahdi/NN + +2010-03-23 21:56 +0000 [r8399-8400] Shaun Ruffell + + * 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 + + * dahdi-linux version 2.2.1.1 released. + +2010-03-10 17:04 +0000 Russ Meyerriecks + + * 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 + + * dahdi-linux version 2.2.1 released. + +2010-01-11 13:40 +0000 [r7844] Tzafrir Cohen + + * 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 + + * /, 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.2.0-rc5 released. + +2009-05-27 12:48 +0000 [r6659] Tzafrir Cohen + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * Makefile: Also install dahdi_config.h to /usr/include/dahdi + +2009-04-02 20:34 +0000 [r6301-6312] Tzafrir Cohen + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/dahdi_dynamic_loc.c: Fix a typo + +2009-03-17 17:59 +0000 [r6170-6191] Tzafrir Cohen + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wctc4xxp/base.c: Use the proper pci_device when + handling dma buffers. + +2009-02-10 14:07 +0000 [r5997] Matthew Fredrickson + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * include/dahdi/user.h: Minor comment rearangement to avoid + possible confusion. + +2009-01-28 04:41 +0000 [r5870] Shaun Ruffell + + * drivers/dahdi/wcb4xxp/base.c: Ensure the teignorered parameter is + exposed as a module parameter. Related to issue #14031 . + +2009-01-27 Shaun Ruffell + + * 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 + + * dahdi-linux version 2.1.0.3 released. + +2008-12-17 15:57 +0000 [r5535-5576] Shaun Ruffell + + * 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 + + * dahdi-linux version 2.1.0.2 released. + +2008-12-15 20:31 +0000 [r5534-5535] Shaun Ruffell + + * 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 + + * 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 + + * dahdi-linux version 2.1.0.1 released. + +2008-12-11 21:46 +0000 [r5509] Shaun Ruffell + + * include/dahdi/kernel.h: Add definition of dev_notice for kernels + < 2.6.17. + +2008-12-11 21:03 +0000 [r5498-5504] Tzafrir Cohen + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wctc4xxp/base.c: Fix compilation issues + on 2.6.15 and below kernels. Thanks tzafrir. + +2008-12-09 Shaun Ruffell + + * dahdi-linux version 2.1.0 released. + +2008-12-09 18:49 +0000 [r5453] Tzafrir Cohen + + * live_dahdi (added): live_dahdi - test dahdi without fully + installing it. + +2008-12-06 22:23 +0000 [r5444] Tzafrir Cohen + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wcte11xp.c, drivers/dahdi/wct1xxp.c: Validate the + timing priority on the wcte11xp and wct1xxp driver. + +2008-11-25 Shaun Ruffell + + * dahdi-linux version 2.1.0-rc5 released. + +2008-11-25 20:00 +0000 [r5383-5384] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.1.0-rc4 released. + +2008-11-17 18:17 +0000 [r5321] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.1.0-rc3 released. + +2008-11-10 19:48 +0000 [r5275] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.1.0-rc2 released. + +2008-11-05 20:17 +0000 [r5230-5237] Shaun Ruffell + + * 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 + + * dahdi-linux version 2.1.0-rc1 released. + +2008-11-03 12:01 +0000 [r5203-5211] Tzafrir Cohen + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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/:: * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wctc4xxp/base.c: Removing references to setup_timer + in pre 2.6.18 kernels. + +2008-09-29 Shaun Ruffell + + * dahdi-linux 2.0.0 released. + +2008-09-28 17:29 +0000 [r5002-5007] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/wcte12xp/base.c: Adding a needed header for the + in_atomic call. + +2008-09-18 21:23 +0000 [r4956-4957] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.0.0-rc4 released. + +2008-09-06 20:27 +0000 [r4868-4870] Matthew Fredrickson + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/dahdi-base.c: Remove useless kzalloc + +2008-08-27 17:12 +0000 [r4848-4849] Kevin P. Fleming + + * 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 + + * 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 + + * 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 + + * Makefile: Make sure we remove headers that we installed in + install-include + +2008-08-25 14:54 +0000 [r4823] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * dahdi-linux version 2.0.0-rc3 released. + +2008-08-20 22:20 +0000 [r4801-4805] Kevin P. Fleming + + * 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 + + * 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 + + * drivers/dahdi/firmware/Makefile: port over improvements to + firmware Makefile from Zaptel + +2008-08-19 20:25 +0000 [r4791-4794] Shaun Ruffell + + * 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 + + * 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 + + * 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 + + * drivers/dahdi/dahdi_transcode.c: remove devfs support, and use + consistent include file path + +2008-08-13 21:04 +0000 [r4770] Doug Bailey + + * 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 + + * 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 + + * dahdi-linux version 2.0.0-rc2 released. + +2008-08-07 20:21 +0000 [r4742] Shaun Ruffell : + + * drivers/dahdi/dahdi_transcode.c: Make sure types are same size on + 64-bit machines. + +2008-08-06 Kevin P. Fleming + + * dahdi-linux version 2.0.0-rc1 released.