linux/sound/soc/intel/avs/topology.h

/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright(c) 2021 Intel Corporation
 *
 * Authors: Cezary Rojewski <[email protected]>
 *          Amadeusz Slawinski <[email protected]>
 */

#ifndef __SOUND_SOC_INTEL_AVS_TPLG_H
#define __SOUND_SOC_INTEL_AVS_TPLG_H

#include <linux/list.h>
#include "messages.h"

#define INVALID_OBJECT_ID

struct snd_soc_component;

struct avs_tplg {};

struct avs_tplg_library {};

/* Matches header of struct avs_mod_cfg_base. */
struct avs_tplg_modcfg_base {};

struct avs_tplg_pin_format {};

struct avs_tplg_modcfg_ext {};

/* Specifies path behaviour during PCM ->trigger(START) command. */
enum avs_tplg_trigger {};

struct avs_tplg_pplcfg {};

struct avs_tplg_binding {};

struct avs_tplg_path_template_id {};

struct avs_tplg_path_template {};

struct avs_tplg_init_config {};

struct avs_tplg_path {};

struct avs_tplg_pipeline {};

struct avs_tplg_module {};

struct avs_tplg *avs_tplg_new(struct snd_soc_component *comp);

int avs_load_topology(struct snd_soc_component *comp, const char *filename);
int avs_remove_topology(struct snd_soc_component *comp);

#endif