Lines Matching +full:instance +full:- +full:specific
4 * SPDX-License-Identifier: Apache-2.0
24 * with bespoke data argument for device/vendor specific config. There are also
25 * optional timestamping functions to get device specific audio clock time.
48 * clock-related configurations w.r.t the DAI
164 /** @brief Optional - Pre Start the transmission / reception of data.
183 * memory block. Behavior is implementation specific but usually this
188 /** @brief Optional - Post Stop the transmission / reception of data.
261 /** DAI specific data stream format. */
263 /** DAI specific configuration options. */
269 /** DAI specific link configuration. */
287 /** DMA instance id */
348 * @param dev Pointer to the device structure for the driver instance.
354 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_probe()
356 return api->probe(dev); in dai_probe()
365 * @param dev Pointer to the device structure for the driver instance.
371 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_remove()
373 return api->remove(dev); in dai_remove()
385 * If the function is called with the parameter cfg->frame_clk_freq set to 0
388 * @param dev Pointer to the device structure for the driver instance.
393 * @retval -EINVAL Invalid argument.
394 * @retval -ENOSYS DAI_DIR_BOTH value is not supported.
400 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_config_set()
402 return api->config_set(dev, cfg, bespoke_cfg); in dai_config_set()
408 * @param dev Pointer to the device structure for the driver instance
409 * @param cfg Pointer to the config structure to be filled by the instance
411 * @retval 0 if success, negative if invalid parameters or DAI un-configured
417 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_config_get()
419 return api->config_get(dev, cfg, dir); in dai_config_get()
425 * @param dev Pointer to the device structure for the driver instance
427 * @param stream_id Stream id: some drivers may have stream specific
436 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_get_properties()
438 return api->get_properties(dev, dir, stream_id); in dai_get_properties()
444 * @param dev Pointer to the device structure for the driver instance.
452 * @retval -EINVAL Invalid argument.
453 * @retval -EIO The trigger cannot be executed in the current state or a DMA
455 * @retval -ENOMEM RX/TX memory block not available.
456 * @retval -ENOSYS DAI_DIR_BOTH value is not supported.
462 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_trigger()
464 return api->trigger(dev, dir, cmd); in dai_trigger()
478 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_ts_config()
480 if (!api->ts_config) { in dai_ts_config()
481 return -EINVAL; in dai_ts_config()
484 return api->ts_config(dev, cfg); in dai_ts_config()
498 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_ts_start()
500 if (!api->ts_start) { in dai_ts_start()
501 return -EINVAL; in dai_ts_start()
504 return api->ts_start(dev, cfg); in dai_ts_start()
518 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_ts_stop()
520 if (!api->ts_stop) { in dai_ts_stop()
521 return -EINVAL; in dai_ts_stop()
524 return api->ts_stop(dev, cfg); in dai_ts_stop()
540 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_ts_get()
542 if (!api->ts_get) { in dai_ts_get()
543 return -EINVAL; in dai_ts_get()
546 return api->ts_get(dev, cfg, tsd); in dai_ts_get()
553 * It allows setting bespoke configuration parameters that are specific to
556 * specific to each DAI implementation. This function should only be called
560 * @param dev Pointer to the device structure for the driver instance.
565 * @retval -ENOSYS If the configuration update operation is not implemented.
572 const struct dai_driver_api *api = (const struct dai_driver_api *)dev->api; in dai_config_update()
574 if (!api->config_update) { in dai_config_update()
575 return -ENOSYS; in dai_config_update()
578 return api->config_update(dev, bespoke_cfg, size); in dai_config_update()