]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
greybus: Use mute_stream callback to initiate GB data xfer
authorVaibhav Agarwal <vaibhav.agarwal@linaro.org>
Thu, 9 Jun 2016 04:00:39 +0000 (09:30 +0530)
committerGreg Kroah-Hartman <gregkh@google.com>
Fri, 10 Jun 2016 04:21:09 +0000 (21:21 -0700)
commit27c243cf5fcf4b3bb525f1f3f15ed8db91199507
treeb8a204021996ee419362e9b7f75e675638347c50
parent8c2522d87ab20ba245ddf92e4e8b19a76e5760fd
greybus: Use mute_stream callback to initiate GB data xfer

Currently trigger callback is used to start/stop greybus tx/rx
path. This works well for almost all scenario except few
specially handled usecases by Android Audio subsystem.

In case of Music playback followed by Incoming ringtone, above
layer tries to trigger_pause from one FE dailink and start a
fresh playback via different FE dailink. Since, same BE dailink
is used for both cases, an invalid state transition is requested
i.e. from PAUSE->START. This fails & thus causes ringtone playback
failure. With built-in codec, trigger callback is not required to
initiate data xfer unlike gb-codec driver.

This state transition should be handled in Android layer, but
since it can lead to multiple side effects for various usecase
we are trying to avoid trigger callback in gbcodec driver as well.

Signed-off-by: Vaibhav Agarwal <vaibhav.agarwal@linaro.org>
Reviewed-by: Mark Greer <mgreer@animalcreek.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/audio_codec.c