Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 88faae2c authored by Ian W MORRISON's avatar Ian W MORRISON Committed by Mark Brown
Browse files

ASoC: rt5645: Add jack detection workaround for MINIX Z83-4 based devices



The MINIX NEO Z83-4 and MINIX NEO Z83-4 Pro devices requires jd_mode=3
to make the jack detection work. Using a BIOS DMI product of "Z83-4"
will match both devices of 'NEO Z83-4' and 'Z83-4 Pro'.

Signed-off-by: default avatarIan W Morrison <ianwmorrison@gmail.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent cd6d6477
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -3655,6 +3655,21 @@ static struct dmi_system_id dmi_platform_asus_t100ha[] = {
	{ }
};

static struct rt5645_platform_data minix_z83_4_platform_data = {
	.jd_mode = 3,
};

static struct dmi_system_id dmi_platform_minix_z83_4[] = {
	{
		.ident = "MINIX Z83-4",
		.matches = {
			DMI_EXACT_MATCH(DMI_SYS_VENDOR, "MINIX"),
			DMI_MATCH(DMI_PRODUCT_NAME, "Z83-4"),
		},
	},
	{ }
};

static bool rt5645_check_dp(struct device *dev)
{
	if (device_property_present(dev, "realtek,in2-differential") ||
@@ -3709,6 +3724,8 @@ static int rt5645_i2c_probe(struct i2c_client *i2c,
		rt5645->pdata = gpd_win_platform_data;
	else if (dmi_check_system(dmi_platform_asus_t100ha))
		rt5645->pdata = general_platform_data2;
	else if (dmi_check_system(dmi_platform_minix_z83_4))
		rt5645->pdata = minix_z83_4_platform_data;

	if (quirk != -1) {
		rt5645->pdata.in2_diff = QUIRK_IN2_DIFF(quirk);