summaryrefslogtreecommitdiff
path: root/wcfxs.c
diff options
context:
space:
mode:
authormarkster <markster@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2003-06-05 15:22:56 +0000
committermarkster <markster@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2003-06-05 15:22:56 +0000
commitb4b9c88ccd625d7840111159f42b72bcda883227 (patch)
treeb86563b3ac2db83ab6e3ac7c76269a5b2e846430 /wcfxs.c
parentb8150324c0d96533bccf25cdc02fa43a5fb887d2 (diff)
Enhance watchdog support
git-svn-id: http://svn.digium.com/svn/zaptel/trunk@190 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'wcfxs.c')
-rwxr-xr-xwcfxs.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/wcfxs.c b/wcfxs.c
index 56d91b7..2e81dd9 100755
--- a/wcfxs.c
+++ b/wcfxs.c
@@ -241,6 +241,7 @@ static inline void wcfxs_receiveprep(struct wcfxs *wc, unsigned char ints)
static inline void wcfxs_check_hook(struct wcfxs *wc, int card);
static void wcfxs_stop_dma(struct wcfxs *wc);
+static void wcfxs_reset_tdm(struct wcfxs *wc);
static void wcfxs_restart_dma(struct wcfxs *wc);
static void wcfxs_interrupt(int irq, void *dev_id, struct pt_regs *regs)
@@ -1086,6 +1087,10 @@ static void wcfxs_start_dma(struct wcfxs *wc)
static void wcfxs_stop_dma(struct wcfxs *wc)
{
outb(0x00, wc->ioaddr + WC_OPER);
+}
+
+static void wcfxs_reset_tdm(struct wcfxs *wc)
+{
/* Reset TDM */
outb(0x0f, wc->ioaddr + WC_CNTL);
}
@@ -1215,6 +1220,7 @@ static void __devexit wcfxs_remove_one(struct pci_dev *pdev)
/* Stop any DMA */
wcfxs_stop_dma(wc);
+ wcfxs_reset_tdm(wc);
/* In case hardware is still there */
wcfxs_disable_interrupts(wc);