CRAS: hotword stream doesn't record any data when wake from suspend |
||||||||||||||||||
Issue descriptionWhat steps will reproduce the problem? (1) cras_test_client --listen /tmp/1 (2) powerd_dbus_suspend to suspend system (3) speak keyword to wake device (4) ls -al /tmp/1 to check recorded content What is the expected result? /tmp/1 has recorded audio What happens instead? /tmp/1 is empty
,
Sep 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/adhd/+/c2b9444cce759fffb916aed65ef1556375b5542a commit c2b9444cce759fffb916aed65ef1556375b5542a Author: Hsin-Yu Chao <hychao@chromium.org> Date: Tue Sep 12 13:38:07 2017 CRAS: iodev_list - Don't suspend hotword stream Hotword device can be used to wake device from suspend so do not remove stream/dev when system enter suspend. BUG= chromium:762877 TEST=cras_test_client --listen /tmp/1 to start hotword stream and then suspend system, use keyword to wake it and verify /tmp/1 records the full sentence. Change-Id: I8d2bbc220c9cda102ce56e0e4ff3893c86eae1d5 Reviewed-on: https://chromium-review.googlesource.com/654567 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> [modify] https://crrev.com/c2b9444cce759fffb916aed65ef1556375b5542a/cras/src/server/cras_iodev_list.c
,
Sep 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/adhd/+/e9780f778cf17b8ad4f7422d3d80b32c03a97d70 commit e9780f778cf17b8ad4f7422d3d80b32c03a97d70 Author: Hsin-Yu Chao <hychao@chromium.org> Date: Tue Sep 12 13:38:07 2017 CRAS: iodev - Better set input_streaming flag The input_streaming flag is used mainly for hotword stream and is updated when device level grows larger than zero. However a case is observed that hw_level stays at zero when system resumes by keyword recognition, that makes the input_streaming flag stay at value 0 so audio thread is not scheduled properly to wake for upcoming input data. Example debug log: dummy_hotword_cb called in capture_to_streams, hw_level 0 in capture_to_streams, hw_level 320 in capture_to_streams, hw_level 159 in capture_to_streams, hw_level 79 To fix this bug, move the input_streaming flag to cras_iodev level and update its value also in the hotword callback. BUG= chromium:762877 TEST=On poppy, cras_test_client --listen /tmp/1 to start hotword stream and then suspend system, use keyword to wake it and verify /tmp/1 records the full sentence. Change-Id: Ie7e47478faaf2a755433be470b621ba032c114c1 Reviewed-on: https://chromium-review.googlesource.com/654568 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Chinyue Chen <chinyue@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> [modify] https://crrev.com/e9780f778cf17b8ad4f7422d3d80b32c03a97d70/cras/src/server/dev_io.h [modify] https://crrev.com/e9780f778cf17b8ad4f7422d3d80b32c03a97d70/cras/src/server/dev_io.c [modify] https://crrev.com/e9780f778cf17b8ad4f7422d3d80b32c03a97d70/cras/src/server/cras_iodev.h [modify] https://crrev.com/e9780f778cf17b8ad4f7422d3d80b32c03a97d70/cras/src/server/audio_thread.c [modify] https://crrev.com/e9780f778cf17b8ad4f7422d3d80b32c03a97d70/cras/src/server/cras_iodev.c [modify] https://crrev.com/e9780f778cf17b8ad4f7422d3d80b32c03a97d70/cras/src/server/cras_alsa_io.c
,
Sep 15 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/230a7887fbfe57db06e18a4c6058d139244b212b commit 230a7887fbfe57db06e18a4c6058d139244b212b Author: Hsin-Yu Chao <hychao@chromium.org> Date: Fri Sep 15 17:50:31 2017 UPSTREAM: ASoC: rt5514-spi: check irq status to schedule data copy For wake on voice use case, we need to copy data from DSP buffer to PCM stream when system wakes up by voice. However the edge triggered IRQ could be missed when system wakes up, in that case the irq function will not be called. Fix that by checking the irq status bit and schedule data copy accordingly. Signed-off-by: Hsin-Yu Chao <hychao@chromium.org> (cherry picked from commit 5b14b93b66499ca11792ec95fa8693863e47ea2e) BUG= chromium:762877 BUG=b:62333564 TEST=Manual test on Eve, 'cras_test_client --listen /tmp/1' suspend system, say 'Ok,Google' to wake device and verify /tmp/1 records the full voice command. Change-Id: Ib7a49e33c4bd79d9d5faf5b6694e25972f7e44f1 Reviewed-on: https://chromium-review.googlesource.com/668273 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Chinyue Chen <chinyue@chromium.org> [modify] https://crrev.com/230a7887fbfe57db06e18a4c6058d139244b212b/sound/soc/codecs/rt5514-spi.h [modify] https://crrev.com/230a7887fbfe57db06e18a4c6058d139244b212b/sound/soc/codecs/rt5514-spi.c
,
Sep 19 2017
Merge request for DSP hotwording on Poppy & Eve.
,
Sep 19 2017
This bug requires manual review: M62 has already been promoted to the beta branch, so this requires manual review Please contact the milestone owner if you have questions. Owners: amineer@(Android), cmasso@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 19 2017
,
Sep 19 2017
Can you please mark which OS's this is impacting?
,
Sep 20 2017
,
Sep 20 2017
This bug requires manual review: M62 has already been promoted to the beta branch, so this requires manual review Please contact the milestone owner if you have questions. Owners: amineer@(Android), cmasso@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 20 2017
Merge approved for 62, default deny for 61 unless this is a critical bug fix.
,
Sep 21 2017
Hi Bernie, This fix is required for issue 762846 and since 762846 has been merge-approved for 61, can we also merge this one? thanks!
,
Sep 21 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/adhd/+/6d02d3d7f59966faf63179c6e1c4b0af177b901f commit 6d02d3d7f59966faf63179c6e1c4b0af177b901f Author: Hsin-Yu Chao <hychao@chromium.org> Date: Thu Sep 21 03:14:46 2017 CRAS: iodev - Better set input_streaming flag The input_streaming flag is used mainly for hotword stream and is updated when device level grows larger than zero. However a case is observed that hw_level stays at zero when system resumes by keyword recognition, that makes the input_streaming flag stay at value 0 so audio thread is not scheduled properly to wake for upcoming input data. Example debug log: dummy_hotword_cb called in capture_to_streams, hw_level 0 in capture_to_streams, hw_level 320 in capture_to_streams, hw_level 159 in capture_to_streams, hw_level 79 To fix this bug, move the input_streaming flag to cras_iodev level and update its value also in the hotword callback. BUG= chromium:762877 TEST=On poppy, cras_test_client --listen /tmp/1 to start hotword stream and then suspend system, use keyword to wake it and verify /tmp/1 records the full sentence. Change-Id: Ie7e47478faaf2a755433be470b621ba032c114c1 Reviewed-on: https://chromium-review.googlesource.com/654568 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Chinyue Chen <chinyue@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> (cherry picked from commit e9780f778cf17b8ad4f7422d3d80b32c03a97d70) Reviewed-on: https://chromium-review.googlesource.com/676763 Commit-Queue: Chinyue Chen <chinyue@chromium.org> Tested-by: Chinyue Chen <chinyue@chromium.org> [modify] https://crrev.com/6d02d3d7f59966faf63179c6e1c4b0af177b901f/cras/src/server/dev_io.h [modify] https://crrev.com/6d02d3d7f59966faf63179c6e1c4b0af177b901f/cras/src/server/dev_io.c [modify] https://crrev.com/6d02d3d7f59966faf63179c6e1c4b0af177b901f/cras/src/server/cras_iodev.h [modify] https://crrev.com/6d02d3d7f59966faf63179c6e1c4b0af177b901f/cras/src/server/audio_thread.c [modify] https://crrev.com/6d02d3d7f59966faf63179c6e1c4b0af177b901f/cras/src/server/cras_iodev.c [modify] https://crrev.com/6d02d3d7f59966faf63179c6e1c4b0af177b901f/cras/src/server/cras_alsa_io.c
,
Sep 21 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/adhd/+/f36f3fdfa5b9e38eeed31773df14264275cb7072 commit f36f3fdfa5b9e38eeed31773df14264275cb7072 Author: Hsin-Yu Chao <hychao@chromium.org> Date: Thu Sep 21 08:09:29 2017 CRAS: iodev_list - Don't suspend hotword stream Hotword device can be used to wake device from suspend so do not remove stream/dev when system enter suspend. BUG= chromium:762877 TEST=cras_test_client --listen /tmp/1 to start hotword stream and then suspend system, use keyword to wake it and verify /tmp/1 records the full sentence. Change-Id: I8d2bbc220c9cda102ce56e0e4ff3893c86eae1d5 Reviewed-on: https://chromium-review.googlesource.com/654567 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> (cherry picked from commit c2b9444cce759fffb916aed65ef1556375b5542a) Reviewed-on: https://chromium-review.googlesource.com/676827 Commit-Queue: Hsinyu Chao <hychao@chromium.org> [modify] https://crrev.com/f36f3fdfa5b9e38eeed31773df14264275cb7072/cras/src/server/cras_iodev_list.c
,
Sep 21 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fe64b4e628bd2dd7ff7e1711a400f0e8c58c72e0 commit fe64b4e628bd2dd7ff7e1711a400f0e8c58c72e0 Author: Hsin-Yu Chao <hychao@chromium.org> Date: Thu Sep 21 08:18:18 2017 UPSTREAM: ASoC: rt5514-spi: check irq status to schedule data copy For wake on voice use case, we need to copy data from DSP buffer to PCM stream when system wakes up by voice. However the edge triggered IRQ could be missed when system wakes up, in that case the irq function will not be called. Fix that by checking the irq status bit and schedule data copy accordingly. Signed-off-by: Hsin-Yu Chao <hychao@chromium.org> (cherry picked from commit 5b14b93b66499ca11792ec95fa8693863e47ea2e) BUG= chromium:762877 BUG=b:62333564 TEST=Manual test on Eve, 'cras_test_client --listen /tmp/1' suspend system, say 'Ok,Google' to wake device and verify /tmp/1 records the full voice command. Change-Id: Ib7a49e33c4bd79d9d5faf5b6694e25972f7e44f1 Reviewed-on: https://chromium-review.googlesource.com/668273 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Chinyue Chen <chinyue@chromium.org> (cherry picked from commit 230a7887fbfe57db06e18a4c6058d139244b212b) Reviewed-on: https://chromium-review.googlesource.com/676828 Reviewed-by: Hsinyu Chao <hychao@chromium.org> Commit-Queue: Hsinyu Chao <hychao@chromium.org> [modify] https://crrev.com/fe64b4e628bd2dd7ff7e1711a400f0e8c58c72e0/sound/soc/codecs/rt5514-spi.h [modify] https://crrev.com/fe64b4e628bd2dd7ff7e1711a400f0e8c58c72e0/sound/soc/codecs/rt5514-spi.c
,
Sep 21 2017
Done merge to R62. Reassign this to chinyue@ as this is blocking 762846 which targets R61, pending on R61 request in #15.
,
Sep 21 2017
,
Sep 21 2017
,
Sep 21 2017
Approving merge to M61.
,
Sep 21 2017
,
Sep 22 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/926ea52ababa5e3d72813831d62f867faaafecfb commit 926ea52ababa5e3d72813831d62f867faaafecfb Author: Hsin-Yu Chao <hychao@chromium.org> Date: Fri Sep 22 03:29:11 2017 UPSTREAM: ASoC: rt5514-spi: check irq status to schedule data copy For wake on voice use case, we need to copy data from DSP buffer to PCM stream when system wakes up by voice. However the edge triggered IRQ could be missed when system wakes up, in that case the irq function will not be called. Fix that by checking the irq status bit and schedule data copy accordingly. Signed-off-by: Hsin-Yu Chao <hychao@chromium.org> (cherry picked from commit 5b14b93b66499ca11792ec95fa8693863e47ea2e) BUG= chromium:762877 BUG=b:62333564 TEST=Manual test on Eve, 'cras_test_client --listen /tmp/1' suspend system, say 'Ok,Google' to wake device and verify /tmp/1 records the full voice command. Change-Id: Ib7a49e33c4bd79d9d5faf5b6694e25972f7e44f1 Reviewed-on: https://chromium-review.googlesource.com/668273 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Chinyue Chen <chinyue@chromium.org> (cherry picked from commit 230a7887fbfe57db06e18a4c6058d139244b212b) Reviewed-on: https://chromium-review.googlesource.com/677897 Commit-Queue: Chinyue Chen <chinyue@chromium.org> Tested-by: Chinyue Chen <chinyue@chromium.org> [modify] https://crrev.com/926ea52ababa5e3d72813831d62f867faaafecfb/sound/soc/codecs/rt5514-spi.h [modify] https://crrev.com/926ea52ababa5e3d72813831d62f867faaafecfb/sound/soc/codecs/rt5514-spi.c
,
Sep 22 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/adhd/+/96542a715ecd61cc47280ba218636ae126ed9620 commit 96542a715ecd61cc47280ba218636ae126ed9620 Author: Hsin-Yu Chao <hychao@chromium.org> Date: Fri Sep 22 03:29:11 2017 CRAS: iodev_list - Don't suspend hotword stream Hotword device can be used to wake device from suspend so do not remove stream/dev when system enter suspend. BUG= chromium:762877 TEST=cras_test_client --listen /tmp/1 to start hotword stream and then suspend system, use keyword to wake it and verify /tmp/1 records the full sentence. Change-Id: I8d2bbc220c9cda102ce56e0e4ff3893c86eae1d5 Reviewed-on: https://chromium-review.googlesource.com/654567 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> (cherry picked from commit c2b9444cce759fffb916aed65ef1556375b5542a) Reviewed-on: https://chromium-review.googlesource.com/677898 Reviewed-by: Chinyue Chen <chinyue@chromium.org> Commit-Queue: Chinyue Chen <chinyue@chromium.org> Tested-by: Chinyue Chen <chinyue@chromium.org> [modify] https://crrev.com/96542a715ecd61cc47280ba218636ae126ed9620/cras/src/server/cras_iodev_list.c
,
Sep 22 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/adhd/+/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d commit f96b64529c50cc2c51ac7c331a5aed0e7bf7286d Author: Hsin-Yu Chao <hychao@chromium.org> Date: Fri Sep 22 03:29:14 2017 CRAS: iodev - Better set input_streaming flag The input_streaming flag is used mainly for hotword stream and is updated when device level grows larger than zero. However a case is observed that hw_level stays at zero when system resumes by keyword recognition, that makes the input_streaming flag stay at value 0 so audio thread is not scheduled properly to wake for upcoming input data. Example debug log: dummy_hotword_cb called in capture_to_streams, hw_level 0 in capture_to_streams, hw_level 320 in capture_to_streams, hw_level 159 in capture_to_streams, hw_level 79 To fix this bug, move the input_streaming flag to cras_iodev level and update its value also in the hotword callback. BUG= chromium:762877 TEST=On poppy, cras_test_client --listen /tmp/1 to start hotword stream and then suspend system, use keyword to wake it and verify /tmp/1 records the full sentence. Change-Id: Ie7e47478faaf2a755433be470b621ba032c114c1 Reviewed-on: https://chromium-review.googlesource.com/654568 Commit-Ready: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Reviewed-by: Chinyue Chen <chinyue@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> (cherry picked from commit e9780f778cf17b8ad4f7422d3d80b32c03a97d70) Reviewed-on: https://chromium-review.googlesource.com/677899 Commit-Queue: Chinyue Chen <chinyue@chromium.org> Tested-by: Chinyue Chen <chinyue@chromium.org> [modify] https://crrev.com/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d/cras/src/server/dev_io.h [modify] https://crrev.com/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d/cras/src/server/dev_io.c [modify] https://crrev.com/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d/cras/src/server/cras_iodev.h [modify] https://crrev.com/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d/cras/src/server/audio_thread.c [modify] https://crrev.com/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d/cras/src/server/cras_iodev.c [modify] https://crrev.com/f96b64529c50cc2c51ac7c331a5aed0e7bf7286d/cras/src/server/cras_alsa_io.c
,
Sep 22 2017
,
Sep 22 2017
|
||||||||||||||||||
►
Sign in to add a comment |
||||||||||||||||||
Comment 1 by conradlo@chromium.org
, Sep 7 2017