diff options
Diffstat (limited to 'drivers/isdn/mISDN/dsp_cmx.c')
-rw-r--r-- | drivers/isdn/mISDN/dsp_cmx.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/isdn/mISDN/dsp_cmx.c b/drivers/isdn/mISDN/dsp_cmx.c index efe4c7430e6..02f643456b1 100644 --- a/drivers/isdn/mISDN/dsp_cmx.c +++ b/drivers/isdn/mISDN/dsp_cmx.c | |||
@@ -137,6 +137,7 @@ | |||
137 | /* #define CMX_CONF_DEBUG */ | 137 | /* #define CMX_CONF_DEBUG */ |
138 | 138 | ||
139 | /*#define CMX_DEBUG * massive read/write pointer output */ | 139 | /*#define CMX_DEBUG * massive read/write pointer output */ |
140 | /*#define CMX_DELAY_DEBUG * gives rx-buffer delay overview */ | ||
140 | /*#define CMX_TX_DEBUG * massive read/write on tx-buffer with content */ | 141 | /*#define CMX_TX_DEBUG * massive read/write on tx-buffer with content */ |
141 | 142 | ||
142 | static inline int | 143 | static inline int |
@@ -1135,6 +1136,25 @@ dsp_cmx_conf(struct dsp *dsp, u32 conf_id) | |||
1135 | return 0; | 1136 | return 0; |
1136 | } | 1137 | } |
1137 | 1138 | ||
1139 | #ifdef CMX_DELAY_DEBUG | ||
1140 | int delaycount; | ||
1141 | static void | ||
1142 | showdelay(struct dsp *dsp, int samples, int delay) | ||
1143 | { | ||
1144 | char bar[] = "--------------------------------------------------|"; | ||
1145 | int sdelay; | ||
1146 | |||
1147 | delaycount += samples; | ||
1148 | if (delaycount < 8000) | ||
1149 | return; | ||
1150 | delaycount = 0; | ||
1151 | |||
1152 | sdelay = delay * 50 / (dsp_poll << 2); | ||
1153 | |||
1154 | printk(KERN_DEBUG "DELAY (%s) %3d >%s\n", dsp->name, delay, | ||
1155 | sdelay > 50 ? "..." : bar + 50 - sdelay); | ||
1156 | } | ||
1157 | #endif | ||
1138 | 1158 | ||
1139 | /* | 1159 | /* |
1140 | * audio data is received from card | 1160 | * audio data is received from card |
@@ -1256,6 +1276,9 @@ dsp_cmx_receive(struct dsp *dsp, struct sk_buff *skb) | |||
1256 | 1276 | ||
1257 | /* increase write-pointer */ | 1277 | /* increase write-pointer */ |
1258 | dsp->rx_W = ((dsp->rx_W+len) & CMX_BUFF_MASK); | 1278 | dsp->rx_W = ((dsp->rx_W+len) & CMX_BUFF_MASK); |
1279 | #ifdef CMX_DELAY_DEBUG | ||
1280 | showdelay(dsp, len, (dsp->rx_W-dsp->rx_R) & CMX_BUFF_MASK); | ||
1281 | #endif | ||
1259 | } | 1282 | } |
1260 | 1283 | ||
1261 | 1284 | ||