From: Paul Olaru <paul.olaru@xxxxxxx> Covered platforms: i.MX8QXP, i.MX8QM, i.MX8MP, i.MX8ULP. These descriptors are used to locate the machine driver and topology filenames. Note: because the compatible values for the boards do not change between the cs42888 and the wm8960 cases, I have selected a common topology filename, which is intended to be a symlink to either the wm8960 or the cs42888 topology file. For uniformity I did the same for i.MX8ULP. Signed-off-by: Paul Olaru <paul.olaru@xxxxxxx> --- sound/soc/sof/imx/imx8.c | 16 ++++++++++++++++ sound/soc/sof/imx/imx8m.c | 10 ++++++++++ sound/soc/sof/imx/imx8ulp.c | 10 ++++++++++ 3 files changed, 36 insertions(+) diff --git a/sound/soc/sof/imx/imx8.c b/sound/soc/sof/imx/imx8.c index 7e7d1f5c1147..2b91bfc8fb5b 100644 --- a/sound/soc/sof/imx/imx8.c +++ b/sound/soc/sof/imx/imx8.c @@ -624,7 +624,22 @@ static struct snd_sof_dsp_ops sof_imx8x_ops = { SNDRV_PCM_INFO_NO_PERIOD_WAKEUP }; +static struct snd_sof_of_mach sof_imx8_machs[] = { + { + .compatible = "fsl,imx8qxp", + .drv_name = "asoc-simple-card", + .sof_tplg_filename = "sof-imx8.tplg", + }, + { + .compatible = "fsl,imx8qm", + .drv_name = "asoc-simple-card", + .sof_tplg_filename = "sof-imx8.tplg", + }, + {} +}; + static struct sof_dev_desc sof_of_imx8qxp_desc = { + .of_machines = sof_imx8_machs, .ipc_supported_mask = BIT(SOF_IPC), .ipc_default = SOF_IPC, .default_fw_path = { @@ -641,6 +656,7 @@ static struct sof_dev_desc sof_of_imx8qxp_desc = { }; static struct sof_dev_desc sof_of_imx8qm_desc = { + .of_machines = sof_imx8_machs, .ipc_supported_mask = BIT(SOF_IPC), .ipc_default = SOF_IPC, .default_fw_path = { diff --git a/sound/soc/sof/imx/imx8m.c b/sound/soc/sof/imx/imx8m.c index d20011349b43..a05497eb8d89 100644 --- a/sound/soc/sof/imx/imx8m.c +++ b/sound/soc/sof/imx/imx8m.c @@ -487,7 +487,17 @@ static struct snd_sof_dsp_ops sof_imx8m_ops = { SNDRV_PCM_INFO_NO_PERIOD_WAKEUP, }; +static struct snd_sof_of_mach sof_imx8m_machs[] = { + { + .compatible = "fsl,imx8mp", + .drv_name = "asoc-simple-card", + .sof_tplg_filename = "sof-imx8m.tplg", + }, + {} +}; + static struct sof_dev_desc sof_of_imx8mp_desc = { + .of_machines = sof_imx8m_machs, .ipc_supported_mask = BIT(SOF_IPC), .ipc_default = SOF_IPC, .default_fw_path = { diff --git a/sound/soc/sof/imx/imx8ulp.c b/sound/soc/sof/imx/imx8ulp.c index 52c357ba570e..0c9878c2c420 100644 --- a/sound/soc/sof/imx/imx8ulp.c +++ b/sound/soc/sof/imx/imx8ulp.c @@ -496,7 +496,17 @@ static struct snd_sof_dsp_ops sof_imx8ulp_ops = { .set_power_state = imx8ulp_dsp_set_power_state, }; +static struct snd_sof_of_mach sof_imx8ulp_machs[] = { + { + .compatible = "fsl,imx8ulp", + .drv_name = "asoc-simple-card", + .sof_tplg_filename = "sof-imx8ulp.tplg", + }, + {} +}; + static struct sof_dev_desc sof_of_imx8ulp_desc = { + .of_machines = sof_imx8ulp_machs, .ipc_supported_mask = BIT(SOF_IPC), .ipc_default = SOF_IPC, .default_fw_path = { -- 2.40.1