Hi Ross,
On 11/7/19 11:31 PM, Ross Zwisler wrote:
We are trying to get a piece of Google hardware which uses the rt5645 driver working correctly with newer kernels (currently one based on the latest v4.14 stable), and noticed that the following commit:
commit 6b5da66322c5 ("ASoC: rt5645: read jd1_1 status for jd detection")
broke jack support for our device. Basically with that patch we never correctly see a jack insertion event, and audio is never routed to the headphones.
With just that one patch reverted, things work correctly on our system. The revert applies cleanly to linus/master.
Here is the series where that patch was originally upstreamed:
https://www.spinics.net/lists/alsa-devel/msg64331.html
If we reverted that patch upstream, would it break other devices (the "GDP Win" device?) that use the rt5645 driver?
Yes likely it will, the commit in question was added to fix jd issue in the GDP win and other Cherry Trail devices using standard Intel reference designs.
If so, how would you recommend proceeding?
Does anyone have one of the "GDP Win" devices so we can test that and our device and make sure whatever solution we end up coming up with works for everyone?
I have acccess to the following devices with a rt5645 codec:
rt5645: Spk Mic JDmod UCM -Acer One S1003 stereo ana 3 chtrt5645 -Asus T100HA stereo dmic1 3 inv custom -GPD Pocket mono diff 3 inv chtrt5645-mono-speaker-analog-mic -GPD win mono ana 3 inv chtrt5645-mono-speaker-analog-mic -Kazam Vision stereo ana 3 chtrt5645 -Lenovo Miix310 stereo diff 3 chtrt5645 -Lenovo Miix320 stereo dmic2 3 custom -Teclast X80Pro mono ana 3 chtrt5645-mono-speaker-analog-mic
Which all work fine with the current code, have you tried all the different jdmode values through the quirk moodule param?
If Playing with the quirk settings does not help, then I believe that the best approach to fix this is to figure out which bit of the pre 6b5da66322c5 behavior you need and to activate this behind a new quirk option and set that quirk for the system in question.
Regards,
Hans