Lines Matching full:plugin
45 #include <tinyalsa/plugin.h>
78 /** pointer to plugin operation */
80 struct pcm_plugin *plugin; member
113 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_close() local
115 plug_data->ops->close(plugin); in pcm_plug_close()
208 static int pcm_plug_get_params(struct pcm_plugin *plugin, in pcm_plug_get_params() argument
217 * using the hw_param constraints provided by plugin in pcm_plug_get_params()
218 * via the plugin->constraints in pcm_plug_get_params()
223 plugin->constraints->access); in pcm_plug_get_params()
225 plugin->constraints->format); in pcm_plug_get_params()
231 &plugin->constraints->bit_width, 1); in pcm_plug_get_params()
233 &plugin->constraints->channels, 1); in pcm_plug_get_params()
235 &plugin->constraints->rate, 1); in pcm_plug_get_params()
237 &plugin->constraints->period_bytes, 0); in pcm_plug_get_params()
239 &plugin->constraints->periods, 1); in pcm_plug_get_params()
243 bw.min = plugin->constraints->bit_width.min; in pcm_plug_get_params()
244 bw.max = plugin->constraints->bit_width.max; in pcm_plug_get_params()
246 ch.min = plugin->constraints->channels.min; in pcm_plug_get_params()
247 ch.max = plugin->constraints->channels.max; in pcm_plug_get_params()
249 pb.min = plugin->constraints->period_bytes.min; in pcm_plug_get_params()
250 pb.max = plugin->constraints->period_bytes.max; in pcm_plug_get_params()
252 periods.min = plugin->constraints->periods.min; in pcm_plug_get_params()
253 periods.max = plugin->constraints->periods.max; in pcm_plug_get_params()
404 struct pcm_plugin *plugin = plug_data->plugin; in __pcm_plug_hrefine() local
409 rc = pcm_plug_get_params(plugin, &plug_params); in __pcm_plug_hrefine()
498 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_hparams() local
501 if (plugin->state != PCM_PLUG_STATE_OPEN) in pcm_plug_hparams()
515 rc = plug_data->ops->hw_params(plugin, params); in pcm_plug_hparams()
517 plugin->state = PCM_PLUG_STATE_SETUP; in pcm_plug_hparams()
525 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_sparams() local
527 if (plugin->state != PCM_PLUG_STATE_SETUP) in pcm_plug_sparams()
530 return plug_data->ops->sw_params(plugin, params); in pcm_plug_sparams()
536 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_sync_ptr() local
539 if (plugin->state >= PCM_PLUG_STATE_SETUP) { in pcm_plug_sync_ptr()
540 ret = plug_data->ops->sync_ptr(plugin, sync_ptr); in pcm_plug_sync_ptr()
542 sync_ptr->s.status.state = convert_plugin_to_pcm_state(plugin->state); in pcm_plug_sync_ptr()
551 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_writei_frames() local
553 if (plugin->state != PCM_PLUG_STATE_PREPARED && in pcm_plug_writei_frames()
554 plugin->state != PCM_PLUG_STATE_RUNNING) in pcm_plug_writei_frames()
557 return plug_data->ops->writei_frames(plugin, x); in pcm_plug_writei_frames()
563 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_readi_frames() local
565 if (plugin->state != PCM_PLUG_STATE_RUNNING) in pcm_plug_readi_frames()
568 return plug_data->ops->readi_frames(plugin, x); in pcm_plug_readi_frames()
574 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_ttstamp() local
576 if (plugin->state < PCM_PLUG_STATE_SETUP) in pcm_plug_ttstamp()
579 return plug_data->ops->ttstamp(plugin, tstamp); in pcm_plug_ttstamp()
584 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_prepare() local
587 if (plugin->state != PCM_PLUG_STATE_SETUP) in pcm_plug_prepare()
590 rc = plug_data->ops->prepare(plugin); in pcm_plug_prepare()
592 plugin->state = PCM_PLUG_STATE_PREPARED; in pcm_plug_prepare()
599 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_start() local
602 if (plugin->state != PCM_PLUG_STATE_PREPARED) in pcm_plug_start()
605 rc = plug_data->ops->start(plugin); in pcm_plug_start()
607 plugin->state = PCM_PLUG_STATE_RUNNING; in pcm_plug_start()
614 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_drop() local
617 rc = plug_data->ops->drop(plugin); in pcm_plug_drop()
619 plugin->state = PCM_PLUG_STATE_SETUP; in pcm_plug_drop()
627 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_ioctl() local
671 ret = plug_data->ops->ioctl(plugin, cmd, arg); in pcm_plug_ioctl()
682 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_poll() local
684 return plug_data->ops->poll(plugin, pfd, nfds, timeout); in pcm_plug_poll()
691 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_mmap() local
693 if (plugin->state != PCM_PLUG_STATE_SETUP) in pcm_plug_mmap()
696 return plug_data->ops->mmap(plugin, addr, length, prot, flags, offset); in pcm_plug_mmap()
702 struct pcm_plugin *plugin = plug_data->plugin; in pcm_plug_munmap() local
704 if (plugin->state != PCM_PLUG_STATE_SETUP) in pcm_plug_munmap()
707 return plug_data->ops->munmap(plugin, addr, length); in pcm_plug_munmap()
725 fprintf(stderr, "%s: failed to get plugin lib name\n", __func__); in pcm_plug_open()
746 rc = plug_data->ops->open(&plug_data->plugin, card, device, flags); in pcm_plug_open()
748 fprintf(stderr, "%s: failed to open plugin\n", __func__); in pcm_plug_open()
760 plug_data->plugin->state = PCM_PLUG_STATE_OPEN; in pcm_plug_open()