line6pcm           21 sound/usb/line6/capture.c static int submit_audio_in_urb(struct snd_line6_pcm *line6pcm)
line6pcm           28 sound/usb/line6/capture.c 	index = find_first_zero_bit(&line6pcm->in.active_urbs,
line6pcm           29 sound/usb/line6/capture.c 				    line6pcm->line6->iso_buffers);
line6pcm           31 sound/usb/line6/capture.c 	if (index < 0 || index >= line6pcm->line6->iso_buffers) {
line6pcm           32 sound/usb/line6/capture.c 		dev_err(line6pcm->line6->ifcdev, "no free URB found\n");
line6pcm           36 sound/usb/line6/capture.c 	urb_in = line6pcm->in.urbs[index];
line6pcm           43 sound/usb/line6/capture.c 		fin->length = line6pcm->max_packet_size_in;
line6pcm           44 sound/usb/line6/capture.c 		urb_size += line6pcm->max_packet_size_in;
line6pcm           48 sound/usb/line6/capture.c 	    line6pcm->in.buffer +
line6pcm           49 sound/usb/line6/capture.c 	    index * LINE6_ISO_PACKETS * line6pcm->max_packet_size_in;
line6pcm           51 sound/usb/line6/capture.c 	urb_in->context = line6pcm;
line6pcm           56 sound/usb/line6/capture.c 		set_bit(index, &line6pcm->in.active_urbs);
line6pcm           58 sound/usb/line6/capture.c 		dev_err(line6pcm->line6->ifcdev,
line6pcm           68 sound/usb/line6/capture.c int line6_submit_audio_in_all_urbs(struct snd_line6_pcm *line6pcm)
line6pcm           72 sound/usb/line6/capture.c 	for (i = 0; i < line6pcm->line6->iso_buffers; ++i) {
line6pcm           73 sound/usb/line6/capture.c 		ret = submit_audio_in_urb(line6pcm);
line6pcm           84 sound/usb/line6/capture.c void line6_capture_copy(struct snd_line6_pcm *line6pcm, char *fbuf, int fsize)
line6pcm           87 sound/usb/line6/capture.c 	    get_substream(line6pcm, SNDRV_PCM_STREAM_CAPTURE);
line6pcm           90 sound/usb/line6/capture.c 		line6pcm->properties->bytes_per_channel *
line6pcm           91 sound/usb/line6/capture.c 		line6pcm->properties->capture_hw.channels_max;
line6pcm           97 sound/usb/line6/capture.c 	if (line6pcm->in.pos_done + frames > runtime->buffer_size) {
line6pcm          104 sound/usb/line6/capture.c 		len = runtime->buffer_size - line6pcm->in.pos_done;
line6pcm          108 sound/usb/line6/capture.c 			       line6pcm->in.pos_done * bytes_per_frame, fbuf,
line6pcm          114 sound/usb/line6/capture.c 			dev_err(line6pcm->line6->ifcdev,
line6pcm          120 sound/usb/line6/capture.c 		       line6pcm->in.pos_done * bytes_per_frame, fbuf, fsize);
line6pcm          123 sound/usb/line6/capture.c 	line6pcm->in.pos_done += frames;
line6pcm          124 sound/usb/line6/capture.c 	if (line6pcm->in.pos_done >= runtime->buffer_size)
line6pcm          125 sound/usb/line6/capture.c 		line6pcm->in.pos_done -= runtime->buffer_size;
line6pcm          128 sound/usb/line6/capture.c void line6_capture_check_period(struct snd_line6_pcm *line6pcm, int length)
line6pcm          131 sound/usb/line6/capture.c 	    get_substream(line6pcm, SNDRV_PCM_STREAM_CAPTURE);
line6pcm          133 sound/usb/line6/capture.c 	line6pcm->in.bytes += length;
line6pcm          134 sound/usb/line6/capture.c 	if (line6pcm->in.bytes >= line6pcm->in.period) {
line6pcm          135 sound/usb/line6/capture.c 		line6pcm->in.bytes %= line6pcm->in.period;
line6pcm          136 sound/usb/line6/capture.c 		spin_unlock(&line6pcm->in.lock);
line6pcm          138 sound/usb/line6/capture.c 		spin_lock(&line6pcm->in.lock);
line6pcm          150 sound/usb/line6/capture.c 	struct snd_line6_pcm *line6pcm = (struct snd_line6_pcm *)urb->context;
line6pcm          152 sound/usb/line6/capture.c 	line6pcm->in.last_frame = urb->start_frame;
line6pcm          155 sound/usb/line6/capture.c 	for (index = 0; index < line6pcm->line6->iso_buffers; ++index)
line6pcm          156 sound/usb/line6/capture.c 		if (urb == line6pcm->in.urbs[index])
line6pcm          159 sound/usb/line6/capture.c 	spin_lock_irqsave(&line6pcm->in.lock, flags);
line6pcm          174 sound/usb/line6/capture.c 		if (fsize > line6pcm->max_packet_size_in) {
line6pcm          175 sound/usb/line6/capture.c 			dev_err(line6pcm->line6->ifcdev,
line6pcm          177 sound/usb/line6/capture.c 				fsize, line6pcm->max_packet_size_in);
line6pcm          191 sound/usb/line6/capture.c 		line6pcm->prev_fbuf = fbuf;
line6pcm          192 sound/usb/line6/capture.c 		line6pcm->prev_fsize = fsize /
line6pcm          193 sound/usb/line6/capture.c 			(line6pcm->properties->bytes_per_channel *
line6pcm          194 sound/usb/line6/capture.c 			line6pcm->properties->capture_hw.channels_max);
line6pcm          196 sound/usb/line6/capture.c 		if (!test_bit(LINE6_STREAM_IMPULSE, &line6pcm->in.running) &&
line6pcm          197 sound/usb/line6/capture.c 		    test_bit(LINE6_STREAM_PCM, &line6pcm->in.running) &&
line6pcm          199 sound/usb/line6/capture.c 			line6_capture_copy(line6pcm, fbuf, fsize);
line6pcm          202 sound/usb/line6/capture.c 	clear_bit(index, &line6pcm->in.active_urbs);
line6pcm          204 sound/usb/line6/capture.c 	if (test_and_clear_bit(index, &line6pcm->in.unlink_urbs))
line6pcm          208 sound/usb/line6/capture.c 		submit_audio_in_urb(line6pcm);
line6pcm          210 sound/usb/line6/capture.c 		if (!test_bit(LINE6_STREAM_IMPULSE, &line6pcm->in.running) &&
line6pcm          211 sound/usb/line6/capture.c 		    test_bit(LINE6_STREAM_PCM, &line6pcm->in.running))
line6pcm          212 sound/usb/line6/capture.c 			line6_capture_check_period(line6pcm, length);
line6pcm          215 sound/usb/line6/capture.c 	spin_unlock_irqrestore(&line6pcm->in.lock, flags);
line6pcm          223 sound/usb/line6/capture.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          227 sound/usb/line6/capture.c 					    &line6pcm->properties->rates);
line6pcm          231 sound/usb/line6/capture.c 	line6_pcm_acquire(line6pcm, LINE6_STREAM_CAPTURE_HELPER, false);
line6pcm          233 sound/usb/line6/capture.c 	runtime->hw = line6pcm->properties->capture_hw;
line6pcm          240 sound/usb/line6/capture.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          242 sound/usb/line6/capture.c 	line6_pcm_release(line6pcm, LINE6_STREAM_CAPTURE_HELPER);
line6pcm          258 sound/usb/line6/capture.c int line6_create_audio_in_urbs(struct snd_line6_pcm *line6pcm)
line6pcm          260 sound/usb/line6/capture.c 	struct usb_line6 *line6 = line6pcm->line6;
line6pcm          263 sound/usb/line6/capture.c 	line6pcm->in.urbs = kcalloc(line6->iso_buffers, sizeof(struct urb *),
line6pcm          265 sound/usb/line6/capture.c 	if (line6pcm->in.urbs == NULL)
line6pcm          273 sound/usb/line6/capture.c 		urb = line6pcm->in.urbs[i] =
line6pcm           18 sound/usb/line6/capture.h extern void line6_capture_copy(struct snd_line6_pcm *line6pcm, char *fbuf,
line6pcm           20 sound/usb/line6/capture.h extern void line6_capture_check_period(struct snd_line6_pcm *line6pcm,
line6pcm           22 sound/usb/line6/capture.h extern int line6_create_audio_in_urbs(struct snd_line6_pcm *line6pcm);
line6pcm           23 sound/usb/line6/capture.h extern int line6_submit_audio_in_all_urbs(struct snd_line6_pcm *line6pcm);
line6pcm          829 sound/usb/line6/driver.c 	if (line6->line6pcm)
line6pcm          830 sound/usb/line6/driver.c 		line6_pcm_disconnect(line6->line6pcm);
line6pcm          852 sound/usb/line6/driver.c 	struct snd_line6_pcm *line6pcm = line6->line6pcm;
line6pcm          859 sound/usb/line6/driver.c 	if (line6pcm != NULL)
line6pcm          860 sound/usb/line6/driver.c 		line6pcm->flags = 0;
line6pcm          144 sound/usb/line6/driver.h 	struct snd_line6_pcm *line6pcm;
line6pcm           33 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm           35 sound/usb/line6/pcm.c 	ucontrol->value.integer.value[0] = line6pcm->impulse_volume;
line6pcm           42 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm           46 sound/usb/line6/pcm.c 	if (line6pcm->impulse_volume == value)
line6pcm           49 sound/usb/line6/pcm.c 	line6pcm->impulse_volume = value;
line6pcm           51 sound/usb/line6/pcm.c 		err = line6_pcm_acquire(line6pcm, LINE6_STREAM_IMPULSE, true);
line6pcm           53 sound/usb/line6/pcm.c 			line6pcm->impulse_volume = 0;
line6pcm           57 sound/usb/line6/pcm.c 		line6_pcm_release(line6pcm, LINE6_STREAM_IMPULSE);
line6pcm           76 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm           78 sound/usb/line6/pcm.c 	ucontrol->value.integer.value[0] = line6pcm->impulse_period;
line6pcm           85 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm           88 sound/usb/line6/pcm.c 	if (line6pcm->impulse_period == value)
line6pcm           91 sound/usb/line6/pcm.c 	line6pcm->impulse_period = value;
line6pcm           98 sound/usb/line6/pcm.c static void line6_unlink_audio_urbs(struct snd_line6_pcm *line6pcm,
line6pcm          103 sound/usb/line6/pcm.c 	for (i = 0; i < line6pcm->line6->iso_buffers; i++) {
line6pcm          114 sound/usb/line6/pcm.c static void line6_wait_clear_audio_urbs(struct snd_line6_pcm *line6pcm,
line6pcm          123 sound/usb/line6/pcm.c 		for (i = 0; i < line6pcm->line6->iso_buffers; i++) {
line6pcm          133 sound/usb/line6/pcm.c 		dev_err(line6pcm->line6->ifcdev,
line6pcm          138 sound/usb/line6/pcm.c get_stream(struct snd_line6_pcm *line6pcm, int direction)
line6pcm          141 sound/usb/line6/pcm.c 		&line6pcm->out : &line6pcm->in;
line6pcm          147 sound/usb/line6/pcm.c static int line6_buffer_acquire(struct snd_line6_pcm *line6pcm,
line6pcm          152 sound/usb/line6/pcm.c 			line6pcm->max_packet_size_out :
line6pcm          153 sound/usb/line6/pcm.c 			line6pcm->max_packet_size_in;
line6pcm          158 sound/usb/line6/pcm.c 			kmalloc(array3_size(line6pcm->line6->iso_buffers,
line6pcm          170 sound/usb/line6/pcm.c static void line6_buffer_release(struct snd_line6_pcm *line6pcm,
line6pcm          175 sound/usb/line6/pcm.c 		line6_wait_clear_audio_urbs(line6pcm, pstr);
line6pcm          182 sound/usb/line6/pcm.c static int line6_stream_start(struct snd_line6_pcm *line6pcm, int direction,
line6pcm          186 sound/usb/line6/pcm.c 	struct line6_pcm_stream *pstr = get_stream(line6pcm, direction);
line6pcm          195 sound/usb/line6/pcm.c 			ret = line6_submit_audio_out_all_urbs(line6pcm);
line6pcm          197 sound/usb/line6/pcm.c 			ret = line6_submit_audio_in_all_urbs(line6pcm);
line6pcm          207 sound/usb/line6/pcm.c static void line6_stream_stop(struct snd_line6_pcm *line6pcm, int direction,
line6pcm          211 sound/usb/line6/pcm.c 	struct line6_pcm_stream *pstr = get_stream(line6pcm, direction);
line6pcm          217 sound/usb/line6/pcm.c 		line6_unlink_audio_urbs(line6pcm, pstr);
line6pcm          220 sound/usb/line6/pcm.c 			line6pcm->prev_fbuf = NULL;
line6pcm          221 sound/usb/line6/pcm.c 			line6pcm->prev_fsize = 0;
line6pcm          230 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          234 sound/usb/line6/pcm.c 	clear_bit(LINE6_FLAG_PREPARED, &line6pcm->flags);
line6pcm          244 sound/usb/line6/pcm.c 				(line6pcm->line6->properties->capabilities &
line6pcm          246 sound/usb/line6/pcm.c 				err = line6_stream_start(line6pcm, SNDRV_PCM_STREAM_PLAYBACK,
line6pcm          251 sound/usb/line6/pcm.c 			err = line6_stream_start(line6pcm, s->stream,
line6pcm          260 sound/usb/line6/pcm.c 				(line6pcm->line6->properties->capabilities &
line6pcm          262 sound/usb/line6/pcm.c 				line6_stream_stop(line6pcm, SNDRV_PCM_STREAM_PLAYBACK,
line6pcm          265 sound/usb/line6/pcm.c 			line6_stream_stop(line6pcm, s->stream,
line6pcm          272 sound/usb/line6/pcm.c 			set_bit(LINE6_FLAG_PAUSE_PLAYBACK, &line6pcm->flags);
line6pcm          278 sound/usb/line6/pcm.c 			clear_bit(LINE6_FLAG_PAUSE_PLAYBACK, &line6pcm->flags);
line6pcm          292 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          293 sound/usb/line6/pcm.c 	struct line6_pcm_stream *pstr = get_stream(line6pcm, substream->stream);
line6pcm          301 sound/usb/line6/pcm.c int line6_pcm_acquire(struct snd_line6_pcm *line6pcm, int type, bool start)
line6pcm          307 sound/usb/line6/pcm.c 	mutex_lock(&line6pcm->state_mutex);
line6pcm          309 sound/usb/line6/pcm.c 		pstr = get_stream(line6pcm, dir);
line6pcm          310 sound/usb/line6/pcm.c 		ret = line6_buffer_acquire(line6pcm, pstr, dir, type);
line6pcm          314 sound/usb/line6/pcm.c 			line6_wait_clear_audio_urbs(line6pcm, pstr);
line6pcm          318 sound/usb/line6/pcm.c 			ret = line6_stream_start(line6pcm, dir, type);
line6pcm          324 sound/usb/line6/pcm.c 	mutex_unlock(&line6pcm->state_mutex);
line6pcm          326 sound/usb/line6/pcm.c 		line6_pcm_release(line6pcm, type);
line6pcm          332 sound/usb/line6/pcm.c void line6_pcm_release(struct snd_line6_pcm *line6pcm, int type)
line6pcm          337 sound/usb/line6/pcm.c 	mutex_lock(&line6pcm->state_mutex);
line6pcm          339 sound/usb/line6/pcm.c 		line6_stream_stop(line6pcm, dir, type);
line6pcm          341 sound/usb/line6/pcm.c 		pstr = get_stream(line6pcm, dir);
line6pcm          342 sound/usb/line6/pcm.c 		line6_buffer_release(line6pcm, pstr, type);
line6pcm          344 sound/usb/line6/pcm.c 	mutex_unlock(&line6pcm->state_mutex);
line6pcm          353 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          354 sound/usb/line6/pcm.c 	struct line6_pcm_stream *pstr = get_stream(line6pcm, substream->stream);
line6pcm          356 sound/usb/line6/pcm.c 	mutex_lock(&line6pcm->state_mutex);
line6pcm          357 sound/usb/line6/pcm.c 	ret = line6_buffer_acquire(line6pcm, pstr, substream->stream,
line6pcm          365 sound/usb/line6/pcm.c 		line6_buffer_release(line6pcm, pstr, LINE6_STREAM_PCM);
line6pcm          371 sound/usb/line6/pcm.c 	mutex_unlock(&line6pcm->state_mutex);
line6pcm          378 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          379 sound/usb/line6/pcm.c 	struct line6_pcm_stream *pstr = get_stream(line6pcm, substream->stream);
line6pcm          381 sound/usb/line6/pcm.c 	mutex_lock(&line6pcm->state_mutex);
line6pcm          382 sound/usb/line6/pcm.c 	line6_buffer_release(line6pcm, pstr, LINE6_STREAM_PCM);
line6pcm          383 sound/usb/line6/pcm.c 	mutex_unlock(&line6pcm->state_mutex);
line6pcm          404 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          407 sound/usb/line6/pcm.c 		ucontrol->value.integer.value[i] = line6pcm->volume_playback[i];
line6pcm          417 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          420 sound/usb/line6/pcm.c 		if (line6pcm->volume_playback[i] !=
line6pcm          422 sound/usb/line6/pcm.c 			line6pcm->volume_playback[i] =
line6pcm          478 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_pcm_chip(pcm);
line6pcm          480 sound/usb/line6/pcm.c 	cleanup_urbs(&line6pcm->out, line6pcm->line6->iso_buffers);
line6pcm          481 sound/usb/line6/pcm.c 	cleanup_urbs(&line6pcm->in, line6pcm->line6->iso_buffers);
line6pcm          482 sound/usb/line6/pcm.c 	kfree(line6pcm);
line6pcm          514 sound/usb/line6/pcm.c void line6_pcm_disconnect(struct snd_line6_pcm *line6pcm)
line6pcm          516 sound/usb/line6/pcm.c 	line6_unlink_audio_urbs(line6pcm, &line6pcm->out);
line6pcm          517 sound/usb/line6/pcm.c 	line6_unlink_audio_urbs(line6pcm, &line6pcm->in);
line6pcm          518 sound/usb/line6/pcm.c 	line6_wait_clear_audio_urbs(line6pcm, &line6pcm->out);
line6pcm          519 sound/usb/line6/pcm.c 	line6_wait_clear_audio_urbs(line6pcm, &line6pcm->in);
line6pcm          533 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm;
line6pcm          542 sound/usb/line6/pcm.c 	line6pcm = kzalloc(sizeof(*line6pcm), GFP_KERNEL);
line6pcm          543 sound/usb/line6/pcm.c 	if (!line6pcm)
line6pcm          546 sound/usb/line6/pcm.c 	mutex_init(&line6pcm->state_mutex);
line6pcm          547 sound/usb/line6/pcm.c 	line6pcm->pcm = pcm;
line6pcm          548 sound/usb/line6/pcm.c 	line6pcm->properties = properties;
line6pcm          549 sound/usb/line6/pcm.c 	line6pcm->volume_playback[0] = line6pcm->volume_playback[1] = 255;
line6pcm          550 sound/usb/line6/pcm.c 	line6pcm->volume_monitor = 255;
line6pcm          551 sound/usb/line6/pcm.c 	line6pcm->line6 = line6;
line6pcm          553 sound/usb/line6/pcm.c 	spin_lock_init(&line6pcm->out.lock);
line6pcm          554 sound/usb/line6/pcm.c 	spin_lock_init(&line6pcm->in.lock);
line6pcm          555 sound/usb/line6/pcm.c 	line6pcm->impulse_period = LINE6_IMPULSE_DEFAULT_PERIOD;
line6pcm          557 sound/usb/line6/pcm.c 	line6->line6pcm = line6pcm;
line6pcm          559 sound/usb/line6/pcm.c 	pcm->private_data = line6pcm;
line6pcm          562 sound/usb/line6/pcm.c 	line6pcm->max_packet_size_in =
line6pcm          565 sound/usb/line6/pcm.c 	line6pcm->max_packet_size_out =
line6pcm          568 sound/usb/line6/pcm.c 	if (!line6pcm->max_packet_size_in || !line6pcm->max_packet_size_out) {
line6pcm          569 sound/usb/line6/pcm.c 		dev_err(line6pcm->line6->ifcdev,
line6pcm          574 sound/usb/line6/pcm.c 	err = line6_create_audio_out_urbs(line6pcm);
line6pcm          578 sound/usb/line6/pcm.c 	err = line6_create_audio_in_urbs(line6pcm);
line6pcm          585 sound/usb/line6/pcm.c 				  snd_ctl_new1(&line6_controls[i], line6pcm));
line6pcm          597 sound/usb/line6/pcm.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          598 sound/usb/line6/pcm.c 	struct line6_pcm_stream *pstr = get_stream(line6pcm, substream->stream);
line6pcm          600 sound/usb/line6/pcm.c 	mutex_lock(&line6pcm->state_mutex);
line6pcm          602 sound/usb/line6/pcm.c 		line6_wait_clear_audio_urbs(line6pcm, pstr);
line6pcm          604 sound/usb/line6/pcm.c 	if (!test_and_set_bit(LINE6_FLAG_PREPARED, &line6pcm->flags)) {
line6pcm          605 sound/usb/line6/pcm.c 		line6pcm->out.count = 0;
line6pcm          606 sound/usb/line6/pcm.c 		line6pcm->out.pos = 0;
line6pcm          607 sound/usb/line6/pcm.c 		line6pcm->out.pos_done = 0;
line6pcm          608 sound/usb/line6/pcm.c 		line6pcm->out.bytes = 0;
line6pcm          609 sound/usb/line6/pcm.c 		line6pcm->in.count = 0;
line6pcm          610 sound/usb/line6/pcm.c 		line6pcm->in.pos_done = 0;
line6pcm          611 sound/usb/line6/pcm.c 		line6pcm->in.bytes = 0;
line6pcm          614 sound/usb/line6/pcm.c 	mutex_unlock(&line6pcm->state_mutex);
line6pcm           37 sound/usb/line6/pcm.h #define get_substream(line6pcm, stream)	\
line6pcm           38 sound/usb/line6/pcm.h 		(line6pcm->pcm->streams[stream].substream)
line6pcm          190 sound/usb/line6/pcm.h extern void line6_pcm_disconnect(struct snd_line6_pcm *line6pcm);
line6pcm          191 sound/usb/line6/pcm.h extern int line6_pcm_acquire(struct snd_line6_pcm *line6pcm, int type,
line6pcm          193 sound/usb/line6/pcm.h extern void line6_pcm_release(struct snd_line6_pcm *line6pcm, int type);
line6pcm           65 sound/usb/line6/playback.c static void create_impulse_test_signal(struct snd_line6_pcm *line6pcm,
line6pcm           72 sound/usb/line6/playback.c 		short *pi = (short *)line6pcm->prev_fbuf;
line6pcm           83 sound/usb/line6/playback.c 		unsigned char *pi = line6pcm->prev_fbuf;
line6pcm           97 sound/usb/line6/playback.c 	if (--line6pcm->impulse_count <= 0) {
line6pcm          100 sound/usb/line6/playback.c 		    line6pcm->impulse_volume;
line6pcm          101 sound/usb/line6/playback.c 		line6pcm->impulse_count = line6pcm->impulse_period;
line6pcm          140 sound/usb/line6/playback.c static int submit_audio_out_urb(struct snd_line6_pcm *line6pcm)
line6pcm          146 sound/usb/line6/playback.c 		line6pcm->properties->bytes_per_channel *
line6pcm          147 sound/usb/line6/playback.c 		line6pcm->properties->playback_hw.channels_max;
line6pcm          149 sound/usb/line6/playback.c 		line6pcm->properties->rates.rats[0].num_min;
line6pcm          151 sound/usb/line6/playback.c 		line6pcm->properties->rates.rats[0].den *
line6pcm          152 sound/usb/line6/playback.c 		(line6pcm->line6->intervals_per_second / LINE6_ISO_INTERVAL);
line6pcm          155 sound/usb/line6/playback.c 	index = find_first_zero_bit(&line6pcm->out.active_urbs,
line6pcm          156 sound/usb/line6/playback.c 				    line6pcm->line6->iso_buffers);
line6pcm          158 sound/usb/line6/playback.c 	if (index < 0 || index >= line6pcm->line6->iso_buffers) {
line6pcm          159 sound/usb/line6/playback.c 		dev_err(line6pcm->line6->ifcdev, "no free URB found\n");
line6pcm          163 sound/usb/line6/playback.c 	urb_out = line6pcm->out.urbs[index];
line6pcm          173 sound/usb/line6/playback.c 		fsize = line6pcm->prev_fsize;
line6pcm          177 sound/usb/line6/playback.c 			line6pcm->out.count += frame_increment;
line6pcm          178 sound/usb/line6/playback.c 			n = line6pcm->out.count / frame_factor;
line6pcm          179 sound/usb/line6/playback.c 			line6pcm->out.count -= n * frame_factor;
line6pcm          192 sound/usb/line6/playback.c 		dev_err(line6pcm->line6->ifcdev, "driver bug: urb_size = 0\n");
line6pcm          198 sound/usb/line6/playback.c 	    line6pcm->out.buffer +
line6pcm          199 sound/usb/line6/playback.c 	    index * LINE6_ISO_PACKETS * line6pcm->max_packet_size_out;
line6pcm          201 sound/usb/line6/playback.c 	urb_out->context = line6pcm;
line6pcm          203 sound/usb/line6/playback.c 	if (test_bit(LINE6_STREAM_PCM, &line6pcm->out.running) &&
line6pcm          204 sound/usb/line6/playback.c 	    !test_bit(LINE6_FLAG_PAUSE_PLAYBACK, &line6pcm->flags)) {
line6pcm          206 sound/usb/line6/playback.c 		    get_substream(line6pcm, SNDRV_PCM_STREAM_PLAYBACK)->runtime;
line6pcm          208 sound/usb/line6/playback.c 		if (line6pcm->out.pos + urb_frames > runtime->buffer_size) {
line6pcm          215 sound/usb/line6/playback.c 			len = runtime->buffer_size - line6pcm->out.pos;
line6pcm          220 sound/usb/line6/playback.c 				       line6pcm->out.pos * bytes_per_frame,
line6pcm          226 sound/usb/line6/playback.c 				dev_err(line6pcm->line6->ifcdev, "driver bug: len = %d\n",
line6pcm          231 sound/usb/line6/playback.c 			       line6pcm->out.pos * bytes_per_frame,
line6pcm          235 sound/usb/line6/playback.c 		line6pcm->out.pos += urb_frames;
line6pcm          236 sound/usb/line6/playback.c 		if (line6pcm->out.pos >= runtime->buffer_size)
line6pcm          237 sound/usb/line6/playback.c 			line6pcm->out.pos -= runtime->buffer_size;
line6pcm          239 sound/usb/line6/playback.c 		change_volume(urb_out, line6pcm->volume_playback,
line6pcm          246 sound/usb/line6/playback.c 	spin_lock_nested(&line6pcm->in.lock, SINGLE_DEPTH_NESTING);
line6pcm          247 sound/usb/line6/playback.c 	if (line6pcm->prev_fbuf) {
line6pcm          248 sound/usb/line6/playback.c 		if (test_bit(LINE6_STREAM_IMPULSE, &line6pcm->out.running)) {
line6pcm          249 sound/usb/line6/playback.c 			create_impulse_test_signal(line6pcm, urb_out,
line6pcm          251 sound/usb/line6/playback.c 			if (test_bit(LINE6_STREAM_PCM, &line6pcm->in.running)) {
line6pcm          252 sound/usb/line6/playback.c 				line6_capture_copy(line6pcm,
line6pcm          256 sound/usb/line6/playback.c 				line6_capture_check_period(line6pcm,
line6pcm          260 sound/usb/line6/playback.c 			if (!(line6pcm->line6->properties->capabilities & LINE6_CAP_HWMON)
line6pcm          261 sound/usb/line6/playback.c 			    && line6pcm->out.running && line6pcm->in.running)
line6pcm          262 sound/usb/line6/playback.c 				add_monitor_signal(urb_out, line6pcm->prev_fbuf,
line6pcm          263 sound/usb/line6/playback.c 						   line6pcm->volume_monitor,
line6pcm          266 sound/usb/line6/playback.c 		line6pcm->prev_fbuf = NULL;
line6pcm          267 sound/usb/line6/playback.c 		line6pcm->prev_fsize = 0;
line6pcm          269 sound/usb/line6/playback.c 	spin_unlock(&line6pcm->in.lock);
line6pcm          274 sound/usb/line6/playback.c 		set_bit(index, &line6pcm->out.active_urbs);
line6pcm          276 sound/usb/line6/playback.c 		dev_err(line6pcm->line6->ifcdev,
line6pcm          286 sound/usb/line6/playback.c int line6_submit_audio_out_all_urbs(struct snd_line6_pcm *line6pcm)
line6pcm          290 sound/usb/line6/playback.c 	for (i = 0; i < line6pcm->line6->iso_buffers; ++i) {
line6pcm          291 sound/usb/line6/playback.c 		ret = submit_audio_out_urb(line6pcm);
line6pcm          306 sound/usb/line6/playback.c 	struct snd_line6_pcm *line6pcm = (struct snd_line6_pcm *)urb->context;
line6pcm          308 sound/usb/line6/playback.c 	    get_substream(line6pcm, SNDRV_PCM_STREAM_PLAYBACK);
line6pcm          310 sound/usb/line6/playback.c 		line6pcm->properties->bytes_per_channel *
line6pcm          311 sound/usb/line6/playback.c 		line6pcm->properties->playback_hw.channels_max;
line6pcm          317 sound/usb/line6/playback.c 	line6pcm->out.last_frame = urb->start_frame;
line6pcm          320 sound/usb/line6/playback.c 	for (index = 0; index < line6pcm->line6->iso_buffers; index++)
line6pcm          321 sound/usb/line6/playback.c 		if (urb == line6pcm->out.urbs[index])
line6pcm          324 sound/usb/line6/playback.c 	if (index >= line6pcm->line6->iso_buffers)
line6pcm          330 sound/usb/line6/playback.c 	spin_lock_irqsave(&line6pcm->out.lock, flags);
line6pcm          332 sound/usb/line6/playback.c 	if (test_bit(LINE6_STREAM_PCM, &line6pcm->out.running)) {
line6pcm          335 sound/usb/line6/playback.c 		line6pcm->out.pos_done +=
line6pcm          338 sound/usb/line6/playback.c 		if (line6pcm->out.pos_done >= runtime->buffer_size)
line6pcm          339 sound/usb/line6/playback.c 			line6pcm->out.pos_done -= runtime->buffer_size;
line6pcm          342 sound/usb/line6/playback.c 	clear_bit(index, &line6pcm->out.active_urbs);
line6pcm          350 sound/usb/line6/playback.c 	if (test_and_clear_bit(index, &line6pcm->out.unlink_urbs))
line6pcm          354 sound/usb/line6/playback.c 		submit_audio_out_urb(line6pcm);
line6pcm          356 sound/usb/line6/playback.c 		if (test_bit(LINE6_STREAM_PCM, &line6pcm->out.running)) {
line6pcm          357 sound/usb/line6/playback.c 			line6pcm->out.bytes += length;
line6pcm          358 sound/usb/line6/playback.c 			if (line6pcm->out.bytes >= line6pcm->out.period) {
line6pcm          359 sound/usb/line6/playback.c 				line6pcm->out.bytes %= line6pcm->out.period;
line6pcm          360 sound/usb/line6/playback.c 				spin_unlock(&line6pcm->out.lock);
line6pcm          362 sound/usb/line6/playback.c 				spin_lock(&line6pcm->out.lock);
line6pcm          366 sound/usb/line6/playback.c 	spin_unlock_irqrestore(&line6pcm->out.lock, flags);
line6pcm          374 sound/usb/line6/playback.c 	struct snd_line6_pcm *line6pcm = snd_pcm_substream_chip(substream);
line6pcm          377 sound/usb/line6/playback.c 					    &line6pcm->properties->rates);
line6pcm          381 sound/usb/line6/playback.c 	runtime->hw = line6pcm->properties->playback_hw;
line6pcm          403 sound/usb/line6/playback.c int line6_create_audio_out_urbs(struct snd_line6_pcm *line6pcm)
line6pcm          405 sound/usb/line6/playback.c 	struct usb_line6 *line6 = line6pcm->line6;
line6pcm          408 sound/usb/line6/playback.c 	line6pcm->out.urbs = kcalloc(line6->iso_buffers, sizeof(struct urb *),
line6pcm          410 sound/usb/line6/playback.c 	if (line6pcm->out.urbs == NULL)
line6pcm          418 sound/usb/line6/playback.c 		urb = line6pcm->out.urbs[i] =
line6pcm           28 sound/usb/line6/playback.h extern int line6_create_audio_out_urbs(struct snd_line6_pcm *line6pcm);
line6pcm           29 sound/usb/line6/playback.h extern int line6_submit_audio_out_all_urbs(struct snd_line6_pcm *line6pcm);
line6pcm          328 sound/usb/line6/pod.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          329 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6pcm->line6);
line6pcm          339 sound/usb/line6/pod.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          340 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6pcm->line6);
line6pcm          391 sound/usb/line6/pod.c 			  snd_ctl_new1(&pod_control_monitor, line6->line6pcm));
line6pcm          156 sound/usb/line6/toneport.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          158 sound/usb/line6/toneport.c 	ucontrol->value.integer.value[0] = line6pcm->volume_monitor;
line6pcm          166 sound/usb/line6/toneport.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          169 sound/usb/line6/toneport.c 	if (ucontrol->value.integer.value[0] == line6pcm->volume_monitor)
line6pcm          172 sound/usb/line6/toneport.c 	line6pcm->volume_monitor = ucontrol->value.integer.value[0];
line6pcm          174 sound/usb/line6/toneport.c 	if (line6pcm->volume_monitor > 0) {
line6pcm          175 sound/usb/line6/toneport.c 		err = line6_pcm_acquire(line6pcm, LINE6_STREAM_MONITOR, true);
line6pcm          177 sound/usb/line6/toneport.c 			line6pcm->volume_monitor = 0;
line6pcm          178 sound/usb/line6/toneport.c 			line6_pcm_release(line6pcm, LINE6_STREAM_MONITOR);
line6pcm          182 sound/usb/line6/toneport.c 		line6_pcm_release(line6pcm, LINE6_STREAM_MONITOR);
line6pcm          211 sound/usb/line6/toneport.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          212 sound/usb/line6/toneport.c 	struct usb_line6_toneport *toneport = line6_to_toneport(line6pcm->line6);
line6pcm          222 sound/usb/line6/toneport.c 	struct snd_line6_pcm *line6pcm = snd_kcontrol_chip(kcontrol);
line6pcm          223 sound/usb/line6/toneport.c 	struct usb_line6_toneport *toneport = line6_to_toneport(line6pcm->line6);
line6pcm          240 sound/usb/line6/toneport.c 	line6_pcm_acquire(line6->line6pcm, LINE6_STREAM_MONITOR, true);
line6pcm          426 sound/usb/line6/toneport.c 				       line6->line6pcm));
line6pcm          435 sound/usb/line6/toneport.c 					     line6->line6pcm));