summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>2017-08-22 15:32:37 -0500
committerMark Brown <broonie@kernel.org>2017-08-23 12:20:58 +0100
commitc26d8389be4dab2bb5a8ac16211a9966bf67091a (patch)
tree3e14537c5ed0d11315d97ca8d212c25c11aa0701 /sound
parentea746a296df3670359ae7d43baa968b0a1a54a01 (diff)
downloadlinux-c26d8389be4dab2bb5a8ac16211a9966bf67091a.tar.bz2
ASoC: codecs: rt5670: add jack detection quirk for Dell Venue 5585
Jack is not detected by default, using jdmode=3 works fine Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/rt5670.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/sound/soc/codecs/rt5670.c b/sound/soc/codecs/rt5670.c
index 0f4e5bc4476f..4ea51b487b8c 100644
--- a/sound/soc/codecs/rt5670.c
+++ b/sound/soc/codecs/rt5670.c
@@ -2851,6 +2851,17 @@ static const struct dmi_system_id dmi_platform_intel_bytcht_jdmode2[] = {
{}
};
+static const struct dmi_system_id dmi_platform_intel_bytcht_jdmode3[] = {
+ {
+ .ident = "Dell Venue 8 Pro 5855",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_MATCH(DMI_PRODUCT_NAME, "Venue 8 Pro 5855"),
+ },
+ },
+ {}
+};
+
static int rt5670_i2c_probe(struct i2c_client *i2c,
const struct i2c_device_id *id)
{
@@ -2880,6 +2891,11 @@ static int rt5670_i2c_probe(struct i2c_client *i2c,
rt5670->pdata.dmic1_data_pin = RT5670_DMIC_DATA_IN2P;
rt5670->pdata.dev_gpio = true;
rt5670->pdata.jd_mode = 2;
+ } else if (dmi_check_system(dmi_platform_intel_bytcht_jdmode3)) {
+ rt5670->pdata.dmic_en = true;
+ rt5670->pdata.dmic1_data_pin = RT5670_DMIC_DATA_IN2P;
+ rt5670->pdata.dev_gpio = true;
+ rt5670->pdata.jd_mode = 3;
}
rt5670->regmap = devm_regmap_init_i2c(i2c, &rt5670_regmap);