[dahdi-commits] sruffell: linux/trunk r9886 -	/linux/trunk/drivers/dahdi/wcte12xp/base.c
    SVN commits to the DAHDI project 
    dahdi-commits at lists.digium.com
       
    Mon Apr  4 11:25:38 CDT 2011
    
    
  
Author: sruffell
Date: Mon Apr  4 11:25:33 2011
New Revision: 9886
URL: http://svnview.digium.com/svn/dahdi?view=rev&rev=9886
Log:
wcte12xp: Use the in-hardirq versions of dahdi_receive/dahdi_transmit.
We are in hard-irq context already, so we do not need to disable all
local interrupts. On one 3.06GHz Xeon test machine, drops the average
time in the interrupt handler from 23.10 us to 21.87 us.
Signed-off-by: Shaun Ruffell <sruffell at digium.com>
Acked-by: Michael Spiceland <mspiceland at digium.com>
Acked-by: Kinsey Moore <kmoore at digium.com>
Modified:
    linux/trunk/drivers/dahdi/wcte12xp/base.c
Modified: linux/trunk/drivers/dahdi/wcte12xp/base.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/wcte12xp/base.c?view=diff&rev=9886&r1=9885&r2=9886
==============================================================================
--- linux/trunk/drivers/dahdi/wcte12xp/base.c (original)
+++ linux/trunk/drivers/dahdi/wcte12xp/base.c Mon Apr  4 11:25:33 2011
@@ -1856,9 +1856,8 @@
 	u8 *eframe = sframe;
 
 	/* Calculate Transmission */
-	if (likely(test_bit(INITIALIZED, &wc->bit_flags))) {
-		dahdi_transmit(&wc->span);
-	}
+	if (likely(test_bit(INITIALIZED, &wc->bit_flags)))
+		_dahdi_transmit(&wc->span);
 
 #ifdef CONFIG_VOICEBUS_ECREFERENCE
 	for (chan = 0; chan < wc->span.channels; chan++) {
@@ -1950,19 +1949,19 @@
 		for (x = 0; x < wc->span.channels; x++) {
 			__dahdi_fifo_get(wc->ec_reference[x], buffer,
 				    ARRAY_SIZE(buffer));
-			dahdi_ec_chunk(wc->chans[x], wc->chans[x]->readchunk,
+			_dahdi_ec_chunk(wc->chans[x], wc->chans[x]->readchunk,
 				       buffer);
 		}
 #else
 		for (x = 0; x < wc->span.channels; x++) {
-			dahdi_ec_chunk(wc->chans[x], wc->chans[x]->readchunk, wc->ec_chunk2[x]);
+			_dahdi_ec_chunk(wc->chans[x], wc->chans[x]->readchunk, wc->ec_chunk2[x]);
 			memcpy(wc->ec_chunk2[x], wc->ec_chunk1[x],
 				DAHDI_CHUNKSIZE);
 			memcpy(wc->ec_chunk1[x], wc->chans[x]->writechunk,
 				DAHDI_CHUNKSIZE);
 		}
 #endif
-		dahdi_receive(&wc->span);
+		_dahdi_receive(&wc->span);
 	}
 }
 
    
    
More information about the dahdi-commits
mailing list