[svn-commits] sruffell: linux/trunk r9977 - /linux/trunk/drivers/dahdi/wctdm24xxp/base.c

SVN commits to the Digium repositories svn-commits at lists.digium.com
Fri Jun 10 20:58:48 CDT 2011


Author: sruffell
Date: Fri Jun 10 20:58:43 2011
New Revision: 9977

URL: http://svnview.digium.com/svn/dahdi?view=rev&rev=9977
Log:
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 <sruffell at digium.com>

Modified:
    linux/trunk/drivers/dahdi/wctdm24xxp/base.c

Modified: linux/trunk/drivers/dahdi/wctdm24xxp/base.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/wctdm24xxp/base.c?view=diff&rev=9977&r1=9976&r2=9977
==============================================================================
--- linux/trunk/drivers/dahdi/wctdm24xxp/base.c (original)
+++ linux/trunk/drivers/dahdi/wctdm24xxp/base.c Fri Jun 10 20:58:43 2011
@@ -2233,13 +2233,14 @@
 
 static int wctdm_voicedaa_insane(struct wctdm *wc, struct wctdm_module *mod)
 {
-	int blah[] = {2, 11};
-	wctdm_getregs(wc, mod, blah, ARRAY_SIZE(blah));
-	if (blah[0] != 0x3)
+	int blah;
+	blah = wctdm_getreg(wc, mod, 2);
+	if (blah != 0x3)
 		return -2;
+	blah = wctdm_getreg(wc, mod, 11);
 	if (debug & DEBUG_CARD) {
 		dev_info(&wc->vb.pdev->dev,
-			 "VoiceDAA System: %02x\n", blah[1] & 0xf);
+			 "VoiceDAA System: %02x\n", blah & 0xf);
 	}
 	return 0;
 }




More information about the svn-commits mailing list