The Asterisk Development Team is pleased to announce the first release of DAHDI-Linux 2.6.0 and DAHDI-Tools 2.6.0. 2.6.0 is a feature release which: - Adds support for the TE820 8-span card to the wct4xxp driver. - Decrease load time of analog cards supported by the wctdm24xxp driver. - Adds sysfs object model to facilitate persistent span numbering and early loading of modules (NOTE: by default this release still behaves like previous releases with regards to span numbering assignment). - dahdi_pcap tool is now included in DAHDI-tools but not compiled by default since it depends on a currently unsupported interface in DAHDI-Linux. It is intended that in future releases this will be compiled by default. Issues closed in this release: DAHTOOL-49: adding pcap support to Dahdi (Reported by: Torrey Searle) DAHLIN-258: weird sound with a native bridged isdn-bri connection (Reported by: Daniel) DAHLIN-264: xpp: E1 CAS multiframe bits not properly set DAHDI-Linux 2.6.0, DAHDI-Tools 2.6.0, and DAHDI-Linux-Complete 2.6.0+2.6.0 are available for immediate download at: http://downloads.asterisk.org/pub/telephony/dahdi-linux http://downloads.asterisk.org/pub/telephony/dahdi-tools http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete The DAHDI-Linux shortlog of changes that are not in 2.5.0.2: Doug Bailey: wctdm24xxp, wcte12xp: Update VPMOCT032 firmware to 1.12.0. Tzafrir Cohen: Avoid building PCI devices if kernel has no PCI xpp: Allow up to 128 Astribanks on a system xpp: increase command queue length to 1500 xpp: USB_FW rev 10085: fix regression from r10013 xpp: PIC_TYPE_1 rev 9841: followup to r10013 bugfix: off-by-one in span assignment xpp: USB firmware r9964: minor bugfixes xpp: bugfix: clear NOTOPEN span alarm on assign xpp: bugfix -- manage xpd refcount for EC module xpp: Adaptations for E-Main-3 xpp: remove leftovers of old XPD_STATE method README: Minor additions regarding pinned-spans README: initial update for span assignments dahdi: Add error messages in dahdi_ioctl_chanconfig. xpp: fix FXS D DTMF detection (not zero) xpp: fix bashism in xpp_debug live_dahdi: optionally generate FreePBX DB entries Matthew Fredrickson: wct4xxp: Add support for TE820 and VPMOCT256. Russ Meyerriecks: wct4xxp: Remove vpm400 support. wct4xxp: Revise vpm struct due to product name changes wct4xxp: Handle incorrect vpm module/card pairings wct4xxp: minor: Removed unnecessary instrumentation wct4xxp: Expose serial number in dahdi_device and kernel log. wct4xxp: Add field upgradable firmware support for TE820. wcte12xp, wctdm24xxp: Remove frowny face from vpmoct032 error message Oron Peled: xpp: BRI: batch D-Channel packets to fix frag. xpp: BRI: split multibyte functionality xpp: BRI: remove trivial BRISTUFF wrappers xpp: BRI: remove legacy BRISTUFF code xpp: bad module_put() when too many Astribanks DAHDI-linux: Fix "surprise removal" problems xpp: BRI: fix timing priority calculation xpp: FXS: mwi and search_fsk fixes xpp: PRI: restore pri_protocol to R/W: xpp: pri: fix RS1 init in E1 CAS mode xpp: fxs: demote SETPOLARITY message to DBG() xpp: silence some bad ioctl() reporting xpp: restore backward compat dahdi_registration Extra debugging aids and messages xpp: cleanup some printk()'s added 'basechan' and 'channels' attributes to spans dahdi: Give userspace a chance to respond to surprise removal. xpp: Remove dahdi_autoreg parameter: xpp: more informative span description: xpp: make unregistration safer (idempotent) xpp: adapt to 'location' attribute removal: xpp: PRI: use DAHDI new set_spantype() method dahdi: Expose spans in sysfs. dahdi: dahdi_is_analog_span() -> dahdi_is_digital_span() dahdi: start handling "surprise device removal". Shaun Ruffell: wctdm24xxp: Fix bug if hook state on FXS changes before channel configuration. wct4xxp: Reduce time spent waiting for auth done bit on TE820. wct4xxp: Fail startup if not generating interrupts. dahdi: Return dahdi_span_ops.startup callback errors to userspace. wctdm24xxp: Do not call voicebus_release() before wctdm_back_out_gracefully() dahdi: #include <linux/module.h> in dahdi/kernel.h and GpakCust.h wctc4xxp: Replace 'ndo_set_multicast_list' with 'set_rx_mode' wctdm24xxp: Wait for background threads to complete on failed load. dahdi: Unregister dahdi_device from sysfs if we fail to auto assign spans. dahdi: Fix typo in previous commit which forced some spans to always fail assignment. dahdi: First span registered becomes master by default. dahdi: Define POLLRDHUP on kernels < 2.6.17 wctdm24xxp, wcte12xp: Allow VPMADT032 commands more time to complete. wct4xxp: Allow linemode (T1/E1/J1) to be changed via sysfs attribute. wcte12xp: Allow linemode (T1/E1) to be changed via sysfs attribute. dahdi: Allow 'spantype' to be changed before span assignement via sysfs. dahdi: Remove dahdi_span.irq and move dahdi_span.irqmisses into dahdi_device. dahdi: Expose dahdi devices in sysfs. dahdi: Register devices instead of individual spans. wct4xxp: Deprecate 't1e1override' module parameter in favor of 'default_linemode'. wct4xxp: Refactor t4_serial_setup() to remove t4.globalconfig. wct4xxp: Trivial. Use ARRAY_SIZE in free_wc() and __handle_leds(). wct4xxp: Atomically perform some read/modify/write operations wct4xxp: Fix spelling wct4xxp: Change t4_span.spantype to linemode. wct4xxp: Trivial refactoring in t4_init_one(). wct4xxp: Add has_e1_span() helper. wcte12xp: Deprecate 't1e1override' module parameter in favor of 'default_linemode'. wct4xxp: Remove redundant 'vpm' from struct t4. wct4xxp: Remove unused debugging code wct4xxp: Turn off the fancy alarm LEDS. wct4xxp: Hold a pointer to the devtype directly wct4xxp: Remove unused fields from 'struct t4' and 'struct t4_span' wct4xxp: Remove prefetching support. wct4xxp: Use in-hardirq version of dahdi_receive/transmit. wct4xxp: __t4_framer_in and __t4_framer_out speedups. wct4xxp: Remove 'pedanticpci' module parameter. wct4xxp: Remove some debug information from the kernel logs. wct4xxp: Slow down the rate we poll the framers in alarm. wct4xxp: Move "hardware DTMF disabled" message from dev_notice -> dev_info wctdm24xxp: Remove DEBOUNCING_RINGING_OFF from ring_detector_state enum. wctdm24xxp: Setup all VPMADT032 channels on hybrid cards. dahdi: Add functions for determining spantype (E1/T1) to include/dahdi/kernel.h dahdi: Define pr_xxx macros if not already defined. wcte12xp: Set uncollected performance counters to -1. wct4xxp: Remove unused t4_span.psync and t4_span.redalarms. wctdm24xxp: Remove fwringdetect module parameter. wctdm24xxp: Use interval for debouncing FXO polarity detection. wctdm24xxp: Use interval for debouncing FXO battery. wctdm24xxp: Use time interval for debouncing FXO ring detect. wctdm24xxp: Use interval for checking FXS on hook transfer timer. wctdm24xxp: 'oppending_ms' shouldn't assume being checked at 1ms intervals. wctdm24xxp: Name the shadow registers for each modules. wctdm24xxp: Change intcount to framecount. wctdm24xxp: Use fact that handle_transmit/receive are called in hard-irq wctdm24xxp: Protect creation / destruction of VPM instance. wctdm24xxp: Reset the polarity debounce setting when battery is lost. wctdm24xxp: Probe for and configure modules in parallel. wctdm24xxp: Introduce bg_create/bg_join. wcte12xp: Abort driver bind if read/write test fails. The DAHDI-Linux diffstat from the 2.5.0.2 release: README | 176 ++- build_tools/live_dahdi | 4 + drivers/dahdi/Kbuild | 2 + drivers/dahdi/dahdi-base.c | 872 +++++-- drivers/dahdi/dahdi-sysfs.c | 666 +++++ drivers/dahdi/dahdi.h | 24 + drivers/dahdi/dahdi_dynamic.c | 10 +- drivers/dahdi/firmware/Makefile | 36 +- .../oct612x/include/oct6100api/oct6100_defines.h | 2 +- drivers/dahdi/pciradio.c | 7 +- drivers/dahdi/tor2.c | 42 +- drivers/dahdi/voicebus/GpakCust.c | 4 +- drivers/dahdi/voicebus/GpakCust.h | 1 + drivers/dahdi/voicebus/voicebus.c | 2 +- drivers/dahdi/voicebus/vpmoct.c | 2 +- drivers/dahdi/wcb4xxp/base.c | 45 +- drivers/dahdi/wcb4xxp/wcb4xxp.h | 1 + drivers/dahdi/wcfxo.c | 27 +- drivers/dahdi/wct1xxp.c | 27 +- drivers/dahdi/wct4xxp/Kbuild | 5 +- drivers/dahdi/wct4xxp/base.c | 2870 +++++++++++--------- drivers/dahdi/wct4xxp/vpm450m.c | 34 +- drivers/dahdi/wct4xxp/wct4xxp.h | 22 +- drivers/dahdi/wctc4xxp/base.c | 14 + drivers/dahdi/wctdm.c | 39 +- drivers/dahdi/wctdm24xxp/base.c | 1377 ++++++---- drivers/dahdi/wctdm24xxp/wctdm24xxp.h | 63 +- drivers/dahdi/wcte11xp.c | 28 +- drivers/dahdi/wcte12xp/base.c | 399 ++- drivers/dahdi/wcte12xp/wcte12xp.h | 8 +- drivers/dahdi/xpp/card_bri.c | 432 +-- drivers/dahdi/xpp/card_fxo.h | 1 - drivers/dahdi/xpp/card_fxs.c | 57 +- drivers/dahdi/xpp/card_fxs.h | 1 - drivers/dahdi/xpp/card_global.c | 77 +- drivers/dahdi/xpp/card_pri.c | 131 +- drivers/dahdi/xpp/firmwares/PIC_TYPE_1.hex | 856 +++--- drivers/dahdi/xpp/firmwares/USB_FW.hex | 1133 ++++---- drivers/dahdi/xpp/init_card_1_30 | 15 +- drivers/dahdi/xpp/xbus-core.c | 108 +- drivers/dahdi/xpp/xbus-core.h | 11 +- drivers/dahdi/xpp/xbus-sysfs.c | 60 +- drivers/dahdi/xpp/xpp_dahdi.c | 270 +-- drivers/dahdi/xpp/xpp_dahdi.h | 10 +- drivers/dahdi/xpp/xpp_debug | 15 +- drivers/dahdi/xpp/xpp_usb.c | 6 + include/dahdi/kernel.h | 116 +- 47 files changed, 6332 insertions(+), 3776 deletions(-) The DAHDI-Tools short log from 2.5.0.2: Tzafrir Cohen: xpp: two extra product IDs: 1112, 1164 xpp: xpp_fxloader: regressions from r10348 DAHDI-perl: Fix PCI ID for Rhino R4T1 (0b0b:0305) xpp: recovery firmware in xpp_fxloader xpp: Serialized Parallel load; E-Main-3 firmware xpp: astribank_hexload: we need more lines Fix GCC 4.6 "set but not used" warnings dahdi_cfg: add '-S <spanno>' and '-C <chan-ranges>' dahdi_perl: Use $Dahdi::sys_base for sysfs pathes xpp_order generator: ignore EC XPD chandahdi gen: extens can have any num of digits Typos in man pages: toolyou Man page for dahdi_maint Update the dahdi-monitor man page fix typos in some xpp utils dahdi-perl: Also get USB loaded driver from usbfs dahdi-perl: Freepbxdb config generator Russ Meyerriecks: dahdi_pcap: Imported user space utility for managing pcap streams Shaun Ruffell: dahdi_genconf: Allow it to recognize the TE8xx 8-port cards. dahdi_test: Enforce range from 0.0% - 100.0% for accuracy. dahdi_maint: Print 'unsupported' warning if framing errors is -1. Jira Issues: DAHTOOL-56, DAHTOOL-49 The DAHDI-Tools diffstat from the 2.5.0.2: Makefile | 4 + dahdi_cfg.c | 155 ++++++++-- dahdi_maint.c | 14 +- dahdi_pcap.c | 332 +++++++++++++++++++++ dahdi_test.c | 43 ++- doc/dahdi_cfg.8 | 16 +- doc/dahdi_maint.8 | 62 ++++ doc/dahdi_monitor.8 | 124 ++++++++- xpp/astribank_allow.8 | 2 +- xpp/astribank_hexload.8 | 2 +- xpp/astribank_hexload.c | 24 +- xpp/astribank_tool.8 | 2 +- xpp/astribank_usb.c | 2 + xpp/dahdi_genconf | 10 +- xpp/dahdi_hardware | 6 +- xpp/lsdahdi | 2 +- xpp/perl_modules/Dahdi/Config/Gen/Chandahdi.pm | 4 +- xpp/perl_modules/Dahdi/Config/Gen/Freepbxdb.pm | 116 ++++++++ xpp/perl_modules/Dahdi/Config/Gen/Xpporder.pm | 2 +- xpp/perl_modules/Dahdi/Hardware/PCI.pm | 4 +- xpp/perl_modules/Dahdi/Hardware/USB.pm | 6 + xpp/perl_modules/Dahdi/Span.pm | 2 +- xpp/xpp_fxloader | 367 +++++++++++++++++------- xpp/xtalk/xusb.c | 144 +++++++++- 24 files changed, 1238 insertions(+), 207 deletions(-) For a full list of changes in these releases, please see the ChangeLog at http://svn.asterisk.org/svn/dahdi/linux/tags/2.6.0/ChangeLog and http://svn.asterisk.org/svn/dahdi/tools/tags/2.6.0/ChangeLog . Issues found in this release can be reported in the DAHDI-Linux [1] and DAHDI-Tools [2] projects at https://issues.asterisk.org/jira [1] https://issues.asterisk.org/jira/browse/DAHLIN [2] https://issues.asterisk.org/jira/browse/DAHTOOL Thank you for your continued support of Asterisk!