ASoC: rt298: Configure combo jack for headphones

During jack detection, the combo jack is configured for a CTIA headset, and
then for an OMTP headset, while sensing the mic connection. If a mic is not
found in either case, the combo jack should be re-configured for headphones
only. This is consistent with the HDA driver behavior.

Signed-off-by: David Ward <david.ward@gatech.edu>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210418134658.4333-4-david.ward@gatech.edu
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
David Ward 2021-04-18 09:46:56 -04:00 committed by Mark Brown
parent b15c3ea7e0
commit f3bd4dde9f
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -267,11 +267,16 @@ static int rt298_jack_detect(struct rt298_priv *rt298, bool *hp, bool *mic)
msleep(300);
regmap_read(rt298->regmap,
RT298_CBJ_CTRL2, &val);
if (0x0070 == (val & 0x0070))
if (0x0070 == (val & 0x0070)) {
*mic = true;
else
} else {
*mic = false;
regmap_update_bits(rt298->regmap,
RT298_CBJ_CTRL1,
0xfcc0, 0xc400);
}
}
regmap_update_bits(rt298->regmap,
RT298_DC_GAIN, 0x200, 0x0);