mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 23:22:31 +02:00
ASoC: soc-acpi-intel-ptl-match: Make Chrome matches conditional
For PTL onwards Cirrus are intending to rely on function topologies, rather than using a match table for each system type. Chrome systems tend to have custom magic in the topology and thus need to load a specific file. This causes problems as these system can have the same layout as generic laptops causing the match to apply to other laptops. Add a DMI quirk that forces these matches to only apply to specific devices. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://patch.msgid.link/20260520163631.3300102-2-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
2b8305f24a
commit
e0fb794d67
|
|
@ -632,6 +632,7 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = {
|
|||
.link_mask = BIT(2) | BIT(3),
|
||||
.links = ptl_cs42l43_agg_l3_cs35l56_l2,
|
||||
.drv_name = "sof_sdw",
|
||||
.machine_check = snd_soc_acpi_intel_no_function_topology,
|
||||
.sof_tplg_filename = "sof-ptl-cs42l43-agg-l3-cs35l56-l2.tplg",
|
||||
},
|
||||
{
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
#include <linux/dmi.h>
|
||||
#include <linux/soundwire/sdw_intel.h>
|
||||
#include <sound/sdca.h>
|
||||
#include <sound/soc-acpi.h>
|
||||
|
|
@ -37,6 +38,21 @@ bool snd_soc_acpi_intel_sdca_is_device_rt712_vb(void *arg)
|
|||
}
|
||||
EXPORT_SYMBOL_NS(snd_soc_acpi_intel_sdca_is_device_rt712_vb, "SND_SOC_ACPI_INTEL_SDCA_QUIRKS");
|
||||
|
||||
static const struct dmi_system_id function_topology_quirk_table[] = {
|
||||
{
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Google"),
|
||||
},
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
bool snd_soc_acpi_intel_no_function_topology(void *arg)
|
||||
{
|
||||
return !!dmi_check_system(function_topology_quirk_table);
|
||||
}
|
||||
EXPORT_SYMBOL_NS(snd_soc_acpi_intel_no_function_topology, "SND_SOC_ACPI_INTEL_SDCA_QUIRKS");
|
||||
|
||||
MODULE_DESCRIPTION("ASoC ACPI Intel SDCA quirks");
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_IMPORT_NS("SND_SOC_SDCA");
|
||||
|
|
|
|||
|
|
@ -10,5 +10,6 @@
|
|||
#define _SND_SOC_ACPI_INTEL_SDCA_QUIRKS
|
||||
|
||||
bool snd_soc_acpi_intel_sdca_is_device_rt712_vb(void *arg);
|
||||
bool snd_soc_acpi_intel_no_function_topology(void *arg);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user