- } else {
- /* repeat on bad frame */
- for (i = 0; i < 160; i++) {
- p_g_samples[i] = (p_g_samples[i] * 14) >> 4;
- data[i] = audio_s16_to_law[p_g_samples[i] & 0xffff];
+#endif
+ break;
+ case GSM_BAD_FRAME:
+ default:
+bfi:
+ if (p_echotest) {
+ /* beep on bad frame */
+ for (i = 0; i < 160; i++) {
+ if ((i & 3) > 2)
+ p_g_samples[i] = 15000;
+ else
+ p_g_samples[i] = -15000;
+ data[i] = audio_s16_to_law[p_g_samples[i] & 0xffff];
+ }
+ } else {
+ /* repeat on bad frame */
+ for (i = 0; i < 160; i++) {
+ p_g_samples[i] = (p_g_samples[i] * 14) >> 4;
+ data[i] = audio_s16_to_law[p_g_samples[i] & 0xffff];
+ }