18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ci * 38c2ecf20Sopenharmony_ci * Copyright (c) 2018 Baylibre SAS. 48c2ecf20Sopenharmony_ci * Author: Jerome Brunet <jbrunet@baylibre.com> 58c2ecf20Sopenharmony_ci */ 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#ifndef _MESON_CODEC_GLUE_H 88c2ecf20Sopenharmony_ci#define _MESON_CODEC_GLUE_H 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#include <sound/soc.h> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cistruct meson_codec_glue_input { 138c2ecf20Sopenharmony_ci struct snd_soc_pcm_stream params; 148c2ecf20Sopenharmony_ci unsigned int fmt; 158c2ecf20Sopenharmony_ci}; 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci/* Input helpers */ 188c2ecf20Sopenharmony_cistruct meson_codec_glue_input * 198c2ecf20Sopenharmony_cimeson_codec_glue_input_get_data(struct snd_soc_dai *dai); 208c2ecf20Sopenharmony_ciint meson_codec_glue_input_hw_params(struct snd_pcm_substream *substream, 218c2ecf20Sopenharmony_ci struct snd_pcm_hw_params *params, 228c2ecf20Sopenharmony_ci struct snd_soc_dai *dai); 238c2ecf20Sopenharmony_ciint meson_codec_glue_input_set_fmt(struct snd_soc_dai *dai, 248c2ecf20Sopenharmony_ci unsigned int fmt); 258c2ecf20Sopenharmony_ciint meson_codec_glue_input_dai_probe(struct snd_soc_dai *dai); 268c2ecf20Sopenharmony_ciint meson_codec_glue_input_dai_remove(struct snd_soc_dai *dai); 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci/* Output helpers */ 298c2ecf20Sopenharmony_ciint meson_codec_glue_output_startup(struct snd_pcm_substream *substream, 308c2ecf20Sopenharmony_ci struct snd_soc_dai *dai); 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci#endif /* _MESON_CODEC_GLUE_H */ 33