summaryrefslogtreecommitdiff
path: root/drivers/dahdi/wctc4xxp
AgeCommit message (Collapse)Author
2009-11-09Merged revisions ↵Shaun Ruffell
6699,6706,6714,6768,6771,6785,6812-6818,6821,6838,6928-6929,6941,6945-6946,6952,6981-6982,7003-7004,7008,7023,7027,7094-7097,7110,7117-7118,7125,7140,7147,7155,7194,7284,7293,7319,7437-7438,7445,7480,7486-7487,7512-7524,7527-7528,7534-7536 via svnmerge from https://origsvn.digium.com/svn/dahdi/linux/trunk ........ r6699 | kpfleming | 2009-06-23 15:32:01 -0500 (Tue, 23 Jun 2009) | 3 lines 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) ........ r6706 | sruffell | 2009-06-23 18:21:25 -0500 (Tue, 23 Jun 2009) | 1 line README: Minor corrections to the README. ........ r6714 | twilson | 2009-06-24 15:23:07 -0500 (Wed, 24 Jun 2009) | 1 line Remove unused torisa code from header ........ r6768 | sruffell | 2009-06-26 12:07:39 -0500 (Fri, 26 Jun 2009) | 1 line wct4xxp: Unmap the same size DMA window that was mapped. ........ r6771 | sruffell | 2009-06-26 12:22:45 -0500 (Fri, 26 Jun 2009) | 6 lines 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) ........ r6785 | sruffell | 2009-06-28 23:47:26 -0500 (Sun, 28 Jun 2009) | 5 lines echocan: Properly keep the reference counts for the echocan modules. (closes issue #13504) (closes issue #15327) Reported by: sruffell, tzafrir ........ r6812 | tzafrir | 2009-07-02 14:25:54 -0500 (Thu, 02 Jul 2009) | 5 lines wcb4xxp: Don't assume we have 4 spans (ports). First part of extra hfcmulti drivers: the number of ports is still hardwired to 4, but just in a single place. ........ r6813 | tzafrir | 2009-07-02 14:34:05 -0500 (Thu, 02 Jul 2009) | 4 lines wcb4xxp: Extra bit macros that a needed for kernels < 2.6.24 Macros borrowed from xpp/ . ........ r6814 | tzafrir | 2009-07-02 14:42:25 -0500 (Thu, 02 Jul 2009) | 2 lines wcb4xxp: Adjust debug filter code to number of ports. ........ r6815 | tzafrir | 2009-07-02 14:52:14 -0500 (Thu, 02 Jul 2009) | 6 lines 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. ........ r6816 | tzafrir | 2009-07-02 14:59:44 -0500 (Thu, 02 Jul 2009) | 2 lines The B410P differs from other HFC-xS cards with respect to the EC unit ........ r6817 | tzafrir | 2009-07-02 15:07:36 -0500 (Thu, 02 Jul 2009) | 7 lines More 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. ........ r6818 | tzafrir | 2009-07-02 15:14:39 -0500 (Thu, 02 Jul 2009) | 4 lines wcb4xxp: Fix PCM handling for various cards. HFC-8S cards behave quite differently than HFC-4S cards here. ........ r6821 | tzafrir | 2009-07-02 15:18:59 -0500 (Thu, 02 Jul 2009) | 6 lines 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. ........ r6838 | sruffell | 2009-07-13 09:33:39 -0500 (Mon, 13 Jul 2009) | 1 line wctc4xxp: Remove deprecated DMA_xxBIT_MASK usage. ........ r6928 | sruffell | 2009-08-04 11:22:23 -0500 (Tue, 04 Aug 2009) | 1 line wcte12xp: Remove unused 'schluffen' declaration in wcte12xp.h ........ r6929 | sruffell | 2009-08-04 11:22:26 -0500 (Tue, 04 Aug 2009) | 4 lines wctdm24xxp: Eliminate 'variety' and 'type' members from 'struct wctdm'. struct wctdm can hold a pointer to struct wctdm_desc directly, and eliminate the need to copy members of wctdm_desc into wctdm. ........ r6941 | dbailey | 2009-08-05 09:40:45 -0500 (Wed, 05 Aug 2009) | 14 lines 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 ........ r6945 | sruffell | 2009-08-05 14:39:10 -0500 (Wed, 05 Aug 2009) | 6 lines wctdm24xxp, wctdm: Formatting changes. Update the lines affected by revision 6941. I'm taking every opportunity to move DAHDI closer to the kernel coding conventions short of just reformatting for the sake of reformatting. The majority of these changes are to bring the line lengths under 80 chars. ........ r6946 | sruffell | 2009-08-05 14:39:13 -0500 (Wed, 05 Aug 2009) | 1 line dahdi_dummy: Remove some trailing whitespace. ........ r6952 | sruffell | 2009-08-11 13:47:21 -0500 (Tue, 11 Aug 2009) | 3 lines wctdm24xxp: Remove unused members related to hardware DTMF detection. Not used anymore, so they are gone. ........ r6981 | sruffell | 2009-08-13 09:42:05 -0500 (Thu, 13 Aug 2009) | 1 line wctc4xxp: Remove flag member that is not used. ........ r6982 | sruffell | 2009-08-13 09:42:08 -0500 (Thu, 13 Aug 2009) | 1 line wctdm24xxp: Use the ARRAY_SIZE macro where appropriate. ........ r7003 | sruffell | 2009-08-13 19:46:26 -0500 (Thu, 13 Aug 2009) | 9 lines 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) ........ r7004 | sruffell | 2009-08-13 19:46:28 -0500 (Thu, 13 Aug 2009) | 1 line dahdi-base: Add comment to explain why rxhooksig is reset on span start. ........ r7008 | sruffell | 2009-08-14 10:47:39 -0500 (Fri, 14 Aug 2009) | 11 lines 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 ........ r7023 | sruffell | 2009-08-17 09:07:06 -0500 (Mon, 17 Aug 2009) | 4 lines README: Update known issues section. Remove note about echocanceler reference counts, since that is fixed, and add a note about issue with KB1 when configured with more than 128 taps. ........ r7027 | seanbright | 2009-08-17 14:31:54 -0500 (Mon, 17 Aug 2009) | 7 lines 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) ........ r7094 | sruffell | 2009-09-07 16:40:19 -0500 (Mon, 07 Sep 2009) | 4 lines wctdm24xxp: Remove a few more unneeded 'volatile' keywords. The writechunk and readchunk parameters are never accessed by hardware at the same time that the software is accessing them anymore. ........ r7095 | sruffell | 2009-09-07 16:40:22 -0500 (Mon, 07 Sep 2009) | 5 lines 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. ........ r7096 | sruffell | 2009-09-07 16:40:25 -0500 (Mon, 07 Sep 2009) | 1 line dahdi-base: Prevent compilation if both EMPULSE and EMFLASH are defined. ........ r7097 | sruffell | 2009-09-07 16:40:29 -0500 (Mon, 07 Sep 2009) | 4 lines dahdi-base: Fix flag check in dahdi_rbs_sethook. As long as any of the flags were set, this check would have always passed. ........ r7110 | rmeyerriecks | 2009-09-14 15:30:24 -0500 (Mon, 14 Sep 2009) | 1 line 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 ........ r7117 | dbailey | 2009-09-14 15:51:56 -0500 (Mon, 14 Sep 2009) | 17 lines 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 ........ r7118 | seanbright | 2009-09-14 16:10:38 -0500 (Mon, 14 Sep 2009) | 1 line Change zap -> dahdi. ........ r7125 | rmeyerriecks | 2009-09-15 09:59:06 -0500 (Tue, 15 Sep 2009) | 2 lines dahdi-base: Minor syntax change to meet style guidelines ........ r7140 | dbailey | 2009-09-15 15:50:45 -0500 (Tue, 15 Sep 2009) | 12 lines Change 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 ........ r7147 | sruffell | 2009-09-16 13:19:00 -0500 (Wed, 16 Sep 2009) | 4 lines 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. ........ r7155 | sruffell | 2009-09-21 10:24:36 -0500 (Mon, 21 Sep 2009) | 8 lines 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 ........ r7194 | dbailey | 2009-09-22 09:03:53 -0500 (Tue, 22 Sep 2009) | 12 lines 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 ........ r7284 | mattf | 2009-09-30 11:34:11 -0500 (Wed, 30 Sep 2009) | 1 line Update echocan API so it only uses channel offset in free routine ........ r7293 | tzafrir | 2009-09-30 13:09:42 -0500 (Wed, 30 Sep 2009) | 2 lines move the dev->bus_id fix from xpp to kernel.h: needed elsewhere ........ r7319 | sruffell | 2009-10-02 16:09:01 -0500 (Fri, 02 Oct 2009) | 1 line wcte12xp: The timer is called every 200ms, not every 100ms. Fix comment. ........ r7437 | sruffell | 2009-10-29 13:26:16 -0500 (Thu, 29 Oct 2009) | 10 lines 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) ........ r7438 | sruffell | 2009-10-29 13:26:17 -0500 (Thu, 29 Oct 2009) | 1 line wcte12xp, wctdm24xxp: VPMADT032 firmware update to 1.20. ........ r7445 | mspiceland | 2009-10-29 16:37:45 -0500 (Thu, 29 Oct 2009) | 3 lines Debounce alarms by default for wct4xxp per AT&T 54016. Also, the various alarm conditions can be debounced separately. ........ r7480 | sruffell | 2009-11-04 14:43:05 -0600 (Wed, 04 Nov 2009) | 4 lines voicebus: Increase the NLP converged threshold to 18. Brings in the change from r7065 that was on the team/sruffell/dahdi-linux-vpm119 branch. ........ r7486 | mspiceland | 2009-11-04 17:25:32 -0600 (Wed, 04 Nov 2009) | 9 lines Adding alarm debounce to single span driver (wcte12xp). Debounce yellow alarm also. In wcte12xp, change check alarm frequency to 100ms for better debounce granularity. Fix lines over 80 cols from last alarm debounce commit. ........ r7487 | mspiceland | 2009-11-04 17:28:21 -0600 (Wed, 04 Nov 2009) | 2 lines Remove commented out code block that was unintentionally left in. ........ r7512 | sruffell | 2009-11-06 18:35:38 -0600 (Fri, 06 Nov 2009) | 1 line wcte12xp: Remove unused flag member and make const the t1_descs. ........ r7513 | sruffell | 2009-11-06 18:35:38 -0600 (Fri, 06 Nov 2009) | 4 lines voicebus: Remove the VB_PRINTK macro. Unnecessarily duplicates the dev_xxx macros. Also removes the need for the board_name member from struct voicebus. ........ r7514 | sruffell | 2009-11-06 18:35:39 -0600 (Fri, 06 Nov 2009) | 4 lines voicebus: Remove sdi member from 'struct voicebus' This is only used during startup so we don't need to carry it around in the structure at all times. ........ r7515 | sruffell | 2009-11-06 18:35:40 -0600 (Fri, 06 Nov 2009) | 1 line voicebus: Set the DMA_BIT_MASK ........ r7516 | sruffell | 2009-11-06 18:35:40 -0600 (Fri, 06 Nov 2009) | 1 line voicebus: Use DAHDI_IRQ_SHARED instead of defining our own. ........ r7517 | sruffell | 2009-11-06 18:35:40 -0600 (Fri, 06 Nov 2009) | 24 lines 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. ........ r7518 | sruffell | 2009-11-06 18:35:41 -0600 (Fri, 06 Nov 2009) | 7 lines 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. ........ r7519 | sruffell | 2009-11-06 18:35:42 -0600 (Fri, 06 Nov 2009) | 4 lines wcte12xp: Lock latency when loading No longer need to restart board initialization if the latency would have increased during initialization. DAHDI-278. ........ r7520 | sruffell | 2009-11-06 18:35:42 -0600 (Fri, 06 Nov 2009) | 4 lines wctdm24xxp: Lock latency when loading We no longer need to retry board initialization if the latency would have increased during the initialization. DAHDI-278 ........ r7521 | sruffell | 2009-11-06 18:35:43 -0600 (Fri, 06 Nov 2009) | 4 lines 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. ........ r7522 | sruffell | 2009-11-06 18:35:44 -0600 (Fri, 06 Nov 2009) | 5 lines voicebus: Add optional sysfs entry for reading a boards current latency. This is off by default since it hasn't been tested on a full range of kernels, but can be useful for quickly seeing differences for latencies on different cards installed in the system. ........ r7523 | sruffell | 2009-11-06 18:35:44 -0600 (Fri, 06 Nov 2009) | 1 line voicebus: Remove 'assert' macros and use BUG_ON/WARN_ON directly. ........ r7524 | sruffell | 2009-11-06 18:35:45 -0600 (Fri, 06 Nov 2009) | 1 line voicebus: Be just a little more graceful if we cannot grab our interrupt line. ........ r7527 | sruffell | 2009-11-06 18:58:03 -0600 (Fri, 06 Nov 2009) | 1 line wcte12xp: Fix up some continued strings. ........ r7528 | sruffell | 2009-11-06 18:58:03 -0600 (Fri, 06 Nov 2009) | 1 line wct4xxp: Fix up some continued strings. ........ r7534 | sruffell | 2009-11-09 12:02:40 -0600 (Mon, 09 Nov 2009) | 1 line wct4xxp: Only print the new debounce messages when debug is set. ........ r7535 | sruffell | 2009-11-09 12:02:41 -0600 (Mon, 09 Nov 2009) | 1 line wcte12xp: Only print the new debounce messages when debug is set. ........ r7536 | sruffell | 2009-11-09 12:11:06 -0600 (Mon, 09 Nov 2009) | 4 lines 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. ........ git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/branches/2.2@7539 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-08-04Merged revisions 6717,6760 via svnmerge from Shaun Ruffell
https://origsvn.digium.com/svn/dahdi/linux/trunk ........ r6717 | sruffell | 2009-06-24 21:30:19 -0500 (Wed, 24 Jun 2009) | 3 lines wctc4xxp: Update to use struct net_device_ops. Accomodates a change in the linux kernel network device interface. ........ r6760 | sruffell | 2009-06-25 17:16:34 -0500 (Thu, 25 Jun 2009) | 1 line wctc4xxp: Make the wctc4xxp_netdev_ops structure static. ........ git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/branches/2.2@6937 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-05-01wctc4xxp: spin_trylock_irqsave is not defined on some kernels.Shaun Ruffell
DAHDI-253 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6551 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-05-01wctc4xxp: Defined gfp_t for earlier kernels.Shaun Ruffell
This definition was just copied from the xpp driver. DAHDI-253 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6550 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-05-01wctc4xxp: Fix inclusion of linux/io.h on 2.6.9 kernels.Shaun Ruffell
DAHDI-253 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6549 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-04-29wctc4xxp: Change netif_rx_xxx to napi_xxxShaun Ruffell
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 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6526 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-24Eliminate unnecessary checks for NULL before freeing memory.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6246 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-24Do not allocate more memory than is needed when sending packets.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6245 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-24Block runt packets from the transcoder.Shaun Ruffell
Tested by: Walter Klomp git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6244 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-24Do not define the debug flags if CONFIG_SLUB is not set.Shaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6237 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Make some messages debug messages and minor formatting adjustment.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6228 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Verify checksum on the RTP IP header before queueing.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6227 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Poll the card in a kernel timer when several channels are open.Shaun Ruffell
Polling the driver increases overall system throughput when there are several transcoding channels open by reducing the number of interrupts the the TC400M generates. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6226 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Optionally show total number of packets dropped when channel is closed.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6225 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Do not handle duplicate reponses.Shaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6224 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Create our own free list for commands instead of using kmem_cache.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6223 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Set TX_COMPLETE atomically with changes to the waiting_for_response_list.Shaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6222 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23split send_trans_connect into a connect / disconnect pair.Shaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6221 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23If the driver fails to register, make sure we cleanup the command cache.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6220 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Setup the TC400M to poll the own bit on the descriptor ring.Shaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6219 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Make sure that messages sitting in the outbound queue cause the timer toShaun Ruffell
reschedule. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6218 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-23Refactor channel command handling.Shaun Ruffell
Makes commands and reponses clearer and easier to trouble shoot, reduces pressure on the stack, and brings driver closer to kernel coding standards. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6217 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-03-06Workarounds for SLUB sysfs problems in kernel 2.6.22 with CONFIG_SLUB and ↵Wendell Thompson
CONFIG_SLUB_DEBUG, as in Fedora Core 6. Fixes kernel oops when loading/unloading dahdi modules. DAHDI-226 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6096 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-02-11Use the proper pci_device when handling dma buffers.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@6005 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-28Allow EXTRA_CFLAGS to propagate to builds in the subfolders for wct4xxp,Shaun Ruffell
wctdm24xxp, wctc4xxp, wcb4xxp, and wcte12xp. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5856 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-27And once again I'm reminded why I should always compile before committing.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5850 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-27Small tweak to the alloc_netdev call again to use a less error-prone method ofShaun Ruffell
getting the size. Thanks kpfleming. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5849 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-27Passed wrong size to alloc_netdev.Shaun Ruffell
Related to issue #14285 . git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5848 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-27Updated wctc4xxp for kernel version 2.6.29.Shaun Ruffell
Closes issue #14285 . Reported by: tzafrir git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5842 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-27- When tearing down channels, use the channel's timeslot as the index into theShaun Ruffell
encoder and decoder arrays, and not the channel which is returned from the DTE. Issue: DAHDI-231. - Instead of completely servicing the receive descriptor ring in the workqueue, have the interrupt handler queue them up for the workqueue. - No need to interrupt on both transmit and receive since we expect a response to every packet we send. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5835 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-05Even on older kernels, do not redefine WARN_ON_ONCE if it is already defined.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5636 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2009-01-05Print more information to the kernel log when the transcoder sends us aShaun Ruffell
diagnostic message. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5627 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-12-11wctc4xxp: Fix compilation issues on 2.6.15 and below kernels. ThanksShaun Ruffell
tzafrir. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5481 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-12-04Fix an erroneous warning and ensure that the sample size is set correctly whenShaun Ruffell
decoding G723 packets. Issue: DAHDI-198 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5434 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-12-01Fix issue with cut and paste that was preventing compilation.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5420 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-12-01Service the transmit descriptor ring before the receive descriptor ring soShaun Ruffell
that commands that are still sitting on the transmit descriptor ring are not completed twice. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5413 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-11-17- Fix for race condition of encoder and decoder are allocated at the same timeShaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5321 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-11-05Fix warning messages in order to build on 2.6.27.Shaun Ruffell
(Closes issue #13757) Patch provided by tzafrir. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5237 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-28fix a large number of warnings found by sparse, the kernel code sanity ↵Kevin P. Fleming
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) git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5162 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-10- Ensure that the source format is considered when selecting a transcoder.Shaun Ruffell
- 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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5084 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-06Embed room for the complete packet to the DTE in the transcoder bufferShaun Ruffell
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5060 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-03There are two possible valid statues when booting the TC400M.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5034 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-02Keep hold of the channel lock when setting the data_ready flag for the channelShaun Ruffell
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 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5030 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-02wctc4xxp_cleanup_channel_private needs a pointer to the zt_transcoder_channelShaun Ruffell
and not just the private portion now in order to manage the data ready flag state. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5029 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-10-02Mark that there is not any data waiting whenever we cleanup the privateShaun Ruffell
channel structures. Issue: DAHDI-42 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5025 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-09-30Removing references to setup_timer in pre 2.6.18 kernels.Shaun Ruffell
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5017 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-09-24Adding back in the mode module parameter for the wctc4xxp driver. This isShaun Ruffell
primarily used to increase the number of channels available when only transcoding to/from g729 by setting it to 'g729'. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@4971 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-08-27a bit of attribution cleanupKevin P. Fleming
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@4848 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-08-25Remove this warning, which could occur if the driver is loaded on a systemShaun Ruffell
without a wctc4xxp, and then subsequently unloaded. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@4823 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2008-08-20Change to support both 5.3kbps and 6.3kbps bit rates when using the G723.1Shaun Ruffell
codec. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@4798 a0bf4364-ded3-4de4-8d8a-66a801d63aff