[Peppy] Input node changes to Mic jack after suspend resume when USB headset is active |
||||||||||||
Issue descriptionGoogle Chrome 63.0.3239.11 (Official Build) dev (64-bit) Revision Platform 10032.7.0 (Official Build) dev-channel peppy Firmware Version Google_Peppy.4389.117.0 What steps will reproduce the problem? (1) Recover device and login with user account (2) Plug in 3.5 Headphones, output and input nodes correctly change (3) Plug in USB audio, output and input nodes change to USB device (4) Suspend device with lid close or by running powerd_dbus_suspend (5) Wake device (6) Input node changed to Mic Jack What is the expected result? Both Input and Output node should be USB Headphones What happens instead? Input Node switches to 3.5" Headphones
,
Oct 19 2017
Hi Jenny, Wu-Cheng found (in issue 775926)that your CL might have caused this -https://chromium-review.googlesource.com/c/chromium/src/+/679934 Can you take a look?
,
Oct 19 2017
,
Oct 20 2017
,
Oct 23 2017
This issue is marked as a release blocker with no milestone associated. Please add an appropriate milestone. All release blocking issues should have milestones associated to it, so that the issue can tracked and the fixes can be pushed promptly. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 23 2017
,
Oct 24 2017
I tested on eve (self built image on Oct 20) and it didn't have this issue.
,
Nov 6 2017
Is this still an issue?
,
Nov 6 2017
Yes. This is still happening on R63-10032.29.0
,
Nov 13 2017
,
Nov 13 2017
I can't repro this on kevin R63-10032.29.0.
,
Nov 13 2017
I think this is reported for peppy(and panther - both) on kernel 3.8.
,
Nov 14 2017
Yes, I can repro it on peppy and am looking into it.
,
Nov 15 2017
I did some debug on peppy device. The problem lies in the way cras re-discovers the audio devices after system resumes. With the repro steps in comment #0. Before step #4, suspend system, cras sends the following nodes to chrome: output: internal speaker, 35mm headphone, usb headphone*. Inputput: internal_mic, 35mm mic jack, usb mic*. So chrome code pick usb headhphone and usb mic as active output/input device. After the system resumes, cras re-discover the audio nodes, with the first nodes changed signal, it sent: Output: internal speaker, 35mm headphone, USB headhphoe Input: internal mic, USB mic. Notice that: 35mm mic is not listed the input nodes. In the second NodesChanged signal, it sends: Output: internal speaker, 35mm headphone, USB headhphoe Input: internal mic, USB mic. 35mm Mic Notice that: 35mm mic shows up now, and it will be considered as a hotplug input device, since it was not in the previous node list. Therefore, it will be selected as active device by chrome code logic. This kind of device discovering sequence happens on peppy but not kevin and other devices I tested. Therefore, this issue only repro on peppy. This is an issue with cras on peppy. We should try to fix in cras layer. Chrome does not expect such inconsistent behavior from cras after system resumes.
,
Nov 15 2017
By the way, I was able to repro this on peppy ToT too.
,
Nov 15 2017
We should check whether this is a regression. There was no recent change in kernel 3.8 for jack detection.
,
Nov 15 2017
,
Nov 15 2017
The root cause is mic jack detection is too slow. So when resume from suspend, the system detected headphone first, and then USB, and then mic jack, thus makes chrome selected mic jack as input device. Filed https://b.corp.google.com/issues/69347127 to track the issue.
,
Nov 15 2017
This is not a regression and is a corner case so remove release block.
,
May 3 2018
|
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by matthewjoseph@chromium.org
, Oct 19 2017