>> diff --git a/include/sound/sof/dai.h b/include/sound/sof/dai.h >> index 21d98f31a9ca..83fd81c82e4c 100644 >> --- a/include/sound/sof/dai.h >> +++ b/include/sound/sof/dai.h >> @@ -84,6 +84,7 @@ enum sof_ipc_dai_type { >> SOF_DAI_AMD_BT, /**< AMD ACP BT*/ >> SOF_DAI_AMD_SP, /**< AMD ACP SP */ >> SOF_DAI_AMD_DMIC, /**< AMD ACP DMIC */ >> + SOF_DAI_AMD_HS, /**< Amd HS */ >> SOF_DAI_MEDIATEK_AFE, /**< Mediatek AFE */ > > Adding SOF_DAI_AMD_HS before SOF_DAI_MEDIATEK_AFE desynced this enumeration > so the DAI type is now 11 and not 10 anymore, leading to a failure in > firmware > at IPC3 helper function `dai_get()`, as when `dai_find_type()` is > called, the > DAI type that the firmware expects doesn't match with the one that gets > sent > in the request message from the kernel. > > As a local test, I tried moving SOF_DAI_AMD_HS after > SOF_DAI_MEDIATEK_AFE and > this has restored full functionality on my MT8195 platform (Tomato > Chromebook). > > If SOF is supposed to guarantee backwards compatibility (and I believe > it is), > this commit breaks that. > > I would be tempted to send a commit that moves SOF_DAI_AMD_HS to the > end, but > that would break the already compiled firmware for AMD platforms, so I > am not > sure how to proceed. D'oh. Yes this breaks backwards-compatibility and this is a clear mistake. I think your suggestion to add the AMD_HS at the end is the only practical solution indeed - this would need to be done for both kernel and SOF version of dai.h.