Lines Matching defs:audio
9 * on the device - the audio streams are simply sinked to and
17 #include <linux/usb/audio.h>
56 static inline struct f_uac1_opts *g_audio_to_uac1_opts(struct g_audio *audio)
58 return container_of(audio->func.fi, struct f_uac1_opts, func_inst);
368 struct g_audio *audio = req->context;
369 struct f_uac1 *uac1 = func_to_uac1(&audio->func);
376 static int audio_notify(struct g_audio *audio, int unit_id, int cs)
378 struct f_uac1 *uac1 = func_to_uac1(&audio->func);
409 req->context = audio;
433 struct g_audio *audio = func_to_g_audio(fn);
434 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
452 u_audio_get_mute(audio, is_playback, &mute);
460 u_audio_get_volume(audio, is_playback, &volume);
467 dev_err(&audio->gadget->dev,
472 dev_err(&audio->gadget->dev,
484 struct g_audio *audio = func_to_g_audio(fn);
485 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
514 dev_err(&audio->gadget->dev,
519 dev_err(&audio->gadget->dev,
531 struct g_audio *audio = func_to_g_audio(fn);
532 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
561 dev_err(&audio->gadget->dev,
566 dev_err(&audio->gadget->dev,
578 struct g_audio *audio = func_to_g_audio(fn);
579 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
608 dev_err(&audio->gadget->dev,
613 dev_err(&audio->gadget->dev,
624 struct g_audio *audio = req->context;
625 struct usb_composite_dev *cdev = audio->func.config->cdev;
626 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
627 struct f_uac1 *uac1 = func_to_uac1(&audio->func);
649 u_audio_set_mute(audio, is_playback, mute);
657 u_audio_set_volume(audio, is_playback, volume);
661 dev_err(&audio->gadget->dev,
667 dev_err(&audio->gadget->dev,
679 struct g_audio *audio = func_to_g_audio(fn);
680 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
681 struct f_uac1 *uac1 = func_to_uac1(&audio->func);
691 req->context = audio;
696 dev_err(&audio->gadget->dev,
862 DBG(cdev, "audio req%02x.%02x v%04x i%04x l%d\n",
869 ERROR(cdev, "audio response on err %d\n", value);
881 struct g_audio *audio = func_to_g_audio(f);
901 config_ep_by_speed(gadget, &audio->func, uac1->int_ep);
1122 static int f_audio_validate_opts(struct g_audio *audio, struct device *dev)
1124 struct f_uac1_opts *opts = g_audio_to_uac1_opts(audio);
1174 /* audio function driver setup/binding */
1181 struct g_audio *audio = func_to_g_audio(f);
1189 status = f_audio_validate_opts(audio, dev);
1333 audio->gadget = gadget;
1355 audio->out_ep = ep;
1356 audio->out_ep->desc = &as_out_ep_desc;
1363 audio->in_ep = ep;
1364 audio->in_ep->desc = &as_in_ep_desc;
1375 audio->out_ep_maxpsize = le16_to_cpu(as_out_ep_desc.wMaxPacketSize);
1376 audio->in_ep_maxpsize = le16_to_cpu(as_in_ep_desc.wMaxPacketSize);
1377 audio->params.c_chmask = audio_opts->c_chmask;
1378 memcpy(audio->params.c_srates, audio_opts->c_srates,
1379 sizeof(audio->params.c_srates));
1380 audio->params.c_ssize = audio_opts->c_ssize;
1382 audio->params.p_fu.id = USB_IN_FU_ID;
1383 audio->params.p_fu.mute_present = audio_opts->p_mute_present;
1384 audio->params.p_fu.volume_present =
1386 audio->params.p_fu.volume_min = audio_opts->p_volume_min;
1387 audio->params.p_fu.volume_max = audio_opts->p_volume_max;
1388 audio->params.p_fu.volume_res = audio_opts->p_volume_res;
1390 audio->params.p_chmask = audio_opts->p_chmask;
1391 memcpy(audio->params.p_srates, audio_opts->p_srates,
1392 sizeof(audio->params.p_srates));
1393 audio->params.p_ssize = audio_opts->p_ssize;
1395 audio->params.c_fu.id = USB_OUT_FU_ID;
1396 audio->params.c_fu.mute_present = audio_opts->c_mute_present;
1397 audio->params.c_fu.volume_present =
1399 audio->params.c_fu.volume_min = audio_opts->c_volume_min;
1400 audio->params.c_fu.volume_max = audio_opts->c_volume_max;
1401 audio->params.c_fu.volume_res = audio_opts->c_volume_res;
1403 audio->params.req_number = audio_opts->req_number;
1404 audio->params.fb_max = FBACK_FAST_MAX;
1406 audio->notify = audio_notify;
1408 status = g_audio_setup(audio, "UAC1_PCM", "UAC1_Gadget");
1695 struct g_audio *audio;
1698 audio = func_to_g_audio(f);
1700 kfree(audio);
1708 struct g_audio *audio = func_to_g_audio(f);
1710 g_audio_cleanup(audio);
1721 audio->gadget = NULL;