ASoC: SOF: Intel: hda: use fallback for firmware name
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Mon, 11 Nov 2019 22:29:01 +0000 (16:29 -0600)
committerMark Brown <broonie@kernel.org>
Tue, 12 Nov 2019 12:09:54 +0000 (12:09 +0000)
We have platforms such as CFL with no known I2S codec being used, and
the ACPI tables are currently empty, so fall-back to using the
firmware filename used in nocodec mode

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20191111222901.19892-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/intel/hda.c

index 7dc0018..91bd88f 100644 (file)
@@ -415,9 +415,16 @@ static int hda_init_caps(struct snd_sof_dev *sdev)
                        pdata->tplg_filename =
                                hda_mach->sof_tplg_filename;
 
-                       /* firmware: pick the first in machine list */
+                       /*
+                        * firmware: pick the first in machine list,
+                        * or use nocodec firmware name if list is empty
+                        */
                        mach = pdata->desc->machines;
-                       pdata->fw_filename = mach->sof_fw_filename;
+                       if (mach->id[0])
+                               pdata->fw_filename = mach->sof_fw_filename;
+                       else
+                               pdata->fw_filename =
+                                       pdata->desc->nocodec_fw_filename;
 
                        dev_info(bus->dev, "using HDA machine driver %s now\n",
                                 hda_mach->drv_name);