#include <sound/soc.h>
#include "../common/soc-intel-quirks.h"
#include "hda_dsp_common.h"
#include "sof_board_helpers.h"
static int hdmi_init(struct snd_soc_pcm_runtime *rtd)
{ … }
int sof_intel_board_card_late_probe(struct snd_soc_card *card)
{ … }
EXPORT_SYMBOL_NS(…);
static const struct snd_soc_dapm_widget dmic_widgets[] = …;
static const struct snd_soc_dapm_route dmic_routes[] = …;
static int dmic_init(struct snd_soc_pcm_runtime *rtd)
{ … }
static const struct snd_soc_dapm_widget hda_widgets[] = …;
static const struct snd_soc_dapm_route hda_routes[] = …;
static int hda_init(struct snd_soc_pcm_runtime *rtd)
{ … }
enum sof_dmic_be_type { … };
enum sof_hda_be_type { … };
#define DEFAULT_LINK_ORDER …
static struct snd_soc_dai_link_component dmic_component[] = …;
SND_SOC_DAILINK_DEF(hda_analog_cpus,
DAILINK_COMP_ARRAY(COMP_CPU("Analog CPU DAI")));
SND_SOC_DAILINK_DEF(hda_analog_codecs,
DAILINK_COMP_ARRAY(COMP_CODEC("ehdaudio0D0", "Analog Codec DAI")));
SND_SOC_DAILINK_DEF(hda_digital_cpus,
DAILINK_COMP_ARRAY(COMP_CPU("Digital CPU DAI")));
SND_SOC_DAILINK_DEF(hda_digital_codecs,
DAILINK_COMP_ARRAY(COMP_CODEC("ehdaudio0D0", "Digital Codec DAI")));
static struct snd_soc_dai_link_component platform_component[] = …;
static int set_ssp_codec_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, enum snd_soc_acpi_intel_codec codec_type,
int ssp_codec)
{ … }
static int set_dmic_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, enum sof_dmic_be_type be_type)
{ … }
static int set_idisp_hdmi_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, int hdmi_id, bool idisp_codec)
{ … }
static int set_ssp_amp_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, enum snd_soc_acpi_intel_codec amp_type,
int ssp_amp)
{ … }
static int set_bt_offload_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, int ssp_bt)
{ … }
static int set_hdmi_in_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, int ssp_hdmi)
{ … }
static int set_hda_codec_link(struct device *dev, struct snd_soc_dai_link *link,
int be_id, enum sof_hda_be_type be_type)
{ … }
static int calculate_num_links(struct sof_card_private *ctx)
{ … }
int sof_intel_board_set_dai_link(struct device *dev, struct snd_soc_card *card,
struct sof_card_private *ctx)
{ … }
EXPORT_SYMBOL_NS(…);
struct sof_card_private *
sof_intel_board_get_ctx(struct device *dev, unsigned long board_quirk)
{ … }
EXPORT_SYMBOL_NS(…);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;
MODULE_IMPORT_NS(…);
MODULE_IMPORT_NS(…);