1*a10e763bSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 261864d84STakashi Iwai /* 3c078a4aaSChris Rorvick * Line 6 Linux USB driver 461864d84STakashi Iwai * 561864d84STakashi Iwai * Copyright (C) 2004-2010 Markus Grabner (grabner@icg.tugraz.at) 661864d84STakashi Iwai */ 761864d84STakashi Iwai 861864d84STakashi Iwai #ifndef PLAYBACK_H 961864d84STakashi Iwai #define PLAYBACK_H 1061864d84STakashi Iwai 1161864d84STakashi Iwai #include <sound/pcm.h> 1261864d84STakashi Iwai 1361864d84STakashi Iwai #include "driver.h" 1461864d84STakashi Iwai 1561864d84STakashi Iwai /* 1661864d84STakashi Iwai * When the TonePort is used with jack in full duplex mode and the outputs are 1761864d84STakashi Iwai * not connected, the software monitor produces an ugly noise since everything 1861864d84STakashi Iwai * written to the output buffer (i.e., the input signal) will be repeated in 1961864d84STakashi Iwai * the next period (sounds like a delay effect). As a workaround, the output 2061864d84STakashi Iwai * buffer is cleared after the data have been read, but there must be a better 2161864d84STakashi Iwai * solution. Until one is found, this workaround can be used to fix the 2261864d84STakashi Iwai * problem. 2361864d84STakashi Iwai */ 2461864d84STakashi Iwai #define USE_CLEAR_BUFFER_WORKAROUND 1 2561864d84STakashi Iwai 26e195a331SBhumika Goyal extern const struct snd_pcm_ops snd_line6_playback_ops; 2761864d84STakashi Iwai 2861864d84STakashi Iwai extern int line6_create_audio_out_urbs(struct snd_line6_pcm *line6pcm); 2961864d84STakashi Iwai extern int line6_submit_audio_out_all_urbs(struct snd_line6_pcm *line6pcm); 3061864d84STakashi Iwai 3161864d84STakashi Iwai #endif 32