/* BE ID defined in sof-tgl-rt1308-hdmi-ssp.m4 */ #define HDMI_IN_BE_ID 0 #define SPK_BE_ID 2 #define DMIC01_BE_ID 3 #define INTEL_HDMI_BE_ID 5 /* extra BE links to support no-hdmi-in boards */ #define DMIC16K_BE_ID 4 #define BT_OFFLOAD_BE_ID 8
/* initialize ctx with board quirk */
ctx = sof_intel_board_get_ctx(&pdev->dev, sof_ssp_amp_quirk); if (!ctx) return -ENOMEM;
if (!dmi_check_system(chromebook_platforms) &&
(mach->mach_params.dmic_num == 0))
ctx->dmic_be_num = 0;
if (sof_ssp_amp_quirk & SOF_HDMI_PLAYBACK_PRESENT) { if (mach->mach_params.codec_mask & IDISP_CODEC_MASK)
ctx->hdmi.idisp_codec = true;
} else {
ctx->hdmi_num = 0;
}
ctx->link_order_overwrite = SSP_AMP_LINK_ORDER;
if (ctx->ssp_mask_hdmi_in) { /* the topology supports HDMI-IN uses fixed BE ID for DAI links */
ctx->link_id_overwrite = SSP_AMP_LINK_IDS;
}
/* update dai_link */
ret = sof_card_dai_links_create(&pdev->dev, &sof_ssp_amp_card, ctx); if (ret) return ret;
/* update codec_conf */ switch (ctx->amp_type) { case CODEC_CS35L41:
cs35l41_set_codec_conf(&sof_ssp_amp_card); break; case CODEC_RT1308: case CODEC_NONE: /* no codec conf required */ break; default:
dev_err(&pdev->dev, "invalid amp type %d\n", ctx->amp_type); return -EINVAL;
}
sof_ssp_amp_card.dev = &pdev->dev;
/* set platform name for each dailink */
ret = snd_soc_fixup_dai_links_platform_name(&sof_ssp_amp_card,
mach->mach_params.platform); if (ret) return ret;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.