On 4/29/2022 4:01 PM, Cezary Rojewski wrote:
+static struct snd_soc_acpi_mach *dmi_match_quirk(void *arg) +{ + struct snd_soc_acpi_mach *mach = arg; + const struct dmi_system_id *dmi_id; + struct dmi_system_id *dmi_table;
+ if (mach->quirk_data == NULL) + return mach;
+ dmi_table = (struct dmi_system_id *)mach->quirk_data;
+ dmi_id = dmi_first_match(dmi_table); + if (!dmi_id) + return NULL;
+ return mach; +}
+#define AVS_SSP(x) (BIT(x)) +#define AVS_SSP_RANGE(a, b) (GENMASK(b, a))
+/* supported I2S board codec configurations */ +static struct snd_soc_acpi_mach avs_skl_i2s_machines[] = { + { + .id = "INT343A", + .drv_name = "avs_rt286", + .link_mask = AVS_SSP(0),
I've told this before, 'link_mask' was introduced for *SoundWire*. Please do not overload existing concepts and use this instead:
@i2s_link_mask: I2S/TDM links enabled on the board
Noooo :( Sad panda is sad.
'link_mask' is such a wonderful name as it matches naming used in our specs - which call BE side 'LINK'.
If it's a must then yes, we will resign from using 'link_mask'.
I'll just note that header kernel doc for link_mask says: " * @link_mask: describes required board layout, e.g. for SoundWire." I would say there is no assumption that it is SDW only, so we could also argue that if it is it should be named sdw_link_mask and comment be fixed to remove "e.g." ;)