As the mt8186 do not use ACPI type machine, the of_machine_select
is used to distinguish different machines in sof_machine_check.
Signed-off-by: Chunxu Li <[email protected]>
---
sound/soc/sof/mediatek/mt8186/mt8186.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/sound/soc/sof/mediatek/mt8186/mt8186.c
b/sound/soc/sof/mediatek/mt8186/mt8186.c
index e006532caf2f..cb8bed383064 100644
--- a/sound/soc/sof/mediatek/mt8186/mt8186.c
+++ b/sound/soc/sof/mediatek/mt8186/mt8186.c
@@ -497,6 +497,8 @@ static struct snd_sof_dsp_ops sof_mt8186_ops = {
/* misc */
.get_bar_index = mt8186_get_bar_index,
+ .of_machine_select = sof_of_machine_select,
+
/* firmware loading */
.load_firmware = snd_sof_load_firmware_memcpy,
@@ -515,7 +517,16 @@ static struct snd_sof_dsp_ops sof_mt8186_ops = {
SNDRV_PCM_INFO_NO_PERIOD_WAKEUP,
};
+static struct snd_sof_of_mach sof_mt8186_machs[] = {
+ {
+ .board = "mediatek,mt8186",
+ .sof_tplg_filename = "sof-mt8186.tplg",
+ },
+ {}
+};
+
static const struct sof_dev_desc sof_of_mt8186_desc = {
+ .of_machines = sof_mt8186_machs,
.ipc_supported_mask = BIT(SOF_IPC),
.ipc_default = SOF_IPC,
.default_fw_path = {
--
2.25.1
On Thu, Aug 04, 2022 at 05:13:59PM +0800, Chunxu Li wrote:
> +static struct snd_sof_of_mach sof_mt8186_machs[] = {
> + {
> + .board = "mediatek,mt8186",
> + .sof_tplg_filename = "sof-mt8186.tplg",
The mediatek,mt8186 compatible looks like a SoC compatible not a board
compatible...
On Thu, Aug 04, 2022 at 09:21:37PM +0800, chunxu.li wrote:
> On Thu, 2022-08-04 at 13:41 +0100, Mark Brown wrote:
> > On Thu, Aug 04, 2022 at 05:13:59PM +0800, Chunxu Li wrote:
> > > + .board = "mediatek,mt8186",
> > > + .sof_tplg_filename = "sof-mt8186.tplg",
> > The mediatek,mt8186 compatible looks like a SoC compatible not a
> > board
> > compatible...
> Our dts config as below:
> kingler board:
> compatible = "google,corsola", "google,kingler", "mediatek,mt8186";
> krabby board:
> compatible = "google,corsola", "google,krabby", "mediatek,mt8186";
So the SoC is listed as a fallback for the board and things work out
fine.
> Which of the two approaches do you prefer?
I think it would be clearer to keep what's being matched the same but
rename the .board field to be .compatible, or possibly .system_compatible
or something if it's unclear what's being matched. That'd be more
normal for specifying a compatible string anyway.