mirror of
https://github.com/torvalds/linux.git
synced 2026-05-05 15:02:40 -04:00
Merge some cs42l42 patches into asoc-5.15
This commit is contained in:
@@ -278,6 +278,8 @@ config SND_SOC_SOF_HDA
|
||||
|
||||
config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
|
||||
tristate
|
||||
select SOUNDWIRE_INTEL if SND_SOC_SOF_INTEL_SOUNDWIRE
|
||||
select SND_INTEL_SOUNDWIRE_ACPI if SND_SOC_SOF_INTEL_SOUNDWIRE
|
||||
|
||||
config SND_SOC_SOF_INTEL_SOUNDWIRE
|
||||
tristate "SOF support for SoundWire"
|
||||
@@ -285,8 +287,6 @@ config SND_SOC_SOF_INTEL_SOUNDWIRE
|
||||
depends on SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
|
||||
depends on ACPI && SOUNDWIRE
|
||||
depends on !(SOUNDWIRE=m && SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE=y)
|
||||
select SOUNDWIRE_INTEL
|
||||
select SND_INTEL_SOUNDWIRE_ACPI
|
||||
help
|
||||
This adds support for SoundWire with Sound Open Firmware
|
||||
for Intel(R) platforms.
|
||||
|
||||
@@ -107,8 +107,8 @@ void hda_dsp_ipc_get_reply(struct snd_sof_dev *sdev)
|
||||
} else {
|
||||
/* reply correct size ? */
|
||||
if (reply.hdr.size != msg->reply_size &&
|
||||
/* getter payload is never known upfront */
|
||||
!(reply.hdr.cmd & SOF_IPC_GLB_PROBE)) {
|
||||
/* getter payload is never known upfront */
|
||||
((reply.hdr.cmd & SOF_GLB_TYPE_MASK) != SOF_IPC_GLB_PROBE)) {
|
||||
dev_err(sdev->dev, "error: reply expected %zu got %u bytes\n",
|
||||
msg->reply_size, reply.hdr.size);
|
||||
ret = -EINVAL;
|
||||
|
||||
@@ -200,12 +200,16 @@ static int hda_sdw_probe(struct snd_sof_dev *sdev)
|
||||
int hda_sdw_startup(struct snd_sof_dev *sdev)
|
||||
{
|
||||
struct sof_intel_hda_dev *hdev;
|
||||
struct snd_sof_pdata *pdata = sdev->pdata;
|
||||
|
||||
hdev = sdev->pdata->hw_pdata;
|
||||
|
||||
if (!hdev->sdw)
|
||||
return 0;
|
||||
|
||||
if (pdata->machine && !pdata->machine->mach_params.link_mask)
|
||||
return 0;
|
||||
|
||||
return sdw_intel_startup(hdev->sdw);
|
||||
}
|
||||
|
||||
@@ -1015,6 +1019,14 @@ static int hda_generic_machine_select(struct snd_sof_dev *sdev)
|
||||
hda_mach->mach_params.dmic_num = dmic_num;
|
||||
pdata->machine = hda_mach;
|
||||
pdata->tplg_filename = tplg_filename;
|
||||
|
||||
if (codec_num == 2) {
|
||||
/*
|
||||
* Prevent SoundWire links from starting when an external
|
||||
* HDaudio codec is used
|
||||
*/
|
||||
hda_mach->mach_params.link_mask = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -89,6 +89,7 @@ static const struct sof_dev_desc adls_desc = {
|
||||
static const struct sof_dev_desc adl_desc = {
|
||||
.machines = snd_soc_acpi_intel_adl_machines,
|
||||
.alt_machines = snd_soc_acpi_intel_adl_sdw_machines,
|
||||
.use_acpi_target_states = true,
|
||||
.resindex_lpe_base = 0,
|
||||
.resindex_pcicfg_base = -1,
|
||||
.resindex_imr_base = -1,
|
||||
|
||||
Reference in New Issue
Block a user